본문 바로가기

기타9

[Debezium] 데베지움 오픈소스에 기여하기 얼마 전 카프카 CDC인 데베지움의 오픈소스 기여를 했다. 평소 관심있었던 분야였기에 공식문서를 읽다가 documentation에서 수정할 부분이 있어서 처음으로 기여하게 되었고 데베지움 기여에 있어서의 과정에 대해 작성해보려고 한다. 데베지움 몽고디비 커넥터에 대한 문서를 읽다가 수정해야할 부분이 있으면 우상단에 'Edit this Page' 를 클릭하면 문서 정보를 담고있는 깃헙 레포로 리디렉션된다. 모든 오픈소스는 기본적으로 기여를 하려면 해당 레포를 포크를 통해 본인 레포로 받아와야 한다.  수정해야할 것이 하나면 깃헙에서 바로 수정하고 'Commit Changes'로 수정하면 되지만, 여러개면 IDE에서 브랜치를 하나 만들어서 작업하는 것을 추천한다.이 부분은 오픈소스마다 서로 셩격이 다른데 데.. 2024. 5. 5.
[Database] JDBC / ODBC ? 배경 JDBC? ODBC? 공통점 차이점 배경 AWS Redshift 커넥터 df_user_session_channel = spark.read \ .format("jdbc") \ .option("driver", "com.amazon.redshift.jdbc42.Driver") \ .option("url", "jdbc:redshift://HOST:PORT/DB?user=ID&password=PASSWORD") \ .option("dbtable", "raw_data.user_session_channel") \ .load() 세션채널 읽어오는 과정중 Redshift를 JDBC드라이버로 연결하면서 의문이 생겼었다. 그리고, SparkSQL 을 사용하면서 파일로 저장하는 것보다 Spark 테이블로 처리하는 것의 .. 2024. 2. 16.
SQL Window함수 - 그룹 내 행 순서 관련 함수, 순위함수 학습 주제 🗒️ SQL Window 함수 Window 함수의 종류 구분 함수 반환 유형 (Return Type) 순위 함수 RANK, DENSE_RANK, ROW_NUMBER bigint 그룹 내 행 순서 함수 FIRST_VALUE, LAST_VALUE, LAG, LEAD same type as value 그룹 내 비율 함수 RATIO_TO_REPROT, PERCENT_RANK, CUME_DIST, NTILE percent_rank, cume_dist : double precision ntile : integer 일반 집계 함수 SUM, MAX, MIN, AVG, COUNT 순위함수 ROW_NUMBER 그룹 내 행 순서 관련 함수 FIRST_VALUE, LAST_VALUE 주요 메모 사항 📔 (1) 순위.. 2023. 9. 5.
레코드 가져오는 SQL 함수 fetchone? fetchall? SQL fetchone 함수 fetchone 함수 개념 예제 주요 메모 사항 📔 SQL fetchone 개념 PostgreSQL 데이터베이스와 같은 데이터베이스에서 SQL 쿼리를 실행한 결과로 반환된 레코드 중 첫 번째 레코드를 가져오는 메서드나 함수입니다. 주로 파이썬과 같은 프로그래밍 언어에서 데이터베이스 연동을 할 때 사용됩니다. 예제 # 커서 생성 cursor = conn.cursor() # 쿼리 실행 query = "SELECT 컬럼1, 컬럼2 FROM 테이블이름 WHERE 조건;" cursor.execute(query) # 데이터 가져오기 row = cursor.fetchone() if row: 컬럼1값 = row[0] 컬럼2값 = row[1] print("컬럼1 값:", 컬럼1값) print.. 2023. 8. 30.
트랜색션 SQL (ACID 원칙) Transaction in SQL Transaction 개념 문법 주요 메모 사항 📔 Transaction 개념 트랜잭션이라 함은 하나의 작은 논리적인 작업단위를 나타낸 것이다. 데이터베이스의 데이터를 변경하거나 검색하는 과정에서 데이터의 일관성과 무결성을 유지하기 위해 필요한 기능 데이터를 주고받는 SQL에서도 당연하게 Transaction의 단위를 나타낼 수 있다. 문법 BEGIN; SELECT ~ FROM TABLE_NAME; DELETE FROM TABLE_NAME WHERE ~; COMMIT; BEGIN 과 COMMIT 까지 한 트랜잭션 블록단위로 묶인다. 종료할 때 COMMIT 이외에도 END를 사용할 수 있다. END는 트랜잭션을 종료하고 모든 작업을 롤백하는 데 사용되며, COMMIT은 트.. 2023. 8. 29.
Linux Daemon 프로세스 Linux Daemon Linux Daemon? Standalone Super Daemon 서버관리자가 고려해야하는 사항 주요 메모 사항 📔 Linux Daemon? 서버 백그라운드 프로세스 사용자의 요청을 기다리고 있다가 요청이 발생하면 적절히 대응하는 리스너이다. 시스템에서 네트워크를 통해 특정한 서비스를 제공하기 위해 특정 포트를 열어두고 연결요청이 오기를 기다리는것도 데몬이다. 리눅스에서 다른 클라이언트에 요청이 들어오면 자식 프로세스에 연결을 던지고 같은 포트에 대해서 연결을 기다린다 데몬을 실행하는 방법은 standalone, super daemon 두가지 방식이 있는데 빈번히 사용하는 데몬을 전자, 자주 사용하지 않다면 후자 방식으로 실행한다. Standalone 리눅스 httpd 웹서버 데.. 2023. 8. 24.
반응형