본문 바로가기

분류 전체보기

(524)
ETL 프로세스의 이해 ETL 프로세스의 이해 데이터 주도 의사 결정은 현대 비즈니스 환경에서 필수적이며, 이를 위한 핵심 프로세스 중 하나가 ETL입니다. ETL은 Extract(추출), Transform(변환), Load(로드)의 약자로, 데이터를 다양한 소스에서 추출하여 원하는 형태로 변환한 후 최종적으로 데이터 웨어하우스에 저장하는 과정을 말합니다. 1. Extract (추출) 데이터 소스 관계형 데이터베이스: MySQL, PostgreSQL, Oracle 등 비관계형 데이터베이스: MongoDB, Cassandra 등 APIs: RESTful 서비스, 소셜 미디어 플랫폼 등 파일 시스템: CSV, JSON, XML 파일 등 추출 기술 SQL 쿼리: 관계형 데이터베이스에서 데이터를 추출합니다. API 호출: REST A..
Mac에서 한글 키보드로 항상 백틱(`) 입력하는 방법 Mac에서 한글 키보드로 항상 백틱(`) 입력하는 방법 맥북 사용자라면 한글 입력 상태에서 `키 대신 ₩가 입력되는 문제에 직면해 본 적이 있을 겁니다. 맥북 키보드에는 별도의 백틱(`) 키가 없으며, \₩ 키를 통해 입력을 해야 하기 때문인데, 이 때 한글 입력 상태와 영어 입력 상태에 따라 입력되는 기호가 달라집니다. 이 글에서는 한글 입력 상태에서도 백틱(`)이 입력되도록 설정하는 두 가지 방법을 소개합니다. Mac의 DefaultKeyBindings로 설정하기 Mac OS는 사용자가 키보드 바인딩을 커스텀할 수 있게 하는 Cocoa’s text system을 제공합니다. 이 시스템을 이용해 한글 입력 상태에서도 백틱(`)을 사용할 수 있도록 설정할 수 있습니다. 설정 과정 ~/Library/Key..
Keepalived를 활용한 NGINX 서버 이중화 구성 Keepalived를 활용한 NGINX 서버 이중화 구성 이 블로그 글에서는 Keepalived를 사용하여 NGINX 서버의 이중화 구성을 설정하는 방법에 대해 설명하겠습니다. 이중화 구성은 웹 서비스의 고가용성을 보장하는 데 중요합니다. Keepalived는 Linux 환경에서 가상 IP를 통해 이러한 고가용성을 구현하는 데 사용됩니다. 필요 조건 두 대의 Linux 서버 (여기서는 하나는 Master, 다른 하나는 Backup 서버로 지칭) 각 서버에 설치된 NGINX Keepalived 설치 가능성 구성 과정 Step 1: Keepalived 설치 먼저, Master와 Backup 서버 모두에 Keepalived를 설치합니다. Debian/Ubuntu 기반 시스템: sudo apt-get insta..
퀀트 투자의 다양한 전략 퀀트 투자: 다양한 접근 방식 가치투자(Value Investing) 가치투자는 주식을 그것이 대표하는 회사의 실질적 가치에 기반하여 평가하는 방법입니다. 이 접근 방식에서는 주로 재무제표 분석, 산업 분석, 경영진 평가 등을 통해 내재가치를 평가하고, 시장 가격이 내재가치에 미치지 못할 때 투자합니다. 특징: 장기적인 관점, 안정적인 수익 추구 중요 지표: P/E 비율(주가수익비율), P/B 비율(주가순자산비율), 배당수익률 등 퀀트 적용: 내재가치와 시장 가격의 차이를 정량적으로 분석하여 투자 기회 발굴 가치투자의 예시 버크셔 해서웨이: 워렌 버핏이 이끄는 회사로, 가치투자의 대표적인 사례입니다. 장기적인 가치가 있다고 판단되는 기업에 투자합니다. 벤저민 그레이엄의 전략: '현명한 투자자'의 저자로 ..
파이썬에서 딕셔너리 삽입 순서에 의존할 때 주의사항 파이썬에서 딕셔너리 삽입 순서에 의존할 때 주의사항 파이썬 3.7부터 딕셔너리는 삽입 순서를 보장합니다. 이는 많은 상황에서 유용하지만, 삽입 순서에 의존하는 프로그래밍을 할 때는 몇 가지 주의사항을 고려해야 합니다. 딕셔너리 삽입 순서 보장 파이썬 3.7 이전에는 딕셔너리의 순서가 무작위로 보였으나, 3.7 이후부터는 아이템을 추가한 순서대로 순회합니다. 예제: 딕셔너리 순회 my_dict = {'banana': 3, 'apple': 4, 'cherry': 5} for key in my_dict: print(key, my_dict[key]) 실행 결과: banana 3 apple 4 cherry 5 순서 의존성의 위험성 딕셔너리의 순서 의존성에 너무 기대면, 파이썬의 버전이나 다른 데이터 구조로의 전환..
파이썬에서 key 파라미터를 활용한 정렬 파이썬에서 key 파라미터를 활용한 정렬 파이썬의 정렬 함수 **sorted()**와 리스트의 .sort() 메소드는 key 파라미터를 지원합니다. 이를 활용하면 복잡한 기준으로 객체를 정렬할 수 있습니다. 이 글에서는 key 파라미터 사용법과 여러 예제를 통해 이해를 돕겠습니다. 기본 사용법 key 파라미터는 정렬 기준을 제공하는 함수를 값으로 받습니다. 이 함수는 정렬하려는 각 요소에 대해 호출되며, 요소를 비교하는 데 사용될 값을 반환합니다. 예제: 문자열 길이로 정렬 words = ["banana", "pie", "Washington", "book"] sorted_words = sorted(words, key=len) print(sorted_words) 실행 결과: ['pie', 'book', '..
파이썬에서 언패킹을 활용한 나머지 요소 처리 파이썬에서 언패킹을 활용한 나머지 요소 처리 파이썬은 리스트, 튜플 등의 시퀀스에서 한 번에 여러 요소를 변수에 할당할 수 있는 강력한 언패킹(unpacking) 기능을 제공합니다. 특히, * 연산자를 사용하면 시퀀스의 일부만 명시적으로 언패킹하고 나머지 모든 요소를 한 번에 다른 변수에 할당할 수 있습니다. 이 방법은 코드를 더 간결하고 읽기 쉽게 만듭니다. 나머지 요소 언패킹하기 언패킹을 사용하면 한 개 이상의 변수에 시퀀스의 일부를 할당하고, 나머지 요소를 다른 변수에 할당할 수 있습니다. 예제: 나머지 요소 언패킹 # 나머지 요소 언패킹 numbers = [1, 2, 3, 4, 5, 6] first, *middle, last = numbers print(f"첫 번째 요소: {first}") pri..
파이썬에서 스트라이드와 슬라이스 함께 사용할 때 주의사항 파이썬에서 스트라이드와 슬라이스 함께 사용할 때 주의사항 파이썬에서 시퀀스(리스트, 문자열 등)의 일부를 추출하는 기능은 매우 유용합니다. 그러나 스트라이드(간격 지정)와 슬라이스(범위 지정)를 한 식에 함께 사용할 때는 주의가 필요합니다. 복잡성을 증가시키고 코드의 가독성을 떨어뜨릴 수 있기 때문입니다. 예제: 스트라이드와 슬라이스 함께 사용 # 0부터 10까지의 숫자 리스트 numbers = list(range(11)) # 스트라이드와 슬라이스 함께 사용 subset = numbers[1:10:2] print(subset) 실행 결과: [1, 3, 5, 7, 9] 이 예제는 0부터 10까지의 숫자 중, 1부터 시작해 10까지 2의 간격으로 숫자를 추출하는 예제입니다. 코드 자체는 정확한 결과를 반환하..