DataBase/Vertica 5

[Vertica]K-safety

K-safety는 DB 클러스터의 내결함성 측정 K는 클러스터에 존재하는 projection segmentation의 복사본 수를 표현 장애가 발생한 노드에 대해 다른 노드를 대신할 수 있게 하여 DB가 계속 실행되며 데이터 무결성을 보장 (Node개수/2)+1까지 살아있어야 복구 가능 인접한 Node 모두 죽으면 Vertica 재실행 필요 K=0 : Node 1개 or 2개, HA 구성 불가 K=1 : Node 3개 이상, HA 구성 가능 K=2 : Node 5개 이상, HA 구성 가능

DataBase/Vertica 2023.08.24

[Vertica]Projection Segmentation & Replication & Local Join

Segmentation(분산) Data를 클러스터 노드 전체에 고르게 분산 각 노드별로 데이터를 고르게 가지고 있어 쿼리 실행시 workload를 여러 노드로 분산가능 Replication(복제) 작은 테이블에서 주로 사용하며 Join시 유리 각 노드에 data를 저장하여 join이 local에서 일어나 조인 성능을 높일수 있음 한 node가 중단되도 다른 node에 동일 데이터 존재하여 서비스 지속 가능 Local Join 밑의 projection간의 join은 각 노드에서 로컬로 수행하여 노드의 데이터 반환

DataBase/Vertica 2023.08.24

[Vertica]Projection 특징

Projection이란? Vertica table은 논리적인 구조로만 존재하고 데이터를 저장하는 것은 Projection이라는 물리적인 구조로 저장된다. 실제 Table Data가 저장되는 Object(물리적 구조) Table당 복수개의 Projection 생성 가능 전체 컬럼을 가지는 Projection인 super projection은 반드시 한개 존재하며 마지막 super projection은 삭제 불가능 Table의 칼럼을 일부만 가지는 projection도 생성 가능 Projection특징 Table의 projection이 많아질수록 DML의 성능 저하 가능성 높음 모든 Node Data Update하여 적재 속도 영향, 디스크 공간 비효율적 사용 PK가 없으면 데이터 Type 작은 순으로 정렬..

DataBase/Vertica 2023.08.24

[Vertica]Vertica Architecture&특징

Vertica Architecture 대용량 데이터 분석위한 column기반의 RDBMS Linux기반 Table은 Logical상에만 존재 Physical에는 Projection 형태로 존재 Vertica에서 Table = Anchor Table Vertica 특징 Columnar Orientation row 단위로 저장하는 DB는 데이터가 Table에 저장 Vertica는 데이터를 Column단위로 저장/관리 Vertica는 쿼리 수행시 필요한 칼럼만 읽어 디스크I/O 감소하여 쿼리 성능과 응답속도가 빠름 row 단위 DB는 쿼리 수행시 전체 칼럼을 읽어 수행 다수의 칼럼을 조회하는 상황에는 작업비용이 커질 가능성도 존재 Column기반으로 저장하여 Index 불필요 모든 Column 개별적으로 다뤄..

DataBase/Vertica 2023.08.24