问题标签 [distributed-filesystem]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3100 浏览

hadoop - CoreOS & HDFS - 在 Linux Containers/Docker 中运行分布式文件系统

我需要某种在 CoreOS 集群上运行的分布式文件系统。

因此,我想在 CoreOS 节点上运行 HDFS。这可能吗?

我可以看到 2 个选项;

  1. 扩展 CoreOS - 将 HDFS 直接安装到 CoreOS 上 - 不理想,因为它打破了 CoreOS 容器化的整个概念,并且意味着安装许多额外的组件
  2. 以某种方式在 CoreOS 上的 Docker 容器中运行 HDFS 并设置关联

选项 2 似乎是最好的方法,但是,有一些潜在的阻碍;

  • 如何可靠地将物理磁盘暴露给运行 HDFS 的 Docker 容器?
  • 您如何扩展容器关联性?
  • 名称节点等如何工作?

干杯。

0 投票
2 回答
1888 浏览

java - 未找到 Hadoop 映射器类

我使用 Apache Hadoop 1.2.1 开发了一个 map-reduce 程序。我使用 Eclipse IDE 进行了初始开发,以模拟 hadoop 分布式计算环境,所有输入和输出文件都来自我的本地文件系统。该程序将在 Eclipse 中毫无问题地执行。然后,我使用 Eclipse 创建了一个 JAR 文件,并尝试在我的一个集群的 hadoop 机器上运行它并收到错误:

这是我设置和运行 hadoop 作业的代码:

然后,我使用 eclipse 创建一个 jar,使用 File -> Export -> Runnable JAR file 创建要在集群上运行的 JAR 文件。

我用来运行作业的命令如下(KLSH.jar 是 JAR 文件的名称,/hadoopInstruction 是 args[0] 输入参数,imageFeature.Main/ 指定主类在哪里)

这会产生以下输出:

所以它出错了,因为它找不到映射器类。有“No job jar file set”的警告,但我感觉我在第一块代码中指定了job.setJarByClass,所以不知道为什么会抛出这个错误......

我也知道 KLSHMapper 类在 JAR 中,因为如果我运行以下命令:

我得到了很多输出,但这里是输出的一部分:

很明显,KLSHMapper 类在那里......我尝试修改我的 hadoop 类路径以包含 KLSH.jar 路径,我尝试将 KLSH.jar 复制到 DFS 并尝试使用该路径而不是路径我的本地文件系统,我还尝试使用 -libjars 说明符执行该作业。无论我尝试什么,hadoop 似乎都无法找到我的 Mapper 类。有人可以指出我做错了什么吗?我似乎无法从我在 Eclipse 中工作的代码跳转到使其在实际的 Hadoop 集群上工作。谢谢!

0 投票
1 回答
553 浏览

c++ - std::ifstream 在 mac osx 中访问网络文件

如何在 OSX 中打开网络共享文件?我尝试使用和不使用“cifs:”。还尝试了“192.168.xxx.xxx”但没有用。谢谢。

0 投票
1 回答
468 浏览

hdfs - NAS 与分布式文件系统

什么情况下我们应该优先于像 HDFS 这样的分布式文件系统?如何决定使用哪一个或任何其他类似的替代方案?

0 投票
2 回答
3227 浏览

java - 从 HDFS 读取属性文件

我正在尝试读取 HDFS 上的 Java 属性文件,如下所示:

但它似乎不起作用,我得到“找不到属性文件”。例外。如果我替换本地文件的路径,它可以正常工作并且我能够读取该文件。

是否可以使用 FileInputStream 读取 HDFS 文件?

谢谢!

0 投票
1 回答
2374 浏览

apache-spark - 您如何使用 spark 和 elasticsearch-hadoop 从/写入不同的 ElasticSearch 集群?

原标题:除了HDFS,spark还支持哪些DFS(推荐)?

我很高兴将 spark 和 elasticsearch(带有 elasticsearch-hadoop 驱动程序)与几个巨大的集群一起使用。

有时,我想将整个数据集群拉出来,处理每个文档,然后将它们全部放入不同的 Elasticsearch (ES) 集群中(是的,数据迁移也是如此)。

目前,没有办法将集群中的 ES 数据读取到 RDD 中,并使用 spark + elasticsearch-hadoop 将 RDD 写入另一个 RDD,因为这将涉及SparkContext从 RDD 交换。所以我想将 RDD 写入目标文件,然后再将它们读回具有不同SparkContexts 的 RDD。

然而,问题来了:然后我需要一个 DFS(分布式文件系统)来在我的整个 spark 集群中共享大文件。最流行的解决方案是 HDFS,但我会非常避免将 Hadoop 引入我的堆栈。spark支持的还有其他推荐的DFS吗?

下面更新

感谢@Daniel Darabos 在下面的回答,我现在可以使用以下 Scala 代码在不同的 ElasticSearch 集群中读写数据:

0 投票
1 回答
2518 浏览

java - hadoop DistributedFileSystem 线程安全吗?

我正在使用 hadoop 来编写我抓取的数据。

我有一个从多个线程调用的 spring 服务以将一些内容写入 HDFS。

我不确定 FileSystem 对象是否可以成为 WriteService 的成员,我不知道它是否是线程安全的。我正在使用 DistributedFileSystem 对象。

你知道它是否是线程安全的并且我可以将它用作我的服务的成员吗?

谢谢

0 投票
0 回答
551 浏览

filesystems - 如何调整 GlusterFS 性能?

我有 2 台具有以下规格的专用服务器: - E3 1270V3 CPU - 32GB RAM - 960GB SSD - 1Gbps 专用以太网网络。

使用本地驱动器,dd 测试通常在 600MB/s 范围内,非常好。

我最近通过在每台机器上安装 glusterd 和 glusterfs 客户端来设置一个 GlusterFS 复制集群。全局命名空间的 dd 测试结果下降到 50MB/s,每当我尝试运行需要高读/写性能的应用程序时,应用程序就会崩溃。

如何使用 2 台机器复制集群调整 GlusterFS 以获得更好的性能?

0 投票
0 回答
75 浏览

hadoop - 将块写入 HDFS 中的数据节点所涉及的系统调用

根据我对 HDFS 的理解,HDFS 是一个更高级别的文件系统,它抽象了具有巨大块大小(64 MB)的本地文件系统。当客户端想要将文件写入 HDFS 时,将根据复制因子形成管道。

然后 HDFSClient 会将文件缓存到块大小(例如 64 MB)并以 4 KB 数据包的形式将数据流式传输到管道中的第一个 DataNode,然后是剩余的数据节点。因为这些块是运行 HDFS 的本地文件系统的普通文件。

我想知道:

  1. 这些 4KB 的数据包是如何写入 DataNode 本地文件系统的呢?
  2. DataNode 恶魔为将其写入硬盘而进行的系统调用是什么?
0 投票
1 回答
150 浏览

linux - 虚拟文件系统是否位于分布式文件系统之上?

在 Linux 内核中,虚拟文件​​系统位于具体文件系统和设备文件之上,以提供统一的接口来访问位于其下方的文件系统。

分布式文件系统是位于每台计算机的虚拟文件系统之下还是之上?

分布式文件系统是在操作系统内核级别实现的,还是作为操作系统内核之上的软件实现的?

图层的总体情况如何?

谢谢。