데이터 공부 72

Apache Airflow 처음부터 빌드해보기 + 1

Airflow를 사용해본 경험은 꽤 되지만, 이는 누군가가 Docker로 사용하기 좋게 build해놓은 것을 썼기 때문에 온전히 내 것이라는 느낌이 들지 않았다. 따라서 이번 프로젝트를 진행하면서 Airflow를 처음부터 직접 설치하며 실행해보고 기초를 완전히 다져보고자 Udemy 수업을 수강하고 구글링을 하는 등 공부를 해보았다. 오늘은 지난 주 배운 내용을 온전히 내 것으로 만들기 위해 복습을 해보았다. 1. airflow란 무엇인가 https://eng-sohee.tistory.com/80 01. Airflow 개념 + Docker를 통한 Airflow 설치 01. Airflow란 무엇인가? Airflow는 에어비앤비에서 개발한 워크플로우 스케줄링 및 모니터링 플랫폼이다. 이는 동작 순서 및 방식과..

08. 에러 해결 방법 Error running query: SELECT list expression references column _PARTITIONTIME which is neither grouped nor aggregated

GCP Bigquery에서 해당 코드를 실행하는 데 아래와 같은 에러가 발생했다. 에러 코드 SELECT count(*) as count, date(_PARTITIONTIME) as partition_date FROM `데이터 보관 경로` WHERE DATE(_PARTITIONTIME) in (SELECT distinct DATE(_PARTITIONTIME) as partitiontime FROM `goodmorning-4f4f0.diff_datalist.diff_currentStreak` order by partitiontime desc limit 7) AND result = 'false' GROUP BY date(_PARTITIONTIME) ORDER BY partition_date ❓❗ 에러 살펴보..

04. Spark 간단히 살펴보기, 기능 둘러보기

안녕하세요 한소희입니다. 공부를 통해 배운 내용을 작성하고 있습니다. 혹여 해당 포스팅에서 잘못된 부분이 있을 경우, 알려주시면 빠르게 수정 조치하도록 하겠습니다. 감사합니다. 요즘은 Spark 스터디를 진행하고 있다. 빠른 속도로 스터디를 진행 중이기 때문에, 필기 자료 업로드가 조금 늦었다. 이번 Spark 포스팅에서는, 스파크의 개념 및 간단한 기능을 둘러보고 그 내용을 정리/요약해 볼 것이다. 목차 아파치 스파크란? 스파크의 기능 간단히 살펴보기 01. 아파치 스파크란? 1-1. 아파치 스파크란? 통합 컴퓨팅 엔진이다. 즉, 데이터를 병렬로 처리하는 라이브러리의 집합을 뜻한다. 1-2. 스파크가 왜 좋은가? 통합 플랫폼이 제공되기 때문에 기존 분석 작업을 더 쉽게 가능하다. SQL쿼리로 읽고 머신..

05. 워크플로 관리와 데이터 플로우

안녕하세요 한소희입니다. 공부를 통해 배운 내용을 작성하고 있습니다. 혹여 해당 포스팅에서 잘못된 부분이 있을 경우, 알려주시면 빠르게 수정 조치하도록 하겠습니다. 감사합니다. 워크플로의 관리는 배치 수집에 반드시 필요하다. 나는 현재 기업 협업 프로젝트를 하고 있는데, 이 프로젝트에서도 워크플로 관리의 필요성을 여실히 느꼈다. 따라서 '워크플로 관리'와 '데이터 플로우'에 대해 자세히 공부해보려고 한다. 목차 워크플로 관리 배치형의 데이터 플로우 스트리밍 형의 데이터 플로우 01. 워크플로 관리 워크플로란, 작업 절차를 말한다. 1-1. 워크플로 관리가 필요한 이유 우리는 정기적/반복적 배치 처리의 상황에서 워크 플로우가 존재한다. 데이터 수집은 하나의 명령으로만 생성되는 것이 아니기 때문이다. 이때,..

04. 빅데이터의 축적

