엠바카데로에서 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 15439
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 13961
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 16499
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 22055
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 23268
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 18923
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 39255
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 174699
574 [REST API][실습] 데이터셋 기반 REST API 개발하기 험프리 2017.06.13 2177
573 RAD Studio 사물인터넷 참고자료와 샘플 모음 file Humphery 2015.06.23 2170
572 [따라하기] Advanced 델파이 UI 작성하기 file 험프리 2019.09.11 2141
571 [베를린] ListView 레이아웃을 입맛에 맞게 변경할 수 있습니다. file 험프리 2016.04.22 2125
» [FireDAC Skill Sprints] 7. FireDAC ETL: 데이터 내보내기, 가져오기 기능 구현하기 Humphery 2015.04.01 2122
569 [XE7] 다양한 형태로 표시되는 적응형 컴포넌트 TMultiView 소개 Humphery 2014.09.18 2092
568 웹사이트의 인증서 오류를 무시하고 http 결과 조회하기(WinInet 이용) Humphery 2015.03.06 2092
567 리눅스 서버용 GUI 응용프로그램 만들기(10.2 도쿄 & FMXLINUX 이용) [1] 관리자 2017.04.25 2082
566 RAD 스튜디오로 유스케이스 다이어그램 작성방법 file 험프리 2019.06.20 2065
565 RAD Studio XE7에서 추가된 안드로이드 기능 익히기(동영상) Humphery 2014.11.05 2059
564 [업데이트] RAD Studio XE7 Update 1 개선된 내용 Humphery 2014.11.27 2044
563 [업데이트][Hotfix] iOS 배포와 요세미티, VCL Bitmap 파일 보안취약점 패치 Humphery 2014.10.22 2044
562 이 달의 기술자료 - 2016년 07월 file 험프리 2016.06.30 2038
561 QueryPerformanceCounter 사용 시 주의사항(x86, 64bit) Humphery 2014.05.07 2031
560 이 달의 기술자료 - 2014년 5월 file 험프리 2014.05.19 2005
559 부산가톨릭대학교 특강 발표자료 Humphery 2014.03.13 1983
558 [로드맵] RAD 스튜디오 로드맵(2016년 8월) file 험프리 2016.08.12 1982
557 [오픈소스] Python for Delphi(P4D) [5] file 험프리 2017.09.01 1980
556 Quality central Windows Client 이용방법 file Humphery 2014.04.30 1965
555 델파이로 국제화된 다국어 애플리케이션 만들기 Humphery 2014.12.10 1954