데이터 노하우

데이터 노하우/꿀팁

Airflow 관련 문의 기록

프로젝트 당시 S3toRedshiftOperator 사용시 생겼던 문제에 관한 기록입니다. https://dataengineerstudy.tistory.com/194 [AWS REDSHIFT] AIRFLOW S3 → Redshift UPSERT 관련 에러('syntax error at or near "#"') 먼저 이 글은 저와 같이 REDSHIFT를 AIRFLOW와 연동해서 쓸 때 생기는 문제에 관한 글입니다. 문서가 너무 없고, 저만 겪는 상황 같아서, 열심히 삽질한 결과 작성해놓습니다. 이 글을 읽어보실 분들 dataengineerstudy.tistory.com 당시 문제점들을 기록해놨고, 해당 문제를 airflow 공식 github에 문의한 상태입니다. 임시로 해결해놨지만, 정말 임시로 해결한 문..

데이터 노하우

데이터엔지니어링 관련 질문 모음집(20230512)

(1) PIG랑 HIVE, SPARK은 결국에 비슷한 기술 같은데 용도가 다른 점이 있을까요? PIG, HIVE는 디스크 기반 분산 처리 프레임워크기 때문에, 속도가 느리더라도 한번에 큰 파일을 다룰 수 있다는 점에서 적합합니다. 하지만 SPARK은 가공하려는 데이터를 메모리 위로 올려서 가공하기 때문에, 엄청나게 큰 파일을 가공하는데에는 한계가 있습니다. 따라서 큰 조직의 회사에서는 SPARK을 스트림 처리를 위해 사용하고, PIG, HIVE는 배치 처리를 위해 사용합니다. 물론 날마다 쌓이거나 하는 데이터의 크기가 SPARK으로 감당이 된다면, SPARK을 통해서 처리할 수도 있습니다. (2) HDFS에 있는 데이터를 처리해서, RDB 혹은 NOSQL로 계속 적재하면 DB에 결국 DB에 부하가 올 것..

데이터 노하우/꿀팁

빅데이터 처리 프로세스

빅데이터 처리 프로세스 HDFS 구조 HIVE, PIG MAPREDUCE는 자바 기반 병렬처리 프레임워크 MAP REDUCE를 가지고 만든 언어 PIG (인터프리터 방식) SQL로 만든 언어 HIVE, 내부는 MAP REDUCE로 동작 결국 HIVE, PIG는 컴파일 되면서 아랫단에서 JAVA로 동작하는데, 개발자는 편할지 몰라도 시스템 자체에는 좋지 않을 수 있음 HADOOP ECOSYSTEM 예전에는 하둡 버전에 맞춰서, 다른 프레임워크의 각각의 버전을 맞췄어야함 사람들이 불평불만을 하기 시작했는데, 다 같이 공생해야하니까 얘네들이 하나의 큰 단체를 만듬 하둡을 중심으로 큰 단체를 만들었다. 그래서 지금 버전이 업그레이드 되면, 공식 문서에 어떤 버전이 맞는지 업데이트 되면 공지함 MAHOUT : 머..

데이터 노하우/꿀팁

Pandas 데이터 처리 효율성 전략(Pycon Korea)

이 글은 PyCon Korea의 "뚱뚱하고 굼뜬(Pandas)를 위한 효과적인 다이어트 전략 - 오성우" 영상을 참고했습니다. https://www.youtube.com/watch?v=0Vm9Yi_ig58 1. Memory Optimization 1-1 코드화 문자열로 된 데이터를 숫자/영어로 변환하여 데이터 크기 축소 남자 -> 0 여자 -> 1 서울특별시 -> 11 대구광역시 -> 45 정상 -> 0 비정상 -> 1 한글 문자열로된 범주 값을 숫자 형태로 변환하는 코드화 작업을 진행했더니 4.49GB -> 1.79GB로 크게 감소 1-2 데이터 형식 변환 데이터 형식에 따라서 표현하는 값의 범위와 사용하는 메모리 크기가 달라집니다. 컬럼마다 고정된 크기(Fixed-length)로 할당하기 때문에 크기..

데이터 노하우/꿀팁

Scaling 꿀팁 + 과적합 쉬운 비교 방법

# 특성 데이터 스케일링 from sklearn.preprocessing import StandardScaler scaler = StandardScaler() scaler.fit(X_train) X_train_scaled = scaler.transform(X_train) X_test_scaled = scaler.transform(X_test)표준화 스케일링 시에는, train 데이터 셋을 기준으로 fit하고 test 데이터를 transform한다. # 평가 from sklearn.metrics import confusion_matrix, accuracy_score y_pred = dt.predict(X_train_scaled) train_score = accuracy_score(y_train, y_pre..

우상욱
'데이터 노하우' 카테고리의 글 목록