안녕하세요 한소희입니다. 공부를 통해 배운 내용을 작성하고 있습니다. 혹여 해당 포스팅에서 잘못된 부분이 있을 경우, 알려주시면 빠르게 수정 조치하도록 하겠습니다. 감사합니다. 이제 데이터를 수집하고 분산 스토리지에 저장하기까지의 프로세스를 공부해 볼 것이다. 우선 데이터의 종류는 크게 벌크형과 스트리밍 형이 있고, 이 형태에 따라 저장 프로세스의 차이가 크기 때문에, 이 둘을 나눠 공부/비교해 보겠다. 그리고, 요즘은 NoSQL에 데이터를 저장하는 트렌드가 있기 때문에, NoSQL에 데이터를 수집하기 위해 알아야 할 것들에 대해 공부해볼 것이다. (이전 NoSQL 중 대표적인 MongoDB에 대한 웨비나를 들은 적이 있는데, MongoDB에 대해 추가적으로 알고 싶은 분들은 아래 정리해 둔 포스팅을 참..

07. 스파르타 코딩클럽 - SQL 강의 완강 후기!

안녕하세요 한소희입니다. 공부를 통해 배운 내용을 작성하고 있습니다. 혹여 해당 포스팅에서 잘못된 부분이 있을 경우, 알려주시면 빠르게 수정 조치하도록 하겠습니다. 감사합니다. 벌써 한 달이 지났다. 드디어 스파르타 코딩 클럽 SQL 수업을 완강했다. 한 주차도 미루지 않고 꾸준히 들은 결과, 시간 내에 완강할 수 있었다. 따라서 개인적으로 너무 뿌듯하다. 완강을 기념으로, 오늘은 스파르타 코딩클럽의 SQL 수업에 대한 느낀 점 및 회고를 진행해보고자 한다. (※ 광고가 아님을 알려드립니다!) 목차 강의를 통해 배운 점 스파르타 코딩클럽의 장단점 할인 코드 공유 01. 강의를 통해 배운 점 SQL의 기초인 where 절부터, 난이도 있는 문법인 subquery까지 배울 수 있었다. 강의를 들으며 정리한 ..

DAG 파일 생성 및 실행 + GCP(구글클라우드플랫폼) - Airflow 연동

목차 DAG 파일 생성 후 Airflow 실행 GCP(구글 클라우드 플랫폼) - Airflow 연동 01. DAG 파일 생성 후 Airflow 실행 우선적으로, docker를 연다. 이미 ※ 첫 번째 포스팅에서 컨테이너를 생성했으므로, 컨테이너를 새로 시작할 땐 시작(start)만 해주면 된다. ※ 첫 번째 포스팅 링크 docker start airflow_v1 Vim과 Procps를 설치해보자. 처음 받은 이미지에는, vi로 파일을 수정할 수 없다. 왜냐하면 위와 같은 파일이 설치가 되어있지 않기 때문이다. 또한 netstate로 네트워크 내역을 확인할 수 있도록 필요한 소프트웨어를 설치해준다. root로 접속해서 설치한다. docker exec -u root -ti airflow_v1 /bin/bas..

Airflow 개념 + Docker를 통한 Airflow 설치

01. Airflow란 무엇인가? Airflow는 에어비앤비에서 개발한 워크플로우 스케줄링 및 모니터링 플랫폼이다. 이는 동작 순서 및 방식과 같은 파이프라인을 파이썬 코드를 이용해 구성하기 때문에 동적인 구성이 가능하다. 또한 분산구조와 메시 지큐를 이용해 많은 수의 워커 간 협업을 지원하고 스케일 아웃이 가능하다. 1-1. Ariflow의 아키텍처 스케줄러 - 브로커 & 메타 DB - 여러 개의 워커 1. 스케줄러: 실행 주기가 되면 작업을 생성하고, 의존 작업이 모두 성공하면 브로커에게 넘긴다. 2. 브로커: 실행 가능한 작업(워커)들이 들어가 있는 공간 3. 워커: 실제 작업을 진행하는 주체 4. DAG, Task 등이 정의되어 있다. 1-2. Airflow를 왜 사용해야 하는가? 이는 ※전일 회..

05. SQL- Join의 활용 (A.K.A 3주차 수업 정리)

안녕하세요 한소희입니다. 공부를 통해 배운 내용을 작성하고 있습니다. 혹여 해당 포스팅에서 잘못된 부분이 있을 경우, 알려주시면 빠르게 수정 조치하도록 하겠습니다. 감사합니다. 목차 Join이란 Inner Join과 Left Join 다양한 Join 활용법 퀴즈 과제 01. Join이란 Join이란, 여러 개의 테이블을 조건(Key)에 맞게 테이블을 연결한 것이다. Join의 예시는 위와 같다. 테이블 A와 테이블 B에는 동일한 '아이디'라는 속성이 있다. 이들을 기준으로, 우리가 원하는 데이터만 끌어 와 새로운 테이블을 생성할 수 있는데, 이것을 Join이라고 한다. 02. Inner Join과 Left Join 가장 많이 쓰이는 방법이 바로 inner join과 left join이다. inner jo..

03. CentOS에 Spark 설치 + 에러 해결

안녕하세요 한소희입니다. 공부를 통해 배운 내용을 작성하고 있습니다. 혹여 해당 포스팅에서 잘못된 부분이 있을 경우, 알려주시면 빠르게 수정 조치하도록 하겠습니다. 감사합니다. 이전 포스팅에 이어서, CentOS가 깔린 버추얼박스 가상 머신에 spark를 깔아 볼 것이다. 이 또한 방법 자체는 어렵지 않다. 순서를 크게 정리해보자면 1. spark 설치 링크를 이용해, 가상머신 터미널에 명령어로 가져 온다. 2. 압축을 해제한다. 3. 환경변수를 설정한다. 이 세 가지 방법이면 손쉽게 설치가 가능하다! 하지만 중간중간 겪었던 오류나, 처음 설치하다 보니 헤맸던 기록을 한번 해보려고 한다. 목차 가상 머신에 Spark 설치 방법 가상 머신에서 Spark 환경변수 설정 방법 01. 가상머신에 Spark 설치..