2016-11-21 13 views
0

저는 Cassandra와 같은 nosql 데이터베이스를 처음 사용하며 현재이 보조 인덱스와 sstable 보조 인덱스를 보았습니다. Cassandra에서 보조 색인을 사용하는 목적에 대해 혼란 스러울 때, 관계형 데이터베이스와 보조 색인이있는 Cassandra의 차이점은 무엇입니까? 어떤 쿼리가 수행 될 때 성능이 더 좋습니까? 카산드라에서Cassandra with SSTable 첨부 보조 인덱스와 관계형 데이터베이스

답변

1

:
경우 SASI를 사용해야합니다 : 당신이 검색 여러 기준이 필요하고 당신이

  • 하면 대부분의 행 1000 (100)를 필요로 득점/주문/그룹이 필요하지 않습니다

    • 귀하의 검색어에 대해
    • 당신은 항상 검색 할 행의 파티션 키를 알고 있습니다 (이것은 기본 보조 색인에도 적용됩니다)
    • 정적 열을 색인하려고합니다 당신은 SASI을 피해야한다

    (SASI는 인덱스 이후 수수료 전체 파티션이 없습니다) : 당신이 인덱스에 매우 넓은 파티션이

    • 을 SASI는 오프셋 파티션을 제공합니다. 비싼 선형 스캔은 여전히 ​​블록을 건너 뛰기위한 컬럼 인덱스 클러스터링의 도움없이 수행됩니다.
    • 초당 요구 사항과 같이 검색 대기 시간이 강한 SLA가 있습니다.
    • 분석 시나리오를 검색해야합니다 SASI를 함께 사용하지 않는 한 Apache Spark를 사용하지 않는 한 검색 엔진이 대기 시간에 대해 2 단위로 승리합니다. 검색 결과를 정렬하는 것이 중요합니다.

    SASI를 프로덕션 환경에서 사용해 보려면 SASI가 쓰기/플러시 처리량, 압축 처리량에 영향을 미칩니다 복구 및 스트리밍 작업. SASI 색인 파일이 SSTable 수명주기를 따르므로 꽤 기대됩니다.

    출처 : http://www.doanduyhai.com/blog/?p=2058

    RDBMS에서

    : 제한이 같은이 없습니다. 결과를 주문하고 집계 및 그룹화를 수행 할 수 있습니다.