Bigdata Engineer & Analyst Story Bigdata Engineer & Analyst Story
Python pip Upgrade 방법

Python pip Upgrade 방법

개요 Python의 패키지 관리 시스템인 pip의 버전 확인 및 업그레이드 방법을 포스팅 합니다. pip를 업그레이드 하지 않으면 필요한 모듈에 문제가 생길 수 있습니다. 가급적 python, pip install 후 반드시 pip를 최신으로 업그레이드 하기를 권장합니다. pip version확인 다음 명령어를 사용하여 현재 설치되어 있는 pip 의 버전을 확인할 수 있습니다. pip -V pip upgrade 방법 Mac, Windows 환경 pip upgrade 방법 다음 명령어로 Mac, Windows 환경에서 pip upgrade 할 수 있습니다. $ python -m pip install --upgrade pip Linux 환경 pip up pip upgrade 방법 다음 명령어로 Linux 환경에서 pip upgrade 할 수 있습니다. $ pip install --upgrade pip Error & Solution Error Message Defaulting to use
Debian, Ubuntu에서 apt 명령어로 Rabbitmq 설치

Debian, Ubuntu에서 apt 명령어로 Rabbitmq 설치

Debian, Ubuntu에서 RabbitMQ를 설치하는 방법을 다룹니다. RabbitMQ는 표준 Debian 및 Ubuntu 리포지토리에 포함되어 있습니다. 그러나 포함된 버전은 최신 RabbitMQ 릴리스 뒤에 있는 많은 릴리스이며 이미 지원되지 않는 RabbitMQ 버전을 제공할 수 있습니다. Rabbitmq 설치 확인 $ apt list --installed rabbitmq-server Install Erlang - Erlang 설치 RabbitMQ를 설치하기 전에 지원되는 Erlang/OTP 버전을 설치해야 합니다. 표준 Red Hat, Fedora, CentOS 리포지토리는 Erlang 버전을 제공합니다. RabbitMQ Erlang Version : https://www.rabbitmq.com/which-erlang.html 설치 단계에 대한 자세한 설명을 원하는 사용자는 다음을 참조하십시오. apt 및 Cloudsmith 저장소를 사용한 수동 설치 apt Package
Airflow KubernetesExecutor 개념 및 Architecture 설명

Airflow KubernetesExecutor 개념 및 Architecture 설명

Kubernetes executor는 Kubernetes 클러스터의 자체 pod에서 각 작업 인스턴스를 실행합니다. KubernetesExecutor는 Airflow Scheduler에서 프로세스로 실행됩니다. 스케줄러 자체는 반드시 Kubernetes에서 실행될 필요는 없지만 Kubernetes 클러스터에 대한 액세스는 필요합니다. KubernetesExecutor는 백엔드에 non-sqlite 데이터베이스가 필요합니다. DAG가 작업을 제출하면 KubernetesExecutor는 Kubernetes API에서 작업자 포드를 요청합니다. 그런 다음 작업자 포드는 작업을 실행하고 결과를 보고하고 종료합니다. https://airflow.apache.org/docs/apache-airflow/stable/_images/arch-diag-kubernetes.png Kubernetes 클러스터의 분산된 5개 노드 집합에서 실행되는 Airflow 배포의 한 예가 아래에 나와 있습니다. ht
Airflow CeleryExecutor 개념 및 Architecture 설명

Airflow CeleryExecutor 개념 및 Architecture 설명

CeleryExecutor는 worker 수를 확장할 수 있는 방법 중 하나입니다. CeleryExecutor가 작동하려면 Celery backend(RabbitMQ, Redis 등)를 설치하고, airflow.cfg를 변경하여 executor를 CeleryExecutor로 설정해야 합니다. 자세한 Celery broker 설정 방법 https://docs.celeryq.dev/en/latest/getting-started/ 요구 사항 Airflow 설치 클러스터 전체에 airflow 구성 동일하게 설정 operator는 해당 context를 충족해야 함 HiveOperator를 사용하는 경우 해당 상자에 Hive CLI를 설치 MySqlOperator를 사용하는 경우 필요한 Python 라이브러리를 PYTHONPATH에서 사용할 수 있어야 함 worker는 DAGS_FOLDER에 대한 액세스 권한이 있어야 하고 파일 시스템을 동기화 일반적인 설정은 DAGS_FOLDER를 Git 리
[앱테크] 옵저버(Observer) 채굴기 소개, 매수 및 출금 방법 소개

[앱테크] 옵저버(Observer) 채굴기 소개, 매수 및 출금 방법 소개

