본문 바로가기

DataEnginnering/airbyte

airbyte 간단테스트

 

https://github.com/airbytehq/airbyte

위 github 저장소를 클론하던지 zip으로 다운받던지 해서 설치장소에 설치합니다.

다운 받은 폴더에서 docker-compose up -d 로 실행시킵니다.

 

정상적으로 설치가 되었다면 localhost:8000 에 접속을 할수 있습니다.

.env 파일에 있는 id/password 를 입력 (airbyte / password)

 

 

이런 화면이 뜬다.

자 이제 소스 부분을 선택후 원하는 소스의 정보를 입력합니다. 아래는 로컬 db임 따라 해도 안될테니 알아서들 입력해주세요

 

airbyte docker-compose 설치시 같이 설치되는 도커 이미지중 postgresql 에다가 테스트환경을 만들어서 진행해 봅니다.

 

자 이제 소스 부분을 선택후 원하는 소스의 정보를 입력합니다. 아래는 로컬 db임 따라 해도 안될테니 알아서들 입력해주세요

 

mysql , postgresql 의 경우 cdc를 지원해준다. 나중에 해봐야 겠다.

 

이제 Destinations (target)을 설정합니다.

여러가지 컨넥터를 지원하니 한번씩 살펴 보세요

설정이 되었으면 이제 테스트를 해봅니다.

connection 을 선택하고 우측상단 new connection 버튼을 클릭합니다.

소스 list를 선택하면 기존 만들어 놓은 소스 커넥션이 보입니다.

 

선택후 use existing source 를 눌러 다음으로 넘어 갑니다.

 

 

위 화면에서 보면 소스의 동기화 하려는 테이블목록이 조회 됩니다.

원하는 테이블을 찾아서 on/off 처리 합니다.

다음화면으로 넘어가 sync now를 눌러 실제 동작을 시켜 보겠습니다.

 

 

실행 로그가 목록형태로 조회 됩니다.

 

로그명을 누르면 해당 실행 로그를 확인할수 있습니다.

 

아래 source 에 대상인 public.test2 테이블 입니다. 7개의 데이터가 있습니다.

target 인 test.test2 테이블에 기존 7개의 데이터와 뭔지 모르는 컬럼들이 있습니다.

test.test2를 drop 시키고

airbyte에서 sync를 시킨후 다시 조회 해보았습니다.

테이블이 생성되어 있고 데이터도 들어와 있습니다.

저 기타 등등 컬럼은 아마 sync하느라 생기는거 같은데 좀더 써봐야 알거 같습니다.

 

장점 : 간단하게 소스와 타겟을 정의해서 가져올수 있다.

 

단점 : 중간에 transform 하는 부분이 존재 하지 않는다. 

 

 

깔고 돌려보니 왜 ELT 툴인지 알거 같다......

embulk 대체용으로 사용해 보면 괜찮지 않을까 생각해 본다.