Flat Data - GitHub을 데이터 ETL 도구 및 저장소로 사용하기
(octo.github.com)- Git Scraping 기법을 이용해서 가벼운 데이터 기반 앱을 쉽게 개발할 수 있게 도와주는 프로젝트
ㅤ→ Data ETL 을 자체 인프라 없이 구축하고 사용
- 3개의 컴포
ㅤ→ Flat Action : 데이터 페치/변환을 하는 GitHub Action
ㅤ→ Flat Editor : Flat Data Workflow를 편집하는 GUI (VS Code 확장)
ㅤ→ Flat Viewer : Repo에 저장된 Flatfile 을 보고 필터링/공유 할수 있는 웹사이트
Flat Data 사용법
1. Flat Action으로 HTTP 또는 SQL Query(MySQL,Postgres,SQLite,MongoDB 등) 으로 데이터 가져오기
ㅤ→ 주식/코인 시세, Excel to CSV, COVID Dashboard등을 가져와서 GitHub Repo등에 저장
2. 데이터 변환
ㅤ→ GitHub Action 으로 Postprocess 해서 새로운 파일로 저장
3. 데이터 시각화
ㅤ→ 모든 깃헙 주소에 flat 만 붙이면 데이터를 보여주는 GUI 도구 제공 : https://flatgithub.com/the-pudding/data
Flat Data를 만든 이유
- 데이터를 사용하기 위해서는 분산 시스템 및 큰 인프라들이 필요
- 개발자들이 이런 데이터를 쉽게 접근하기 위해 데이터 취득/정제 작업을 GitHub Actions로 하게 도와주기 위함
- 복잡한 의존성,라이브러리,패키지매니저,인프라 등에 대해 알 필요없이 데이터를 Repo에 저장
* 이 프로젝트는 GitHub OCTO(Office of the CTO)의 개발자 경험팀이 진행하는 실험으로, GitHub의 오피셜 제품은 아님. MIT 라이센스
Simon Willison이 만든 Git Scraping 기법을 GitHub이 도입해서 훌륭한 제품으로 만들었네요
- Git Scraping - 웹 변경사항을 Git Repo에 기록하기 https://news.hada.io/topic?id=3008
Simon은 TIL(Today I Learned) 을 GitHub 인덱스에 저장하는 팁으로도 유명합니다.
- GitHub Actions로 TIL README 인덱스 자동 생성하기 https://news.hada.io/topic?id=1936