Auto Loader란?
- 추가 설정 없이 클라우드 스토리지에 도착하는 새로운 데이터 파일을 점진적으로 효율적으로 처리한다.
- 여러 cloud 회사의 데이터 스토리지에서 읽어온다.
작동 원리
- cloudFiles 라고 불리는 구조화된 Streaming source를 제공한다.
- cloud file storage path가 주어지면 cloudFiles source는 자동적으로 새로운 파일이 도착하면 자동으로 처리하며, 해당 디렉터리에 있는 기존 파일도 처리하는 옵션도 있다.
- 자동 로더는 Delta Live Tables에서 python과 sql 모두 지원한다.
- 파일이 발견되면 메타데이터는 Auto Loader 파이프라인의 체크포인트 위치에 있는 확장 가능한 key-value 저장소인 RocksDB에 유지 된다.
- RocksDB는 데이터가 정확히 한 번 처리되도록 보장한다.
- 오류시 auto loader는 checkpoint location에 저장된 정보에 따라 중단된 부분부터 다시 시작하고 delta lake에 데이터를 쓸 때 정확히 한 번 쓰도록 보장한다.
이점
- 비용 절감을 위한 컴퓨팅 인프라 자동 확장
- 데이터 품질 검사
- 자동 스키마 진화 처리
- 스키마 드리프트를 감지, 변경 시 알려주며 무시되거나 손실되었을 데이터를 복구할 수 있다.
- 이벤트 로그의 측정항목을 통한 모니터링
- 확장성
- 수십억 개의 파일을 효율적으로 검색 할 수 있다.
- 컴퓨팅 리소스 낭비를 방지하기 위해 백필을 비동기식으로 수행 가능하다.
- 성능