Redshift COPY 시 잘못된 timestamp 값이 적재되는 문제Airflow의 S3ToOperator를 사용해 S3 버킷에 저장된 .parquet 파일을 Redshift에 COPY를 진행하였는데, 다른 모든 값은 모두 올바르게 적재되었음에도 timestamp 형식을 가진 컬럼만 잘못된 값이 적재되었다. 이 문제를 해결하기 위한 과정을 적어보려 한다.데이터 처리 방식 (ETL)우선 이슈가 발생했을 때의 S3에 적재되는 .parquet의 ETL 과정을 나타내 본 뒤 본격적으로 해결 과정을 알아보자.데이터 추출 (Extract)서울 도시데이터 API 호출을 통해 Json 형태의 데이터 추출데이터 변형 (Transform)추출한 데이터 (Json)를 가져와 필요한 데이터를 리스트 형태로 변경여기서 리스..
문제 1) CSV 파일을 읽고 파일에 쓰기 파이스파크로 똑같이 하고 차이를 관찰한다. 아마 여러 개의 파일이 출력되는 것을 확인할 수 있다. 무슨 일이 일어났는지 간단히 설명하고 어떻게 여러 개의 출력물을 하나의 파일로 합칠 수 있을지 간단히 답해보자. Pyspark read/write 파이썬에서 스파크를 활용하기 위해서는 기본적으로 Session을 지정해주어야 한다. from pyspark.sql.session import SparkSession Sparksession을 확인하면 스파크의 버전과 AppName도 함께 출력된다. AppName은 함수를 통해 지정할 수 있다. sc = SparkContext.getOrCreate() spark = SparkSession(sc) spark # SparkSes..