옵저버 앱 소개 옵저버는 기상관측 및 기상 관련 빅데이터 클라우드 소싱 플랫폼입니다. 앱을 통해 나의 현재 위치의 날씨를 제보하면, 보상으로 옵저버 토큰을 받습니다. 관측은 30분에 한번 씩 제보할 수 있으며, 1회 제보에 2OBSR 토큰을 받으며, 1000토큰 이상이면, 다음날 설정한 지갑에 자동으로 이체됩니다. 상장 거래소: 업비트, 빗썸 옵저버 코인 시세 분석 옵저버 주봉 차트입니다. 2021년 3월 4월에 최고점 찍은 후 계속 하락하다가 9월 다소 반등 이후 1년 넘게 동안 횡보 중입니다. 코인 상승 시기에 강한 상승이 올 수 있다고 생각됩니다. 옵저버 주 채굴 수량 주별 제보 건수 저는 일주일 동안 날씨 제보를 162건 하였습니다. 제보 한 건에 2토큰을 받아서 일주일 동안 324개 토큰을 받았습니다. 옵저버 입금 주소 설정 업비트 입금 주소 설정 옵저버는 1000개 토큰이면, 설정한 지갑 주소로 자동 입금됩니다. 회원 가입할때 또는 지갑등록 화면에서 등록할 수 있습니다.
[앱테크]포게더 소개, 포인트 적립 및 출금 방법 가이드/후기

[앱테크]포게더 소개, 포인트 적립 및 출금 방법 가이드/후기

포게더 소개 포게더는 포모코와 도모코 3종 앱테크로 광고 및 기사를 보고 포인트를 받는 앱입니다. 이번 포스팅은 포게더 앱에서 포인트를 받아 네이버 포인트로 출금하는 방법을 공유합니다. 회원가입 시 "추천인 코드(1186af6c)"를 입력하면 50,000포인트를 받습니다. 포인트 적립 방법 1. 출석체크 광고 시청하면 주어진 포 인트를 받습니다. 일 6개 출석체크 광고가 제공되며, 모두 시청하면 추가 포인트까지 총 1400포인트 + 응모권 30장을 받습니다. 응모권은 화성 로켓 발사에서 사용됩니다. 2. 포인트 생산소 광고 시청하면 주어진 포인트를 받습니다. 포인트 생산소 - 시간당 100포인트 이벤트 생산소 - 시간당 50포인트 3. 실시간 뉴스 기사 한편 당 50포인트를 받습니다. 50편을 보면 일일미션3을 완료되며, 100편을 보면 일일미션4를 완료됩니다. 미션3은 500포인트 미션4는 1000포인트 지급됩니다. 4. 포인트 뽑기 출석체크에서 받은 응모권을 이용해 번호를 받습니
[Linux] ulimit 개념 및 설정방법

[Linux] ulimit 개념 및 설정방법

ulimit 이란 ulimit이란 user limit를 줄인 단어로, 사용자가 실행시키는 프로세스의 자원을 제한하는 설정 입니다. 병렬 처리 프로그램이나 동시 접속자가 많은 서비스에서 설정합니다. 예로 내가 사용하는 자바 프로그램 등이 설정된 ulimit의 open file 수보다 더 많은 수의 소켓 통신을 하게되면 장애가 발생하게 됩니다. 또는 설정된 max user processes 보다 많은 쓰레드를 생성하더라도 장애가 발생하게 됩니다. ulimit는 프로세스의 자원 한도를 설정하는 명령, soft한도,hard한도 두가지로 나뉩니다. soft : 새로운 프로그램을 생성하면 기본으로 적용되는 한도 hard : 소프트한도에서 최대로 늘릴 수 있는 한도 ulimit 확인 방법 # soft 설정 확인 방법 (default) $ ulimit -a -S # hard 설정 방법 $ ulimit -a -H ulimit 설정 방법 ulimit 설정 방법은 1)명령어를 사용하는 방법과 2)lim
파일 디스크립터 (FD, File Descriptor)

파일 디스크립터 (FD, File Descriptor)

