Airflow와 datahub를 이용하여 데이터를 분석해보려 했지만... 실패했습니다.
지금시간까지 해결한 부분과 어디에서 막혔는지, 예상되는 그 이후 데이터의 흐름에 대해 정리해보았습니다.
airflow는 워크플로어를 관리 및 시각화하여 볼 수 있는 도구입니다. python을 사용하여 코드를 작성하면 물 흐르듯이 데이터를 추출, 분석, 적재(다른 DB에 이식)할 수 있습니다.
또한 스케쥴러를 이용하면 일정 시간마다, 날짜마다 RDBMS에 저장된 데이터를 OLAP로 이식할 수 있습니다. 사용자(개발자/데이터분석가)는 Airflow에 작성된 작업들의 순서를 설정하며 이로인해 복잡한 워크플로어를 구성하게 되었습니다.
스프링 배치는 일정량의 데이터를 한번에 처리하는 방식으로 대량의 데이터를 일괄적으로 처리합니다. 스프링 배치 역시 스케쥴러와 함께 사용되어 정해진 스케쥴대로 동작합니다.
airflow 보다는 단일의 단순한 많은 데이터를 처리합니다. 예시로는 n년간 접속을 안하면 계정을 휴면 상태로 바꾸는 작업을 들 수 있을것 같습니다.
Datahub는 airflow를 비롯한 파이프 라인을 따라 들어오는 데이터를 받아서 어디에, 어떤 데이터가 있는지 검색하여 빠른 데이터 분석을 가능하게 합니다. 또한 데이터가 언제 어디서부터 시작되었는지를 확인할 수 있습니다.

해당 과정은 같이 일하시는 인턴분들의 도움을 많이 받았습니다.
처음엔 컴퓨터에 설치한 postgresql에 접속이 안되어 데이터 덤프도 받고, 코랩을 사용해봤지만 여기서도 실패하여 결국 postgresql을 docker image로 받아 저장하였습니다.

여기서도 시간이 조금 걸렸습니다. 분명 옆에 계신 나희님은 id와 type만 넣으셔서 되었는데 저는 안되었기 때문이지요 하하하
원인은 가상환경이 아니여서 오류가 난것 같습니다. 다른 노트북과 달리 제가 사용중인 m1은 애플칩을 사용하여 별도의 작업이 필요하였습니다.


datahub로 보낼때 stock이라는 이름으로 보낼 예정이였습니다.
로 예상을 했는데, 
username과 password 모두 기본으로 지정된 datahub를 입력하였지만 'Failed to log in! an unexpected error occurred.' 오류가 나타났습니다.
공식 github issue에 해당 오류가 보고가 되었는데, 30일이 지나 close되어 있어 해결책을 알 수 없었습니다.
github issue
Docker Datahub sign in
더 이상 진행할 수가 없어서 공식 데모사이트와 다른 분들의 게시물들을 예시로 설명하겠습니다.


로그인 후 main ui입니다. 수집된 메타 데이터 목록과 플랫폼별로 이터셋에 대한 통계정보를 제공하며 검색 기능을 통해 원하는 정보를 찾아볼 수 있습니다.
demo사이트에 있는 데이터 리니지 예시입니다.
데이터가 어디서 어떻게 수집되었는지 확인할 수 있으며 오른쪽 summery를 통해 작성자와 도메인, data proudct, tag등에 대해 확인할 수 있습니다.

또한 시각화된 분석페이지가 존재하여 그래프 형태로 확인할 수 있습니다.

테이블 별 / 컬럼 별 태그 부여가 가능합니다.
테이블 별 / 컬럼 별 풍부한 마크다운 문서 작성이 가능하고, 원본 소스의 Description을 보존합니다.

실제 데이터를 가지고 분석을 해보고 싶었는데, 저의 부족한 실력으로 인해 하지 못했던게 아쉽습니다. 공부하면서 airflow가 무엇인지 datahub가 무엇인지 그 사이에는 어떤 일들이 일이 일어나는지를 공부 하면서 대략적인 데이터 흐름에 대해 알 수 있었습니다.