분류 전체보기(81)
-
[AWS Redshift] FULL JOIN과 COALESCE
오늘은 full join과 coalesce를 같이 활용해보았는데 이것을 한번 정리해 보려고 합니다. 1. full join 두개의 테이블의 모든 공통 요소를 결합하는 join형태로서 둘중 하나라도 값을 가지고 있다면 병합됩니다.(합집합) 2. coalesce 주로 사용되는 목적은 NULL처리 입니다. NULL인경우 어떤값으로 변경하도록 하는데 많이 사용합니다. 그럼 이둘을 합쳐서 사용해보면 어떤 효과가 발생할까요?? SELECT COALESCE(dt.id, dt2.id) AS id, COALESCE(dt.create_date, dt2.create_date) AS create_date, (COALESCE(dt.driving_sec, 0) + COALESCE(dt2.cancel_driving_sec, 0))..
2024.03.08 -
[helm] helm chart를 사용하여 install한 apache superset Version Upgrade
이번에 회사에서 사용하는 Apache Superset의 버전을 업그레이드 하자는 내부적인 이야기를 하게되면서 해본 경험을 정리하게 됐습니다. 우선 현재 상황을 간략하게 목록화 해보자면 1. BI/운영 Dash Board로 사용하고 있는 Apache Superset의 현재 버전은 2.1 버전으로 Chart Version은 0.9.7 버전이다. 2. 인프라 이전을 준비하고 있고 인프라 이전을 할 때 Superset의 버전을 최신 Stable version으로 바꿔보자 만약 변경하게되면 발생하는 장단점은? 장점 1. apache Superset을 최신 Stable version으로 변경하면 pandas의 버전이 기존 1.x 에서 2.x로 변경되어 속도적 측면에서 강점이 생긴다. 2. 새로 생긴 차트를 활용할 ..
2024.03.02 -
[GPT]GPT API를 사용하여 간단한 쳇 시스템 만들어보기
최근들어서 GPT를 활용하여 할 수 있는 일들이 늘어나고 있습니다. 가령 내가 코드를 작성하더라도, 디버깅에 어려움을 겪고 있는경우에도, 작성한 쿼리가 정말 최적화가 돼 있는지 등 다양한 방면에서 개발에 도움을 주고 있다보니 문득 궁금해져서 API를 사용하여 어떻게 동작하는지 알아보고자 합니다. API에 대한 자세한 내용은 Open AI에서 제공하는 페이지를 확인하시기 바랍니다. 가령 API키 발급같은 것이요. https://platform.openai.com/signup 먼저 저는 Python 3.11버전을 사용했습니다. 1. Python Library install pip install --upgrade openai 2. 간단한 코드 작성 from openai import OpenAI import r..
2024.03.01 -
Linux - Base 64 encoding/decoding
K8s를 활용하다 보면 Secrets를 배포할 일이 생기는데 내부에 데이터를 Base64로 넣어줘야 합니다. ex) apiVersion: v1 kind: Secret metadata: name: aws-login type: Opaque data: id: QdasdqwdfQWEDASDVQU0ZasTsQ= passwd: aj123adsQADQWCASD123ASDDVRpa3lUQg== 이 base64 문자열은 간단하게 Linux 혹은 맥 위에서 제작이 가능합니다. # encoding echo aws-login-ids | base64 # decoding echo YXdzLWxvZ2luLWlkcwo= | base64 --decode 이상입니다.
2023.06.02 -
DataPipeline - Kafka Connector를 이용한 CDC Pipeline
우선 CDC 파이프라인이 무엇을 의미하는지 알아봅시다! Caht GPT를 활용해서 내용을 한번 적어보았습니다. CDC (Change Data Capture) 파이프라인은 데이터베이스 시스템에서 변경된 데이터를 실시간으로 감지하고 캡처하여 다른 시스템으로 전달하는 과정을 자동화하는 방법입니다. 1. 로그 모니터링: 데이터베이스 시스템의 로그를 모니터링하여 변경 사항을 감지합니다. 로그에는 데이터베이스에 수행된 삽입, 업데이트, 삭제 등의 작업이 기록됩니다. 2. 변경 사항 캡처: 모니터링된 로그에서 변경 사항을 식별하고 캡처합니다. 이 단계에서 변경된 데이터의 내용과 유형에 따라 필요한 처리가 수행될 수 있습니다. 3. 변경 데이터 저장: 캡처된 변경 데이터는 일시적으로 저장되거나, 대규모 시스템에서는 분..
2023.05.28 -
kafka - Debezium kafka Connector K8s에 설치 및 확인
오늘은 Kafka Connector 중 하나인 Debezium Kafka Connector를 한번 설치해보고 어디에다 써먹는지 알아보겠습니다. 우선 Kafka Connector는 크게 두종류로 나눕니다. 1. Kafka Source Connector Source 즉 원본 데이터가 있을때 해당 데이터를 kafka로 전송해 주는 역할을 합니다. ex) DB Souce Connector : DB의 변경사항을 Catch 하여 Kafka로 변경사항을 Message로 전송합니다. 2. Kafka Sync Connector Kafka에 있는 데이터를 어딘가에 전송하거나 실시간으로 가공하여 전송하는 기능을 합니다. ex) S3 Sync Connector : Kafka의 특정 Topic을 구독하여 메세지를 micro B..
2023.05.27