파일 디스크립터 (FD, File Descriptor) 개념 유닉스 시스템에서 일반적인 디렉토리, 네트워크 소켓, 파이프, 블록 디바이스, 케릭터 디바이스 등 모든 객체들을 파일로 관리한다. 프로세스가 이 파일들을 접근할 때 파일 디스크립터라는 개념을 이용한다. 프로세스가 실행 중에 파일을 Open하면 커널은 해당 프로세스의 파일 디스크립터 숫자 중 사용하지 않는 가장 작은 값을 할당해준다. 그 다음 프로세스가 열려있는 파일에 시스템 콜을 이용해서 접근할 때, 파일 디스크립터(FD)값을 이용해서 파일을 지칭할 수 있다. FD의 0번에서 2번까지는 고정되어 있다. (unistd.h 헤더파일에 명시) Integer value Name symbolic constant file stream 0 Standard input STDIN_FILENO stdin 1 Standard output STDOUT_FILENO stdout 2 Standard error
[앱테크]메디패스 코인 소개, 매수 및 출금 방법 가이드/후기

[앱테크]메디패스 코인 소개, 매수 및 출금 방법 가이드/후기

메디패스 소개 메디패스는 나의 의료 데이터를 디지털의 형태로 활용할 수 있는 의료 데이터 블록체인 플랫폼입니다. 제공하는 서비스 종류는 보험청구, 약알리미, 건강검진 조회 등이 있습니다. 추천인 코드(NYMC6S ) 부탁드립니다. 입력하면 3 MED를 받습니다. MED 코일 입금 방법 코인워크 메뉴에서 출석 체크(1MED)와 만보기(6MED) 하루에 총 7MED 코인을 받을 수 있습니다. 미션을 수행하는 방법도 있는데 복잡한거 싫어해서 저는 출석과 만보기만 수행 했습니다. 만보기 많이 걸을수록 보상이 커지며 최대 만보까지 측정됩니다. 하루 최대 6MED 코인을 받을 수 있습니다. 2000걸음 - 1MED 5000걸음 - 2MED 10000걸음 - 3MED 만보기 출석 체크 하루에 1 ~ 100MED 적립된다고 하지만 한달 동안 써본 결과 1MED만 받았습니다. 그래도 꽁짜니깐 감사합니다. 출석체크 미션 MED 코일 출금 방법 업비트로 출금하는 방법을 공유하겠습니다. 200 MED 이
ModuleNotFoundError: No module named 'MySQLdb'

ModuleNotFoundError: No module named 'MySQLdb'

No module named 'MySQLdb' Error 해결방법 $ pip install mysql-python (mix os/ python 2) $ pip install mysqlclient (mix os/ python 3) 저는 airflow webserver 시작할때 에러가 발생했으며, 전체 에러메시지는 다음과 같습니다. Traceback (most recent call last): File "/usr/local/bin/airflow", line 5, in from airflow.__main__ import main File "/usr/local/lib/python3.9/site-packages/airflow/__init__.py", line 46, in settings.initialize() File "/usr/local/lib/python3.9/site-packages/airflow/settings.py", line 573, in initi
Linux에서 Yum으로 Rabbitmq 설치

Linux에서 Yum으로 Rabbitmq 설치

Install 개요 패키지는 PackageCloud의 Yum 리포지토리를 통해 배포됩니다. Rabbitmq-server는 Fedora에 포함되어 있습니다. 그러나 포함된 버전은 종종 RabbitMQ 릴리스보다 뒤쳐집니다. PackageCloud의 Yum 리포지토리를 사용하는 것이 좋습니다. RabbitMQ를 설치하기 전에 지원되는 Erlang/OTP 버전을 설치해야 합니다. rpm binary 다운로드 $ wget https://github.com/rabbitmq/erlang-rpm/releases/download/v25.1.1/erlang-25.1.1-1.el8.x86_64.rpm $ wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.11.2/rabbitmq-server-3.11.2-1.el8.noarch.rpm 다른 버전의 binary 파일을 다운로드 하려면 다음 사이트에서 확인 가능합니다. erlang
[앱테크 추천]도모코(도지코인) 채굴기 소개, 매수 및 출금 방법 소개

[앱테크 추천]도모코(도지코인) 채굴기 소개, 매수 및 출금 방법 소개

도모코 소개 도모코는 광고 및 기사를 보고 받은 포인트로 도지코인으로 교환해 주는 앱 입니다. 이번 포스팅은 도모코 앱에서 포인트를 받아 도지코인으로 교환하는 방법과 도지코인을 업비트로 출금하는 방법을 공유합니다. 상장 거래소: 업비트, 빗썸 회원가입 시 "추천인 코드(0db5c089)"를 입력하면 50,000포인트를 받습니다. 도지코인 시세 분석 및 전망 도지코인은 일론 머스크가 최애하는 코인입니다. 현재 머스크가 트위터 인수 호재로 많이 상승하고 있습니다. 트위터 인수 후 중국의 윗챗과 같이 여러 기능을 추가할 예정이며, 화폐로 도지코인을 사용할 거라 예상돼 많은 주목을 받고 있습니다. 도지코인 매수 방법 도모코는 일 2회 포인트를 회수합니다. (오전 9시, 오후 6시) 오전 9시 획득 포인트 오후 6시 획득 포인트 저는 일 별 13,000포인트 받았으며, 이는 약 1.2도지 이상으로 변환됩니다. 1. 출석체크 광고 시청하면 주어진 포인트를 받습니다. 일 6개 출석체크 광고가 제
Airflow Architecture Overview

