【问题标题】:Using Solr to Query HBase使用 Solr 查询 HBase
【发布时间】:2013-02-07 19:52:01
【问题描述】:

我有一个数据仓库问题,需要查询一个大型数据集。为了这个例子,假设一个典型的州会有 3000 万用户,每个用户都有活动统计信息。理想情况下,我可以购买数据仓库工具(Vertica、Infobright 等),但这不在卡片或预算之内。

现在我正在考虑使用 Solr 来查询 HBase。虽然我相信 HBase 可以扩展以满足需求,但我担心 Solr。它作为搜索引擎进行了优化,即结果的第一页在最后一页之前返回,并且不支持诸如数据库游标之类的东西。到目前为止的测试表明,从 Solr 获得大量结果集的速度比我希望的要慢。例如,比较在 Infobright 社区版中检索一半可用用户(最终返回 500 mb 数据)的查询在一分钟内完成,而 Solr 则需要 12 分钟。

除了 Solr 之外,还有什么更适合查询这些数据的吗?是否有任何有助于批量数据输入和输出的优化?

【问题讨论】:

  • 您在设置中需要 Solr 做什么?是否需要将 HBase 中的所有数据复制到 Solr 中?
  • 很多这些数据是文本,我希望 Solr 可以用于强大的查询语言
  • Solr 的速度很大程度上取决于您存储数据的方式(即存储与索引)。它更多地用于“人类”查询。您可能想考虑直接使用以下方式访问 HBase:community.jaspersoft.com/wiki/jaspersoft-hbase-query-language
  • 像 Jaspersoft 查询语言这样的东西可能是一个很好的解决方案。 BSD/MIT/Apache 许可证有什么类似的吗?

标签: solr hbase data-warehouse


【解决方案1】:

我知道这有点晚了,但是......

根据您的搜索要求,Solr 可能是一个不错的选择。请记住,您很可能不需要索引 HBase 中的所有内容。您可以选择某些领域吗?部分文字?如果您已经将这些内容存储在 HBase 中,那么您肯定不需要将这些内容存储在 Solr 中。

Solr 是一个出色的二级索引系统,可以放在 HBase 之上,如果您需要,Solr 还具有一些出色的文本分析功能。

您还应该看看 Solr 的主要竞争对手之一 ElasticSearch。

【讨论】:

    【解决方案2】:

    看看SolBaseLily - 两个结合 Solr 和 HBase 后端的实现

    【讨论】:

      猜你喜欢
      • 2016-01-12
      • 1970-01-01
      • 1970-01-01
      • 2017-03-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多