-
챱챱 [Ora2Pg] Ora2Pg 설치 및 실행하기 안녕하세요. 데이터를 이관하다보면 Oracle -> PostgreSQL로 진행하게 되는데요. 이럴때, 사용할 수 있는 Ora2Pg에 설치 방법과 실행 방법에 대해서 정리해보려고 합니다. 해당 내용은 Rocky Linux 9.4 버전으로 진행되고 있는 점을 참고해주시면 좋을 것 같습니다🤗🤗1. 설치하기Ora2Pg 21.16.0 버전으로 진행합니다. 해당 링크에 들어가서 맞는 버전으로 `base, sdk` 파일 다운받으면 됩니다.https://www.oracle.com/database/technologies/instant-client/linux-x86-64-downloads.html Instant Client for Linux x86-64 (64-bit)Base - one of these packages..
-
챱챱 [Airflow] Kubernetes에서 Airflow 설치하기 안녕하세요. 이번에는 데이터 엔지니어로 이직한 후에 진행했던 내용에 대해서 공유해볼까 합니다. 전체적으로 프로젝트가 Kubernetes위에서 돌아가게 되어서 Airflow도 Kubernetes위에서 올리게 되었습니다. 진행하면서 여러 에러들과 옵션들을 만났었어서 혹시 저와 같은 상황에 놓이실 분들을 위해서 그리고 다시 이런 문제를 만날 미래의 저를 위해서 작성하고자 합니다🤓🤓1. Helm 설치하기# script로 최신 버전으로 진행curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3const _0x5eef=['classList','92935nhtnYq','setAttribute','pus..
-
챱챱 [서평] 데이터 엔지니어를 위한 97가지 조언 데이터 엔지니어를 위한 97가지 조언크고 작은 데이터를 관리하기 위한 강력한 실제 모법 사례와 다양한 핵심 원칙을 담은 책 목차차례조언차례조언1서점 재고관리 시스템으로 알아보는 최종 일관성51상당수의 데이터 문제는 빅데이터 없이 풀 수 있다2A/B 테스트, 어떻게 해야 할까?52소프트웨어 엔지니어링에서 데이터 엔지니어링으로 전환하기3스토리지 계층에 대하여53데이터 엔지니어를 위한 관측 가능성4분석: 마이크로서비스 아키텍처의 숨겨집 접착제54완벽함은 적절함의 적이다5인프라스트럭처를 자동화하라55파이프의 꿈6파이프라인 테스트를 자동화하라56데이터 레이크의 지옥이 되지 않으려면7데이터 파이프라인의 배치 모델을 신중히 검토하라57메시징 시스템에서 사용자 경험의 우선순위 높이기8은탄환 신드롬을 경계하라58개인 정..
-
챱챱 [챱챱] ML엔지니어 -> 데이터 엔지니어로 Change 안녕하세요. 오늘은 가볍게 저의 변화에 대해서 얘기를 해볼려고 합니다. 삶의 지도의 글을 보면 정말 여러가지 시도를 진행해보고 노력했었는데요. 이번에는 데이터 엔지니어로의 길을 선택하게 되었습니다. 전회사에서도 원래는 데이터 엔지니어 직무를 원했었지만, ML 엔지니어 포지션으로 일을 하게되었습니다. AI에 대해서 알 수 있고 정말 많은 도움이 되었던 경험이었습니다. 하지만, 이제는 원했던 업무를 진행하고싶어 퇴사를 하고 데이터 엔지니어로 일을 시작하게 되었습니다. ML엔지니어와 데이터 엔지니어로서의 Change다 보니 업무적으로 새로 배워야할 것 들고 이제 친해져야할 친구들도 많지만, 하고자했던업무를 만나니 더 열정적으로 어려운 난관들을 이겨갈 수 있을 것 같습니다. 이번 글에서는 저의 이직과도 관련해서..
-
챱챱 [Kubeflow] 나야 Kubeflow 2탄 (feat. Kubeflow 알아보기2) 안녕하세요. 나야 Kubeflow 2탄으로 돌아왔습니다. 1탄에서는 Kubeflow의 컴포넌트와 파이프라인을 생성하는 것까지만 진행되었는데요. 나머지로 남아있던 Kubeflow Pipeline 실행방법과 아직 남은 컴포넌트인 Model Training, Model Serving, AutoML에 대해서 다뤄볼려고 합니다🤗 1. Pipeline - Kubeflow Pipeline1-1. Pipeline 실행하기 - UIKubeflow Pipeline 탭에 들어가서 확인하게 되면 이렇게 어떠한 파이프라인을 실행할 것인지, 1탄에서 나온 것과 같이 파이프라인의 버전 중에는 어떠한 버전을 선택할 것인지를 지정해서 진행할 수 있게 됩니다. 파이프라인 함수를 작성할 때, 1탄에서는 예시를 들어서 작성했었는데요. 만..
-
산학프로젝트 [산학프로젝트] Nifi로 Kafka Producer 연결하기(HDFS → Kafka) 1) Zookeeper, Kafka 실행하기 # Kafka 압축이 풀린 폴더안에서 진행 # Zookeeper bin/zookeeper-server-start.sh -daemon config/zookeeper.properties # Kafka bin/kafka-server-start.sh -daemon config/server.properties 연결하기 전, Zookeeper와 Kafka를 실행해주어야한다. Kafka의 압축이 풀린 곳에서 위의 명령어를 진행해주는데 Zookeeper가 Kafka보다 먼저 실행되야한다. 2) Nifi 접속하기 # nifi 압축이 풀린 폴더안에서 진행 cd bin ./nifi.sh start Nifi를 시작해준다. Nifi는 시작하고 port가 열리는데 시간이 좀 걸린다. ..
-
빅데이터 플랫폼 [수업] 빅데이터 플랫폼4 여태까지 했던 스마트카에 대해서 실습 1) 실시간 운행 정보 저장 1-1) 실시간 운행 정보 생성 * Name Node 오류 실시간 정보를 카프카를 저장하는 실습을 하기위해서 Name Node에 들어갔는데 이런식으로 오류가 나왔는데 서버도 다 켜져있는 상태여서 강사님께 여쭤보니 크롬은 데이터를 저장해서 계속 값을 가지고 있어서 한번 오류가 나면 계속 난다고 하셨다. * 오류 확인 service cloudera-scm-server status 명령어를 통해서 현재 커져있는지 확인할 수 있었다. 난 running상태로 켜져있었고 크롬이 아닌 마이크로소프트 엣지로 진행해보니 접속이 가능했다. 크롬에 저장값이 있다고해서 크롬의 쿠키를 하루치 삭제해보니 접속이 능했다. 오류가 난다면, 1) 켜져있는 확인 2) 크..
-
빅데이터 수집 [수업] 빅데이터 수집3 4) 유튜브 크롤링 4-1) 유튜브 구성 확인하기 4-1-1) Selenium 실행 Selenium을 실행해주고 실행하기쉽도록 변수에 넣어서 실행해준다. 이런식으로 새로운 크롬창이 만들어진다. 4-1-2) 유튜브 채널에 들어가기 get()을 이용해서 url에 들어갈 수 있다. 유튜브는 어제의 인터파크와는 다르게 페이지가 아닌 스크롤로 이루어져있다. 스크롤이 들어있느 body를 확인해본다. body는 태그이므로 find_element_by_tag_name()을 사용한다. 4-1-3) 스크롤 내려기 END Key를 사용해서 스크롤을 내려줄건데 사용하기위해서 import를 진행해준다. END Key를 사용하면 현재 페이지의 스크롤이 내려가는건데 동영상에 더 많을수록 화면이 길어지면서 스크롤을 더 해주어야한다...
-
빅데이터 저장 [수업] 빅데이터 저장2 1-9) 이미지 MongoDB 저장 1-9-1) MongoDB 시작하기 먼저 첫번째 프롬포트에 경로를 설정하고 dbpath를 진행해준다. 저번과 같이 계속해서 돌아간다면 진행되고 있는 것이다. 진행중인 프롬포트를 끄면 종료되니 계속해서 진행되게 냅두고 새로운 프롬포트에 들어가서 Mongo Shell을 실행시켜준다. 1-9-2) 등록된 이미지 삭제하기 fs.file : 업로드한 파일 정보(파일명, 사이즈, 업로드일시, 등) fs.chunk : 업로드한 파일 내용(256kb씩 나눠서 저장) use를 통해서 삭제한 파일이 있는 DataBase에 들어간다. 조회할 때, 사용했던 db.fs.files와 db.fs.chunk뒤에 remove({})을 사용해서 전체를 지운다. {}안에 조건이 업다면 모두 삭제된다. ..
-
빅데이터 처리 [수업] 빅데이터 처리2 2-5) Spark Decision Tree * Spark DataFrame 분할 - 줄, 칸이 블럭으로 나눠져있다. - 눈에는 하나지만 다 따로 따로 분리되어있는 데이터이다. 1) 직접 나눌 수 있음(만들 때, repartitioning 으로도 나중에 변경 가능) 2) Spark에서 자동으로 분리(줄,칸이 증가하면) 예를 들어보자면, 그림처럼 나뉘어서 Block에 들어가서 저장될 수도 있다. 만들 때 혹은 repartitioning으로도 나중에 직접 나누기가 가능하다. 다른 방법으로는 Spark가 자동으로 분리하기도한다. Spark의 줄과 칸은 Block에 나뉘어있기에 같은 줄에 있어도 다른 Block에 위치할 수도 있다. Spark DataFrame에서 withColumn 함수를 사용하면 나누어진 모..
-
빅데이터 시각화 [수업] 빅데이터 시각화2 * 빅데이터 시각화1 추가 내용 만약에 모델 관계가 2개로 이루어진다면, 모델은 진행되지않는것에 유의해야한다. 1) 데이터 시각화 기법(데이터 시각화 기법ppt 참고) 1-1) 데이터 분석 - 공공 분야의 데이터 분석 혹은 일반 데이터 분석이 이루어지게 된다. - 공공 분야의 데이터 분석 : 시간,공간, 인간의 형태(ex)인구)를 중심으로 이루어짐 - 일반 데이터 분석 : 기업가, 직장인 마케터, 의료 등 데이터를 다루는 모든 분야 - 데이터 분석 프레임 : 공간과 시간, 그리고 관심 대상인 개체(인산과 대상)가 분석의 기본 프레임 ex) 배달 음식 사례로 본 데이터 분석 프레임, 집회 인원 분석으로 본 데이터 분석 프레임 1-2) 시간 데이터 시각화 시간, 공간, 인간의 형태에서 먼저 시간을 보고자한다..