Airflow Architecture Overview

Airflow는 워크플로를 구축하고 실행할 수 있는 플랫폼입니다. 워크플로는 DAG(Directed Acyclic Graph)로 표시되며, 종속성과 데이터 흐름을 고려하여 정렬된 작업을 표시합니다. DAG는 Tasks 간의 종속성을 지정하고, 그것들을 실행하고 재시도를 실행하는 순서 지정합니다. Tasks은 데이터 가져오기, 분석 실행, 다른 시스템 트리거 등 수행할 작업을 설명합니다. Airflow는 다음 구성 요소로 구성됩니다. 스케줄러: 예약된 워크플로를 트리거하고 실행할 실행기에 작업을 제출 익스큐터: 실행 중인 작업을 처리. 기본 Airflow 설치에서 이것은 스케줄러 내부의 모든 것을 실행하지만 대부분의 프로덕션에 적합한 실행기는 실제로 작업 실행을 작업자에게 푸시함 웹서버: DAG 및 작업의 동작을 검사, 트리거 및 디버그할 수 있는 편리한 사용자 인터페이스를 제공함 DAG 파일의 폴더: 스케줄러와 실행자(그리고 실행자가 가지고 있는 모든 작업자)가 읽음 메타데이터 데이
PermissionError:[Errno 1] Operation not permitted: '/Users/id/airflow/logs/dag_processor_manager.log

PermissionError:[Errno 1] Operation not permitted: '/Users/id/airflow/logs/dag_processor_manager.log

배경 airflow 개발환경을 구축하면서 여러 executor를 적용하는 중 이었습니다. airflow.cfg의 exeuctor에 localExecutor를 테스트하고 celeryExecutor를 테스트 하려고 airflow scheduler를 실행하니 다음과 같은 에러가 발생 하였습니다. Error Message {logging_config.py:71} ERROR - Unable to load the config, contains a configuration error. Process SpawnProcess-1: Traceback (most recent call last): File "/usr/local/Cellar/[email protected]/3.10.7/Frameworks/Python.framework/Versions/3.10/lib/python3.10/logging/config.py", line 565, in configure handler = self.configure_handle
Airflow CeleryExecutor 설치 및 DAG 실행

Airflow CeleryExecutor 설치 및 DAG 실행

Airflow Executor 종류 및 개념은 다음 포스팅을 참고 바랍니다. https://blog.naver.com/mlljs1998/222888599066 MySQL 설치, DB 및 Airflow계정 생성 airflow celeryexecutor는 rdb를 사용합니다. mysql 설치는 다음 포스팅을 참고 바랍니다. Linux환경: https://blog.naver.com/mlljs1998/222619603370 Mac환경: https://blog.naver.com/mlljs1998/222892659366 [airflow celery worker] 구성 airflow webserver - airflow UI - workflow 상태 표시하고 실행, 재시작, 수동 조작, 로그 확인 airflow scheduler - 작업 기준이 충족되는지 여부를 확인 - 종속 작업이 성공적으로 완료되었고, 예약 간격이 주어지면 실행할 수 있는 작업인지, 실행 조건이 충족되는지 등 - 위 충족 여부
Mac에서 RabbitMQ 설치 및 Sample Message

Mac에서 RabbitMQ 설치 및 Sample Message

RabbitMQ는 가장 널리 배포/사용된 오픈 소스 메시지 브로커입니다. 이번 포스팅은 Mac의 homebrew를 이용해 rabbitmq 설치 방법을 설명합니다. RabbitMQ 설치 rabbitmq를 설치하기 전에 homebrew 최신화를 확인 후 rabbitmq를 설치합니다. $ brew update $ brew install rabbitmq .bash_profile 수정 RabbitMQ server scripts와 CLI tools이 설치된 sbin 디렉토리를 PATH에 추가합니다. RABBITMQ_HOME=/usr/local/opt/rabbitmq PATH=${PATH}:${RABBITMQ_HOME}/sbin rabbitmq-server 시작 rabbitmq-server으로 실행하면 foreground에서 시작되고, brew services start rabbitmq은 background로 시작됩니다. background로 실행하겠습니다. $ brew services star
[금테크/앱테크]시럽(Syrup) & OK캐쉬백 포인트 금투자

