使用hadoop处理来自外部驱动器的大数据,而不将其移动到hdfs

bjp0bcyl  于 2021-05-30  发布在  Hadoop
关注(0)|答案(3)|浏览(338)

我是hadoop的初学者,我有运行在250gblinux上的单节点hadoop。
我有一个外置硬盘,有超过1 tb的数据。
我的问题是如何使这些数据对hadoop可见而不将它们复制到hdfs中。
我试图把挂载的硬盘驱动器到datanode.dir,但我看不到文件。

fv2wmkja

fv2wmkja1#

如果hadoop客户机与连接到外部hd的客户机位于同一台计算机上,则可以使用localfilesystem访问数据。
例如,您可以运行:

hadoop fs -ls file://path/to/external/dir

上面的命令应该列出指定的本地绝对路径的内容。

6tr1vspr

6tr1vspr2#

上面给出的答案将显示hdfs中已有的内容。 "hadoop fs -ls" 命令用于查看hdfs中的内容。
由于hdfs是一个不同于您的个人计算机文件系统的文件系统,因此您无法使用查看您的本地计算机上当前的数据 "hadoop fs -ls file://path/to/external/directory" .
但是您可以在hadoop程序中访问外部硬盘的数据mapreduce作业中访问本地计算机数据的简单代码段可以在下面找到question:- reading 数据直接从本地机器Map到reduce作业

pprl5pva

pprl5pva3#

这是不可能的。hadoop强调“数据本地化”,这是hadoop区别于经典网格计算的一个关键设计因素。这也是hdfs和mapreduce一起部署在节点中的原因。
数据本地化在许多方面提高了计算速度。这是不可能的其他几个博兹更多的设计和性能的原因。我建议你研究一下hdfs的概念。。
希望这有帮助!

相关问题