Kudu는 Apache Hadoop 플랫폼 용으로 개발 된 컬럼 스토리지 관리자입니다. Kudu는 Hadoop 에코 시스템 애플리케이션의 공통된 기술적 속성을 공유합니다. 상용 하드웨어에서 실행되고 수평 적으로 확장 가능하며 고 가용성 운영을 지원합니다.
Kudu의 디자인은이를 차별화합니다. Kudu의 이점 중 일부는 다음과 같습니다.
- OLAP 워크로드의 빠른 처리.
- MapReduce, Spark 및 기타 Hadoop 에코 시스템 구성 요소와의 통합.
- Apache Impala와 긴밀하게 통합되어 Apache Parquet과 함께 HDFS를 사용하는 것보다 좋고 변경 가능한 대안이됩니다.
- 강력하지만 유연한 일관성 모델을 통해 엄격한 직렬화 가능 일관성 옵션을 포함하여 요청별로 일관성 요구 사항을 선택할 수 있습니다.
- 순차 및 무작위 워크로드를 동시에 실행하기위한 강력한 성능.
- 관리 및 관리가 쉽습니다.
- 고 가용성. 태블릿 서버 및 마스터 는 총 복제본 수의 절반 이상을 사용할 수있는 한 태블릿을 읽기 및 쓰기에 사용할 수 있도록 보장하는 Raft 합의 알고리즘을 사용합니다 . 예를 들어 복제본 3 개 중 2 개 또는 복제본 5 개 중 3 개를 사용할 수있는 경우 태블릿을 사용할 수 있습니다.
- 리더 태블릿이 실패한 경우에도 읽기 전용 팔로워 태블릿에서 읽기를 서비스 할 수 있습니다.
- 구조화 된 데이터 모델.
이러한 모든 속성을 결합함으로써 Kudu는 현재 세대의 Hadoop 스토리지 기술에서 구현하기 어렵거나 불가능한 애플리케이션 제품군에 대한 지원을 목표로합니다. Kudu가 훌륭한 솔루션 인 애플리케이션의 몇 가지 예는 다음과 같습니다.
- 최종 사용자가 새로 도착한 데이터를 즉시 사용할 수 있어야하는보고 애플리케이션
- 다음을 동시에 지원해야하는 시계열 애플리케이션 :
- 많은 양의 기록 데이터에 대한 쿼리
- 매우 빠르게 반환해야하는 개별 항목에 대한 세분화 된 쿼리
- 예측 모델을 사용하여 모든 기록 데이터를 기반으로 예측 모델을 주기적으로 새로 고쳐 실시간 결정을 내리는 애플리케이션
이러한 시나리오 및 기타 시나리오에 대한 자세한 내용은 예제 사용 사례를 참조 하십시오 .
Must-Impala 통합 기능
CREATE/ALTER/DROP TABLE
Impala는 Kudu를 지속성 레이어로 사용하여 테이블 생성, 변경 및 삭제를 지원합니다. 이 테이블은 Impala의 다른 테이블과 동일한 내부 / 외부 접근 방식을 따르므로 유연한 데이터 수집 및 쿼리가 가능합니다.
INSERT
지속성을 위해 HDFS 또는 HBase를 사용하는 것과 같은 다른 Impala 테이블과 동일한 구문을 사용하여 Impala의 Kudu 테이블에 데이터를 삽입 할 수 있습니다.
UPDATE / DELETE
Impala는 Kudu 테이블의 기존 데이터를 행 단위로 또는 배치로 수정하기 위해 UPDATE및 DELETESQL 명령을 지원합니다 . SQL 명령의 구문은 기존 표준과 최대한 호환되도록 선택됩니다. 단순 DELETE 또는 UPDATE명령 외에도 FROM하위 쿼리 의 절을 사용하여 복잡한 조인을 지정할 수 있습니다 .
유연한 파티셔닝
Hive의 테이블 분할과 유사하게 Kudu를 사용하면 쓰기와 쿼리를 클러스터 전체에 균등하게 분산하기 위해 해시 또는 범위별로 테이블을 미리 정의 된 수의 태블릿으로 동적으로 사전 분할 할 수 있습니다. 임의의 수의 기본 키 열, 임의의 수의 해시 및 선택적 분할 행 목록으로 분할 할 수 있습니다. 스키마 디자인을 참조하십시오 .
병렬 스캔
최신 하드웨어에서 가능한 최고의 성능을 달성하기 위해 Impala에서 사용하는 Kudu 클라이언트는 여러 태블릿에서 스캔을 병렬화합니다.
고효율 쿼리
가능한 경우 Impala는 술어 평가를 Kudu로 푸시하여 술어가 데이터에 최대한 가깝게 평가되도록합니다. 쿼리 성능은 많은 워크로드에서 Parquet와 비슷합니다.
Impala를 사용하여 Kudu에 저장된 데이터를 쿼리하는 방법에 대한 자세한 내용은 Impala 설명서를 참조하십시오.
'기술_Kudu' 카테고리의 다른 글
Ubuntu 또는 Debian (0) | 2022.07.05 |
---|---|
Apache Must 설치 (0) | 2022.07.05 |
사용 사례 예 (0) | 2022.07.05 |
개념 및 용어 (0) | 2022.07.05 |
Kibana에서 모니터링 문제 해결 (0) | 2022.07.04 |