Dr.Sum Connect의 ETL 스크립트를 사용하는 방법

먼저


이른바 Dr.Sum


[자세한 내용은 여기 있습니다] Dr.Sum은 1초에 10억 개의 데이터를 계산할 수 있는 초고속 데이터베이스 도구입니다.
고속 디스크 합계와 혼합 사용된 초고속 메모리 합계를 사용하여 최상의 운용 원가 성능을 실현한다.

또 Dr.Sum은 합계 속도뿐 아니라 데이터베이스 구축 경험이 적은 사람도 GUI 조작으로 DB를 만들어 데이터를 확보할 수 있다.
데이터베이스 주위에 그렇게 강한 나 같은 사람이 없어도 데이터를 쉽게 처리할 수 있다는 점은 대단하다.
그렇다면 Dr.Sum이라는 제품은 데이터베이스뿐만 아니라 다양한 옵션 제품을 추가할 수 있어 다양한 방법을 사용할 수 있다.

자세한 내용은 홈페이지를 참조하세요.
✅ 데이터를 추출하다
✅ 가공 데이터
✅ 데이터를 저장하다.
✅ 고속 통계 데이터
이 가능하다, ~할 수 있다,...
제품 일람표 여기 있습니다.

Dr.Sum Connect는


[자세한 내용은 여기 있습니다] Dr.Sum Connect는 데이터를 추출, 가공, 얻는 ETL 도구입니다.
다음 그림에서 보듯이 다양한 환경에서 데이터를 얻어 가공한 후 Dr.Sum의 도구를 투입할 수 있다.

오류가 발생하면 로그를 토로하고 메일을 보낼 수 있으며 기본적으로 GUI를 통해 조작할 수 있기 때문에 프로그램을 쓰지 않아도 협력 체제를 구축할 수 있다.
기본 각본의 제작 방법에 관해서는 이쪽의 해설문을 읽어 주십시오.
Dr.Sum Connect의 ETL 스크립트를 사용하는 방법
Connect가 있으면 데이터 공동 작업이 매우 간단해집니다.기본적으로 프로그램을 쓸 필요가 없다.
하지만 아무리 단순하게 처리해도 한 화면(스크립트)에 여러 구성 요소를 넣으면 원인을 알 수 없게 돼 부속인화가 생겨 다른 사람이 물려받기 어려운 폐해가 생긴다.
각본의 정확성을 반드시 기억해야 한다.

스크립트 만드는 법


친자 관계를 의식하다


프로그램을 개발하는 사람이라면 스크립트가 불필요하지 않은 비결은 스크립트를 분할하는 것이라고 나는 생각한다.
그중에 가장 적합한 분할 방법은요.
• 로그 출력, 메일 발송 등에 따라 결정되는 처리 스크립트화
• 표 추출 - 가공 - 가져오기 전에 스크립트 설정
그건
처음 만들 때부터 대본을 어떻게 분리해서 머릿속에 넣으면 가독성이 높은 대본을 만들 수 있다.
규모가 커지면 부모, 자식, 손자, 증손, 현손 등도 등장
각본마다 친자관계가 이렇다.

왜 친자관계를 맺었는지 조금만 더 설명해 주세요.


아까도 썼는데 두 가지 큰 장점이 있다고 생각해요.

가독성을 높여 속인화를 없애다


딱 보면 알아요.
이 임무는 무엇을 위해 돌아가는지, 그 다음은 무엇을 처리하는지 등등을 한눈에 알 수 있다.
그리고 예를 들면'판매 테이블의 가공은 어떻게 하나요?'이렇게 되면 곧 판매 관리의 판매 각본을 볼 수 있을 것이다.
이것은 가독성이 높아서 담당이 갑자기 없어도 계승할 수 있다.
그나저나 대부분의 ETL 도구는 설명서의 출력 기능이 있어 HTML에 기재돼 있고 자세한 처리도 규격서에서 추적할 수 있다.

오류 처리가 쉽다