[금테크/앱테크]시럽(Syrup) & OK캐쉬백 포인트 금투자

이번 포스팅은 SK플래닛에서 제공하는 시럽 앱을 이용해 포인트로 금 투자 방법을 공유드리겠습니다. SK플래닛 Syrup 포인트 투자의 장점은 투자금 필요 없이 투자를 할 수 있는 점이라고 생각합니다. 하지만 무료인 만큼 작은 포인트로 투자를 하니, 다소 시간이 오래 걸리는 단점이 있습니다. 하지만 투자금이 들어가지 않으니 짜투리 시간을 이용해서 모으면 훗날 목돈(?)을 만들 수 있다고 생각합니다. 금시세 현황 과거 금채굴 기술이 발달해 금 시세를 낮추었지만, 채굴할 금이 거의 채굴되고 인플레이션이 심각한 상황에 금값이 천정 지부로 오르고 있습니다. 또한 역사적으로 디플레이션에도 금은 강한 모습을 보여줬습니다. 새로운 금채굴 기술이 개발되지 않는 이상 금은 꾸준히 상승할 거라 생각됩니다. 시럽(Syrup) 시럽은 센골드와 연계해서 금투자 서비스인 야금야금을 출시했습니다. 시럽의 야금야금 서비스는 OK캐쉬백 포인트를 이용해 금투자를(최소 1000P) 할 수 있습니다. 다음 이미지는 시럽
Airflow SequentialExecutor & LocalExecutor 설치 및 DAG 실행

Airflow SequentialExecutor & LocalExecutor 설치 및 DAG 실행

Airflow Executor 종류 및 개념은 다음 포스팅을 참고 바랍니다. https://blog.naver.com/mlljs1998/222888599066 Airflow Executor 종류 및 개념 설명 DAG 프로세서 및 태스크 스케줄러는 Airflow 스케줄러를 시작할 때 한 가지 방법에 의해서만 실행할 수... blog.naver.com Airflow 설치환경은 다음과 같습니다. 설치 환경 OS: Ubuntu 22.04 python: 3.10.6 airflow: 2.4.2 (현재 최신 버전) 다음은 Airflow에서 권장하는 pip script 파일입니다. Airflow는 재 설치를 위해 제약 조건 파일을 사용하므로 pip 및 제약 조건 파일을 사용하는 것이 좋습니다. 참고 바랍니다. # Airflow needs a home. `~/airflow` is the default, but you can put it # somewhere else if you prefer (opt
Mac에서 anaconda 삭제

Mac에서 anaconda 삭제

anaconda 폴더 직접 삭제 anaconda는 보통 "/Users/{user_name}/opt/anaconda3" 경로에 설치됩니다. 해당 경로를 삭제 후 "bash_profile 수정"을 수행합니다. $ rm -rf /Users/{user_name}/opt/anaconda3 anaconda-clean 으로 제거 anaconda-clean 설치 anaconda-clean으로 삭제 후 해당 경로를 삭제 후 "bash_profile 수정"을 수행합니다. $ conda install anaconda-clean ## anaconda-clean이 설치되면 다음 명령어로 삭제합니다. $ anaconda-clean --yes .bash_profile 수정 .bash_profile에서 conda setup 하는 부분을 모두 주석 또는 삭제합니다. ## >>> conda initialize >>> ## !! Contents within this block are managed by 'conda
Mac에서 MySQL설치, DB 및 User 생성

Mac에서 MySQL설치, DB 및 User 생성

MySQL 설치 Homebrew를 이용해 Mac에 MySQL를 설치하는 방법을 설명합니다. 이전 버전 mysql 삭제 과거 버전이 설치돼 있을 경우 다음과 같은 에러를 발생합니다. 'The server quit without updating PID file' 'unsupported redo log format' brew services list 명령어로 설치된 애플리케이션 확인 후 mysql 및 데이터 삭제 후 설치 진행해야 합니다. /usr/local/var/mysql 디렉토리는 mysql 로그 파일들이 있는 디렉토리 입니다. $ brew uninstall mysql $ rm -rf /usr/local/var/mysql brew로 설치할 mysql 정보 $ brew info mysql ==> mysql: stable 8.0.30 (bottled) mysql 설치 $ brew install mysql ... We've installed your MySQL database withou
ⓒ 2022 [Bigdata Engineer & Analyst Story] All rights reserved.
Supported by Keyzard