在hdfs中实现不同的分布模型?

epggiuax  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(338)

据我从hadoop教程中了解,它取输入文件的总大小,然后将它们划分为块/块,然后将这些块复制到不同的节点上。但是我想根据下面给定的要求实现数据分布模型-
(a) 案例一:每个文件都被平等地划分到集群中的节点中——这样每个Map都可以访问表的这个分区。有可能吗?
(b) 情况二:每个文件在两个或多个节点中完全复制,但不是所有节点。以便每个Map访问每个节点上表的某些部分。有可能吗?

ttp71kqs

ttp71kqs1#

hdfs不存储表,它存储文件。更高级别的项目提供“关系表”,比如hive。hive允许您对存储在hdfs上的表进行分区,请参阅hive教程。
也就是说,您不应该将分区与集群中的节点数联系起来。节点来来去去,集群又长又缩。已分区的关系表按自然边界划分/存储桶,与集群大小无关。导入、导出和日常操作都在分区中扮演着一个角色(通常比集群大得多)。即使是单个表(文件)也可以很好地分布在集群的每个节点上。
如果您想调整mr作业以获得最佳分割大小/位置,有很多方法可以做到这一点。你还有很多东西要读,你优化得太早了。

相关问题