hdf5对于数据检索和数据存储的效率如何?

vlju58qv  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(488)

我想把一个500gb的键控表转储到hdf5中,然后检索与特定键匹配的行。
对于hdf5文件,像all-the-data-access这样的项使用整数“行”数,因此似乎我必须在hdf5之外实现一个“key-to-row-number-map”。
像hadoop或spark这样使用hdfs的分布式系统检索不是更高效吗?我应该使用分布式系统来实现map/hashfunction吗?

nvbavucw

nvbavucw1#

hdfs将数据保存在块中,然后根据数据格式,查询将一次读取块并解析记录。hdfs本身不会提供按键查找。
看看hbase。它将数据存储在hdfs中,并提供一个key->value接口来查找行:https://hbase.apache.org/

vwhgwdsa

vwhgwdsa2#

是的,使用hdfs可以更有效
但为了提高效率,最好的方法是使用hive over hdfs,因为map reduce不提供任何默认的按键分隔数据的方法。如果要按键分隔数据,则需要对其进行编码。
但是对于配置单元,您可以更高效地查询数据,因为配置单元提供了许多内置的查询命令,如ex-->separate by key、by value等。由于配置单元使用的是sql查询,因此使用起来也更容易。
有关查询hdfs的不同方法的更多详细信息,请参阅https://cwiki.apache.org/confluence/display/hive/languagemanual+udf
希望这能回答你的问题。

相关问题