对于多达200列的行的交互式查询,最好的大数据解决方案是什么?

jgwigjjp  于 2021-06-03  发布在  Hadoop
关注(0)|答案(2)|浏览(268)

我们有一个简单的表格如下:

------------------------------------------------------------------------
|   Name   | Attribute1 | Attribute2 | Attribute3 | ... | Attribute200 |
------------------------------------------------------------------------
| Name1    | Value1     | Value2     | null       | ... | Value3       |
| Name2    | null       | Value4     | null       | ... | Value5       |
| Name3    | Value6     | null       | Value7     | ... | null         |
| ...                                                                  |
------------------------------------------------------------------------

但可能有多达数亿行/名称。数据将每隔一小时左右填充一次。
其目标是在几秒钟内获得对数据进行交互式查询的结果。
大多数查询如下所示:

select count(*) from table
where Attribute1 = Value1 and Attribute3 = Value3 and Attribute113 = Value113;

where子句包含任意数量的属性名-值对。
我对大数据还比较陌生,我想知道在数据存储(mysql、hbase、cassandra等)和处理引擎(hadoop、drill、storm等)方面最好的选择是什么。

gupuwyp2

gupuwyp21#

playormforcassandra提供了对sql的良好支持,包括连接。阅读更多信息http://buffalosw.com/wiki/sjql-support/ 有关示例,请参见http://buffalosw.com/wiki/command-line-tool/

smdnsysy

smdnsysy2#

像vertica(封闭源代码)或monetdb(开放源代码-但我没有使用它)这样的列式数据库可以有效地处理您提到的查询。在50000英尺视图中,这样做的原因是它们分别存储每一列,因此在需要查询数据时不会读取任何不需要的列—对于您的示例,将读取3个属性,而不会读取其他197个属性

相关问题