在DSE Search和DSE Analytics Spark之间拆分工作负载

时间:2015-08-17 18:54:15

标签: datastax-enterprise

我有两种用例 - 搜索和分析。我还有两种不同的方法来分类我的主键候选字段。

  1. 高基数字段的分区键,其中不同值的数量介于100,000和10,000,000之间,例如:
    • CUSTOMER_ID
    • EMPLOYEE_ID
    • IP_地址
    • MAC_ADDRESS
  2. 此处按行键查询通常会返回少量结果。辅助索引和水龙头是实用的,因为它们位于低基数字段 - 请参阅下面的#2。

    1. 低基数字段的分区键,其中唯一值的数量小于100,例如:
      • event_type - 例如“purchase”或“authenticated_OK”
      • 平台 - 类似5种类型的操作系统或50种类型的应用程序
      • metric_type - 类似于CPU_utilization
      • 协议 - 如http或ftp
      • SNMP MIB名称
      • 国家/地区代码,例如我们,ca,英国
      • 州,像de,ny
    2. 行键的典型查询会返回数百万条结果,可能会进行进一步的分析。 二级索引在这里不太实用,因为它们通常位于上述#1类的高基数字段中。

      我的问题:: 正在建模上面#1中的数据更适合DSE搜索;和 像#2这样的数据建模更适合DSE Analytics?

      由于

1 个答案:

答案 0 :(得分:0)

第一个用例,如果正确建模数据并且在适当大小的集群上,将无需任何额外的索引(没有二级索引或需要solr又名DSE搜索)来查询cassandra。

第二个用例,很难用所提供的信息知道;然而,它确实听起来像是一个适当的数据模型和适当大小的cassandra集群加上低基数字段上的二级索引的情况,可能是一个很好的选择。但是,它还不清楚您提供的信息对您的访问模式的确切含义。

我建议你阅读本文,它提供了关于seconday索引和cassandra的solr的一些很好的信息:When to use Cassandra vs. Solr in DSE?