0

我在这里运行一个小测试/ poc。

我需要每天将几百万行加载到数据库中。而且它不是日志文件数据,我有逗号分隔的行(列),它完全适合关系数据库。

加载后,我需要允许一个非常快速的搜索机制。稍微看了一下google对bigtable的实现以及围绕它的结构,我原本是想用hive和hbase集成的。Hive 因为它的查询能力。加载效果很好,比 RDBMS 性能更好。但是,查询瓶颈(最初是寻找 RDBMS 替代品的原因)也继续存在于 hive 中。

测试 hive 以进行查询并不是真正的出色性能。也许我需要寻找替代品..

还有别的吗?我可以放在 hbase 之上的任何其他工具/解决方案/库吗?甚至没有 hbase ?(我将 hbase 视为 RDBMS 的替代品,转向 dist 计算)

建议请...

4

4 回答 4

3

如果您想要通用搜索功能,您可能需要查看SolrElasticSearch等解决方案。如果您为需要的查询(关键设计)而不是一般搜索准备数据,HBase 会很好地工作。你也可以看看结合了 Solr 和 HBase的Lily

于 2011-11-18T14:14:15.870 回答
1

您遇到的问题是 hive 将其大部分查询作为本质上很慢的 mapreduce 程序运行。

如果您编写自己的程序来运行适当的扫描,然后自己将其分组,那么 hbase 可以非常快。如果您想要一种查询语言,尽管我目前还没有解决方案。

很难说更多,因为您对数据的描述以及您要在其上运行的查询类型非常通用。

于 2010-10-08T05:08:28.110 回答
1

将 MySQL 用于这么多行并不是不可想象的。您可以使用一些测试数据进行尝试,看看您是否可以侥幸逃脱。

于 2010-12-27T02:25:32.617 回答
0

您是否查看过 solr 或 lucene 类型的解决方案?它不是 SQL 解决方案,但查询语言对于某些类型的使用非常灵活,而且速度非常快。还有一些方法可以将它分布在服务器集群上以提高性能,扩展索引的大小或它可以处理的查询数量,或两者兼而有之。

于 2010-10-21T16:18:19.013 回答