엠바카데로에서 FireDAC Skill Sprint 웨비나(1월 23일 ~ 3월 27일: 매주 금요일 10시)를 진행하고 있습니다.


이 글에서는 웨비나 다시보기와 함께 웨비나 일부 내용을 샘플코드와 함께 소개합니다. 하단 온라인 기술 도움말 링크를 통해 더 자세한 내용을 추가학습하시기 바랍니다.


7회차에는 FireDAC ETL(=Extract, Transform, Load)에 대한 내용으로 진행합니다.

FireDAC ETL이란?

FireDAC의 ETL은 Extract, Transform, Load의 약자로 아래의 역할을 의미합니다.

  • Extract(추출) : 같은 종 또는 이기종 데이터 소스로부터 데이터를 추출
  • Transform(변환) : 쿼리 또는 분석하기 위한 데이터로 저장하기 위해 적절한 포맷과 구조로 변환
  • Load(로드) : 최종 목적(데이터베이스, 더 구체적으로, 운용 데이터 저장소, 데이터 마트, 또는 데이터 창고)으로 로드
FireDAC ETL로 아래의 기능을 구현할 수 있습니다.(몇가지 예시입니다.)
  • Query문으로 조회한 데이터를 엑셀에서 사용할 수 있는 CSV 파일로 내보내기
  • 텍스트파일의 데이터를 데이터베이스 테이블로 가져오기
  • 데이터베이스에서 다른 데이터베이스로 데이터 이동하기

FireDAC ETL 컴포넌트 구성

FireDAC ETL을 FireDAC ETL 카테고리의 컴포넌트를 통해 개발할 수 있습니다.


아래 그림과 같이 TFDBatchMove 컴포넌트가 중심이 되어 좌측의 Reader 컴포넌트로 데이터를 읽고, 우측의 Writer 컴포넌트로 데이터를 씁니다.

Reader, Writer 컴포넌트 각각 데이터셋, SQL, Text 데이터를 읽고 쓸수 있습니다.


TFDBatchMove의 자세한 내용은 엠바카데로 기술문서 - TFDBatchMove 를 참고하시기 바랍니다.

❑ TFDBatchMove 샘플 프로그램 소개

샘플 프로그램에서는 총 3가지 기능을 구현 했습니다.

  1. 데이터셋의 데이터를 텍스트파일로 내보내기
  2. 텍스트파일의 데이터를 데이터셋으로 가져오기
  3. 인터베이스 데이터를 MSSQL 데이터로 옮기기

[샘플코드 받기 - 데브기어 github 페이지]


Batch Move 컴포넌트 배치

위의 3가지 기능 구현을 위한 컴포넌트 배치


TFDBatchMoveTextReader 컴포넌트의 텍스트 파일 정의 속성
텍스트파일 읽기 용도 인 TFDBatchMoveTextReader 컴포넌트는 DataDef 속성으로 텍스트파일의 구조를 정의 합니다.


번호 제목 글쓴이 날짜 조회 수
공지 [DelphiCon 요약] 코드사이트 로깅 실전 활용 기법 (Real-world CodeSite Logging Techniques) 관리자 2021.01.19 14355
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 13021
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 15529
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 21048
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 22296
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 17929
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 38219
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 173732
483 [XE8] 네이티브 iOS 컨트롤 지원 Humphery 2015.04.13 813
482 [XE8] iOS 64bit 앱개발과 유니버설(armv7 + arm64) 앱개발 [1] Humphery 2015.04.13 1383
481 [XE8] Android 단말기 연결안될때 SDK 확인 및 설치 Humphery 2015.04.11 1961
480 reFind.exe: 마이그레이션 작업에서 수작업을 줄여주는 도구 Humphery 2015.04.09 3948
479 모바일 앱 라이프사이클 이벤트 처리하기 Humphery 2015.04.09 1557
478 모바일 앱 라이프 사이클 이벤트 처리하기(앱 완전 구동 후 실행하기) [1] Humphery 2015.04.09 940
477 웹에서 어플리케이션 구동하기(ActiveX 사용않고) Humphery 2015.04.09 1423
476 iOS 64bit 배포 시 ITMS-90092 오류 대응 [1] file Humphery 2015.04.09 1552
475 [무료 세미나] 초대합니다! RAD Studio XE8 출시 세미나!(서울&대구) 관리자 2015.04.08 3706
474 [FireDAC Skill Sprints] 8. TFDMemTable: 메모리 기반 데이터셋 사용하기 Humphery 2015.04.06 2468
473 [FireDAC Skill Sprints] 9. LocalSQL: DB에서 가져온 데이터(데이터셋)를 대상으로 다시 SQL쿼리 실행하기 Humphery 2015.04.01 1882
» [FireDAC Skill Sprints] 7. FireDAC ETL: 데이터 내보내기, 가져오기 기능 구현하기 Humphery 2015.04.01 2108
471 [FireDAC Skill Sprints] 1. FireDAC 소개 험프리 2015.04.01 1572
470 [다음 버전 정보] 비콘(Beacon)으로 접근감지하기 Humphery 2015.03.26 2791
469 "모바일 앱" 개발 또는 유지관리, 데브기어와 해결하세요! file 관리자 2015.03.26 12723
468 최신 업데이트와 패치정보 확인하는 방법 file Humphery 2015.03.26 856
467 이 달의 기술자료 - 2015년 04월 험프리 2015.03.26 5669
466 [다음 버전 정보] iOS 용 64비트 앱 만들고 배포하기 file Humphery 2015.03.25 1087
465 [따라하기] FireDAC으로 오라클(Oracle) DB와 연결하기 험프리 2015.03.24 3025
464 아이들이 재미있어 할만한 델파이(파이어몽키) 프로젝트 동영상 따라하기 Humphery 2015.03.24 1160