본문 바로가기
DB 인사이드 | PostgreSQL 16 Release - New Feature (3) 이번 문서에서는 PostgreSQL 16 Release New Feature 중 Replication에 대한 내용을 다룹니다. Logical Replication From Standby Server PostgreSQL 15 버전까지는 Primary Server에서만 Logical Replication의 게시(Publication)을 구성할 수 있었습니다. Replication이 다중으로 구성되어 있다면 그 만큼 Primary Server의 부하도 증가합니다. PostgreSQL 16 버전부터는 Standby Server에서 게시(Publication)을 구성할 수 있습니다. 이 기능을 통해 Primary Server의 Replication 부하를 감소 시킬 수 있습니다. 📢 Primary → Physic.. 2023. 12. 27.
궁금하면 드루와요 | Druid Tiering Part.4 Druid Tiering: 데이터가 조회되는 빈도 기준으로 데이터를 구분 Part.1 Apache Druid란(링크) Part.2 Druid Operator: 드루이드 오퍼레이터 도입으로 드루이드 설치부터 관리까지의 과정 개선 (링크) Part.3 Druid Tuning: 제한된 자원속에서 카프카 스트림으로부터 데이터 수집하는 기능(성능)의 최적화(링크) Part.4 Druid Tiering: 데이터가 조회되는 빈도 기준으로 데이터를 구분 Part.5 Druid without Middle Manager (MM less): k8s 리소스(파드)를 사용한 드루이드 태스크 관리 개선 이번 글에서는 Apache Druid의 티어링 시스템과 필요성을 알아보고, Druid에서 데이터 티어링을 설정하는 .. 2023. 12. 27.
Chapter 4-5. AutoEncoder 오토인코더란? 오토인코더는 데이터의 압축을 통해 특성을 학습하는 비지도 방법의 인공 신경망이다. 오토 인코더의 목적은 고차원 데이터를 저차원으로 압축하여 데이터의 중요한 특성을 찾는 것이다. 오토인코더는 3가지 부분으로 이루어진다. 먼저, 인코더는 입력 데이터를 작은 차원으로 압축하는 부분이다. 이어지는 바틀넥 부분은 압축된 정보를 담고 있는 영역으로 오토인코더 알고리즘의 핵심에 해당한다. 이 부분을 잠재(latent) 영역, 혹은 코딩(coding) 영역이라고도 부른다. 마지막 디코더 부분은 압축되었던 데이터를 다시 입력형태와 동일하도록 변형하는 부분이다. 신경망의 핵심인 바틀넥 부분에 대해 조금 더 이야기하겠다. 바틀넥은 통과하는 정보의 양을 제한하기 위해 존재한다. 아키텍처를 보면 바틀넥의 크기가 .. 2023. 12. 27.
DB 인사이드 | PostgreSQL 16 Release - New Feature (2) 이번 문서에서는 앞서 나열된 PostgreSQL 16 Release의 주요 변경내용 중 일부를 테스트한 내용을 기술합니다. [성능 개선] FULL OUTER JOIN 및 RIGHT OUTER JOIN의 병렬 처리 PostgreSQL 16 버전부터 FULL OUTER JOIN 및 RIGHT OUTER JOIN의 병렬 처리를 지원함에 따라 Query Planner가 기존 버전 보다 더 효율적인 실행계획을 수립할 수 있습니다. 📢 병렬 처리는 enable_parallel_hash 파라미터로 제어할 수 있습니다. -- PostgreSQL 15 버전 EXPLAIN (COSTS OFF) SELECT COUNT(*) FROM repltab a FULL OUTER JOIN repltab b USING (c1); QUE.. 2023. 11. 30.
DB 인사이드 | PostgreSQL 16 Release - New Feature (1) 2023년 9월 14일 PostgreSQL Global Development Group은 최신 버전의 PostgreSQL 16을 출시하였습니다. PostgreSQL 16의 주요 기능은 아래와 같습니다. 📢 PostgreSQL 릴리즈 현황은 DB 인사이드 | PostgreSQL Setup - Version & Utility에서 확인할 수 있습니다. 성능개선 새로운 Query Planner 최적화로 PostgreSQL 기능의 성능 향상 FULL OUTER JOIN 및 RIGHT OUTER JOIN의 병렬 처리 가능 집계 함수(ex. string_agg, array_agg) 사용 시 DISTINCT 또는 ORDER BY와 함께 사용할 경우, 쿼리에 대한 더 최적화된 실행 계획 생성 enable_presorte.. 2023. 11. 30.
궁금하면 드루와요 | Druid Tuning Part.3 Druid Tuning: 제한된 자원속에서 카프카 스트림으로부터 데이터 수집하는 기능(성능)의 최적화 Part.1 Apache Druid란 (링크) Part.2 Druid Operator: 드루이드 오퍼레이터 도입으로 드루이드 설치부터 관리까지의 과정 개선 (링크) Part.3 Druid Tuning: 제한된 자원속에서 카프카 스트림으로부터 데이터 수집하는 기능(성능)의 최적화 Part.4 Druid Tiering: 데이터가 조회되는 빈도 기준으로 데이터를 구분 Part.5 Druid without Middle Manager (MM less): k8s 리소스(파드)를 사용한 드루이드 태스크 관리 개선 Kafka로부터 데이터 수집 후 데이터 처리 방법 드루이드에서는 스트리밍 데이터와 배치성 데.. 2023. 11. 30.
Chapter 4-4. Seq2Seq Seq2Seq란? Seq2Seq, 즉 Sequence-to-Sequence는 인코더-디코더 형태의 구조로 이루어져 있어 sequence 형태의 데이터를 처리하는 모델이다. 인코더 : 입력 시퀀스로부터 정보를 압축하여 고정된 크기의 문맥 벡터로 변환하는 역할 디코더 : 인코더가 전달한 문맥 벡터를 기반으로 출력 시퀀스를 순차적으로 생성하는 역할 그래서 Seq2Seq는 기존의 단순히 LSTM, GRU로만 구성된 모델들에 비해 sequence 데이터를 처리하는 데에 있어 대부분 더 좋은 성능을 발휘하게 된다. Seq2Seq 구조의 종류 Seq2Seq의 구조는 모델 각각의 입 / 출력 형태에 따라 다양한 종류로 나뉘게 된다. one-to-many : vector 형태의 데이터를 입력하여 sequence 형태의 .. 2023. 11. 30.
궁금하면 드루와요 | Druid Operator Part.2 Druid Operator: 드루이드 오퍼레이터 도입으로 드루이드 설치부터 관리까지의 과정 개선 Part.1 Apache Druid란 (링크) Part.2 Druid Operator: 드루이드 오퍼레이터 도입으로 드루이드 설치부터 관리까지의 과정 개선 Part.3 Druid Tuning: 제한된 자원속에서 카프카 스트림으로부터 데이터 수집하는 기능(성능)의 최적화 Part.4 Druid Tiering: 데이터가 조회되는 빈도 기준으로 데이터를 구분 Part.5 Druid without Middle Manager (MM less): k8s 리소스(파드)를 사용한 드루이드 태스크 관리 개선 Druid Operator란 Druid Operator는 쿠버네티스에서 실행 중인 드루이드 클러스터를 관리.. 2023. 10. 26.
Chapter 4-3. RNN Chapter 4-3. RNN RNN 우리가 다루는 데이터에는 서로 독립적이지 않고 연관되어 있는 경우가 많다. 예를 들어, 날씨 정보에서 현재 비가 오고 있다면 5분 후에 날씨도 비가 올 것이라고 예측할 수 있다. 또한 이미지 데이터나 문장처럼 데이터의 위치와 순서가 중요한 데이터도 있다. 예를 들어, 이미지 데이터에서 픽셀 단위로 이루어진 고양이 이미지를 순서와 상관없이 혼합해버리면 해당 이미지를 고양이로 이해하기 어려울 것이다. 추가로 문장 데이터를 예로 들면 “나는 구글에서 일한다”라는 문장과 “나는 일할 때 구글을 사용한다”의 문장에서 구글이란 단어는 문자는 같지만 문맥상 다른 의미를 갖는다. 이처럼 시간의 영향을 받거나 위치나 순서가 중요한 데이터를 일반적으로 순차 데이터(sequential .. 2023. 10. 26.