프로그래밍 33

[Python] pandas or pyspark to_csv 테이블 깨짐현상 해결법

현재 팀 토이 프로젝트를 진행하면서 크롤링한 데이터를 데이터 테이블로 만든 후 CSV 파일로 export한 후 다시 불러와보니 아래 사진과 같은 현상이 발생했다. 사진을 보면 테이블이 밀려 깨진 것들을 볼 수 있다. 내가 찾은 문제점은 총 2개이다 기본적으로 csv는 구분자가 , 로 되어있는데 이 테이블의 review부분에 , 이 포함되어 있어서 밀렸다고 생각한다. 나는 pyspark을 사용했기 때문에 이 문제를 해결하는 코드는 다음과 같다. data_df.coalesce(1).write.option("sep","|")\ .option("header","true")\ .csv('파일경로') 2. review 데이터에 개행문자들이 많이 포함되어 있었던 게 문제가 되었던 것 같다. 이런 문제는 정규표현식을 ..

[Docker]Airflow과 mysql 연동하기

Airflow를 사용하여 데이터 파이프라인을 구축하기 위해 mysql과 연동시키는 작업을 하려고 했었다. 아직 docker-compose에 대한 개념이 완벽하지 않은 상황에서 Airflow, mysql에 대한 지식 모두 완벽하지는 않아서 이 연동을 구축하는 데에 다양한 오류를 만나면서 대략 12시간 만에 구글링을 통해 연동을 성공시켰다... 이 글이 docker로 Airflow+mysql을 구축하려는 사람에게 도움이 되었으면 좋겠다. 1. 우선 docker-compose.yaml을 내가 설치하려는 폴더에 만들어준 후 터미널로 이 폴더에 진입한 후 아래의 명령어를 입력해주자. $ curl -LfO 'https://airflow.apache.org/docs/apache-airflow/2.3.3/docker-..

쿠버네티스 기본 개념

#쿠버네티스란? 프로그래밍을 하면서 서버 구축에 있어서 다양한 언어와 환경으로 이루어진 경우가 대부분이고 이런 환경을 컨테이너를 통해서 관리할 수 있었습니다. 하지만 너무 많은 컨테이너가 발생하게 되고 이것들을 일일이 하나하나 관리하기는 너무 힘든 일이 였는데 쿠버네티스는 이런 컨테이너들을 한번에 관리해줄수 있는 기능들을 가지고 있고 현재 많은 기업에서 도입하고 있는 기술입니다. #쿠버네티스 기본 구조 쿠버네티스는 기본적으로 마스터노드와 워커노드로 구분되어 있는데 여기서 마스터 노드에서는 컨테이너들을 컨트롤 하기 위한 기능들이 들어 있고 워커 노드에는 Pod로 표기 되어 있는 세부적인 컨테이너들이 작동되고 있습니다. #Master Node 기능 API Server: 클러스터 구성요소를 서로 통신하기 위한..