Kudu

[kudu] 1편 - write, read, partition

Sencia 2021. 3. 30. 18:10
반응형

Write 

단일 tablet으로 wirte 발송 
블룸 필터 검사(bloom filter checking)를 통해 kudu는 디스크에서 일부 검색을 피할 수 있습니다.
PK를 사용하면 주어진 키에 대한 확실한 검색이 가능합니다.

  • inserts: key 존재하지 않음 
  • updates/deletes: key 존재 
  • upsert: key가 존재할수도 존재하지 않을 수도 있음 

* 참고 1) 세미나 자료 발췌 

 

 

Read 

연관없는 tablets들은 넘기고 연관있는 각 tablet을 PK 이용하여 데이터를 읽는다. 
데이터를 통해 반복하는 동안 deltas를 읽는다. 

* 참고 1) 세미나 자료 발췌 

 

 


Partitioning

  • 일반적인 쿼리의 경우 "pruing"를 활성화하여 전체 태블릿을 건너 뛰고 I / O를 줄입니다.
  • write 작업을 많은 partition으로 분산화 
  • 각 tablet의 replica 크기를 작게 유지 

1) Range partitioning

* 참고 1) 세미나 자료 발췌 

특정 칼럼의 범위를 중심으로 파티셔닝
특정 칼럼 기준으로 데이터를 삭제할때 단건으로 삭제하는 것보다 파티션 drop 성능이 훨씬 좋다. 

 

2) Hash partitioning  

hash값에 따라 partition을 정하는 기법으로 전체 tablet server에 고르게 분포시키기 좋다. 

* 참고 1) 세미나 자료 발췌 

 

3) Range + Hash partitioning 

* 참고 1) 세미나 자료 발췌 

 

두 가지 파티셔닝의 장점을 취한 방법으로 모든 범위에 대해 안정적 

 

참고 

1) 2019년 클라우데라 웨비나 세션 중 "Apache kudu를 이용한 실시간 워크로드 최적화"

optimizing your realtime workfloads with kudu.pdf
3.37MB

 

 


 

후속편

sencia.tistory.com/45

 

[kudu] Schema, Compaction, Disk, Memory

Schema Primary Key의 역할 각 row를 고유하게 식별   PK를 이용한 쿼리 검색 지원 index - tablet의 길이를 줄여줌(height) - near-primary-key 순서로 insert 가능 병합 압축(Merge Compaction) tablet에서..

sencia.tistory.com

 

sencia.tistory.com/46

 

[kudu] 3편 - Scaling cluster

클러스터 memory 충분한지 어떻게 알 수 있을까? 1) 진행중인 워크로드 기반하여 메모리 사용량 추론 Scans 대시보드 https://tserver:8050/scans Transaction 대시보드 https://tserver:8050/transactions 클라우..

sencia.tistory.com

 

반응형

'Kudu' 카테고리의 다른 글

[Kudu] Apache Ranger로 권한 제어  (0) 2021.04.13
[kudu] 3편 - Scaling cluster  (0) 2021.04.06
[kudu] 2편 - Schema, Compaction, Disk, Memory  (0) 2021.04.06
[기초] Kudu 기본 개념  (0) 2021.03.30
[사례] kudu X 카카오뱅크  (0) 2021.03.29