이것도 비싸요.
ETL 관련 중점은 고장이 났을 때 뇌를 어떻게 죽여 짧은 시간 안에 회복하느냐에 있다.
고장이 나면 대체로 허둥지둥할 것이다.평정심을 유지할 수 없다.
그때는 가독성이 떨어지는 논리로 복구 절차가 복잡해지면 2차 재해를 일으킬 수 있다.
이상적인 형식은 기록에서 잘못된 부분을 확정하고 기록에서 한 번 더 유출시켜 처리를 순조롭게 하는 것이다.
이것저것 다시 안배하여 처리하면 언젠가는 사람이 실수를 할 것이다.
특히 한밤중에 비정상적으로 끝나 아침까지 회복해야 하는 상황은 정말 잘못될 수 있다.
따라서 실수할 때의 처리 방법을 자주 의식한다.

Insert만 추천할 수 없습니다.


다음 스크립트 작성 방법의 비결은 가능하면 간단한 데이터베이스 Insert를 멈추십시오.
이것도 역시 잘못된 처리의 원인이다.
데이터의 출처가 변하지 않는다면, 몇 번의 처리를 거치든지 간에 얻은 데이터는 증감하지 않는 것이 가장 좋다.
Insert일 경우 처리할 때마다 데이터가 증가합니다.
유일한 버튼을 설정하면 오류가 발생하지만, 이 작업은 매번 오류가 발생하여 고장이 발생할 때 방해가 될 수 있습니다.
이런 상황을 방지하기 위해서.
✅ 가능하면 대상 테이블 모두 삭제 → 삽입
✅ 차이가 나면 대상 테이블의 객체 중 데이터 삭제 → 객체 중 데이터만 삽입
이런 식으로 하자.

실제 스크립트에서 설명


그럼 상술한 내용을 의식한 각본을 소개해 드리겠습니다.

DailyBatch


모본 데일리 배치입니다.

이 스크립트를 트리거에 넣고 매일 정해진 시간 안에 데이터를 재생합니다.
대부분의 구성 요소는 하위 스크립트를 호출합니다.

임시 회수


또 거의 같은 모양의 임시 로트를 제작했다.

오류를 복구하기 위해 잘못된 곳에서 다시 실행한 것이다.

하위 스크립트 중 하나


이것은 실행하는 주요 하위 스크립트 중의 하나입니다.

데이터를 연속으로 가져오는 중입니다.
그리고 여기서 손각본을 호출했습니다.
손각본의 하나하나가 실제로 추출, 가공, 처리표에 들어가고 있다.

손각본 중의 하나


여기서 Salesforce의 한 객체에서 데이터를 추출하여 Dr.Sum에 매핑합니다.

관건은truncate입니다.table_데이터 있는 데죠?
모든 Dr.Sum 테이블을 삭제합니다.
이곳의 삭제 조건은 복잡하다. Insert의 데이터가 차분하면 논리가 복잡해지고 오류 처리의 난이도가 높아진다.

로그 스크립트 실행


앞으로 무슨 일을 할 때 반드시 불려올 것이다.


순수하고 명쾌하네.
근데 일부러 각본화했어.
문장을 바꾸고 싶다면 한 번씩 변경해 유지보수성을 높인다.
오류 로그 스크립트도 있습니다.

관리자 메시지 스크립트


이상이 끝났을 때 관리자에게 메일을 잘 보내주세요.

어떤 부분을 받았는지 알려주면 장애인의 심리적 스트레스를 줄일 수 있다.

이러한 기본적인 스크립트 구성을 인식하면 어떤 ETL 도구든 대응할 수 있습니다.
실제로 나도 4개의 ETL 도구를 처리할 수 있지만 기본 구성은 모두 비슷하다.

끝말


어때?
처음에는 조금 번거롭겠지만 이 구조로 한 번 해보면 앞으로는 운용이 어려워진다.
개발의 시간은 순간적이지만 운행은 영속적이다.
스트레스 없는 스크립트를 관리해 볼까요?

좋은 웹페이지 즐겨찾기