问题标签 [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.
p2p - IPFS 文件未下载
我正在使用 ipfs 与其他用户共享文件,我上传它然后停止 ipfs 守护进程。因此,理想情况下,无论发送方机器是否正在运行 ipfs 守护程序,该文件都应该已分发给其他对等方并可下载给接收方用户。这里有延迟还是我错过了什么?
amazon-web-services - 分布式文件系统的 S3 与 EFS 传播延迟?
我正在开发一个使用多个 docker 容器的项目,这些容器都需要访问相同的文件以进行比较。重要的是,如果一个文件对一个容器可见,那么在它对其他容器可见之间的时间最短。
举个例子,我试图避免这种情况:假设我们有两个文件 A 和 B,以及两个容器 1 和 2。文件 A 都上传到文件系统并大致同时提交以进行比较。紧接着,同样的情况发生在文件 B 上。文件 A 对容器 1 可见且文件 B 对容器 2 可见之后不久。由于文件在分布式文件系统上传播的方式,文件 B 对容器 1 不可见,并且文件 A 对容器 2 不可见。容器 1 现在被告知将文件 A 与所有其他文件进行比较,容器 2 被告知将 B 与所有其他文件进行比较。由于传播延迟,A 和 B 从未相互比较。
我正在尝试在 EFS 和 S3 之间做出决定,以用作存储所有这些文件的地方。我想知道哪个更适合我的需求(或者是否有我不知道的第三种选择)。
文件/容器的特点是: - 所有文件都是平均大小为 2kb 的小文本文件(尽管很少有 10 kb) - 目前总共有 20mb 的文件,但我预计到今年年底会有 1gb - 这些容器不是一个群体 - 每个比较的输出都已经上传到 S3 - 确保每个文件都与其他每个文件进行比较非常重要,因此传播延迟绝对是最重要的因素
(最后一点:如果我最终使用 S3,我可能会使用同步来下拉所有放入存储桶的新文件)
编辑:为了回答 Kannaiyan 的问题,我想要实现的是将每个文件文件与其他文件至少比较一次。我不能准确地说出我在比较什么,但是比较是通过执行一个封闭源代码的 linux 二进制文件来进行的,该二进制文件接收你想要比较的文件和你想要比较的文件(分布式文件系统保存所有我要比较的文件)。它们需要放在容器中,原因有两个:
- 二进制文件严重依赖于特定的文件系统设置,并将其容器化可确保文件系统始终正确(我知道它很愚蠢,但二进制文件又是封闭源代码,没有办法绕过它)
- 该二进制文件仅在 linux 上运行,并且将其容器化使得在本地机器上进行测试的开发更容易。
最后,随着我们收到越来越多的提交,文件只会随着时间的推移而积累。每个文件在添加到系统后只读取并且从不修改。
hadoop - 带/不带 HDFS 的 Alluxio
我有一个使用 HDFS 作为底层存储分布式文件系统的集群,但我刚刚阅读了有关快速灵活的alluxio的信息。所以,我的问题是:我应该将Alluxio 与HDFS 一起使用还是Alluxio 是HDFS 的替代品?(我在他们的网站上看到,存储文件系统的共享存储可以是网络文件系统(NFS)。所以,我认为不需要HDFS。如果我犯了错误,请纠正我)。
在哪种模式下性能更好:HDFS with Alluxio 或 Alluxio stanalone(我的意思是,standalone 是指在集群中单独使用,而不是在本地使用)。
apache-spark - 文件系统应该提供哪些接口才能使其受到 Spark 的支持?
我开发了一个分布式文件系统,它提供像标准 Linux 文件系统这样的接口。现在我希望 Spark 支持它,这意味着 Spark 可以从中读取文件并将文件保存到它,就像 HDFS 一样。由于我对Spark不熟悉,所以我的问题是我应该为Spark提供哪些接口或者文件系统需要满足哪些要求才能被Spark成功运行?
google-cloud-platform - 访问谷歌云存储大文件中的随机行
我正在尝试从存储在公共云存储桶中的大文件中读取随机行。
我的理解是我不能用 gsutil 做到这一点并且已经研究了 FUSE 但不确定它是否会满足我的用例: https ://cloud.google.com/storage/docs/gcs-fuse
有很多文件,每个文件大约 50GB——总共有几个 TB。如果可能的话,我想避免下载这些文件。它们都是纯文本文件——你可以在这里看到它们: https://console.cloud.google.com/storage/browser/genomics-public-data/linkage-disequilibrium/1000-genomes-phase-3/ldCutoff0。 4_window1MB
如果我可以使用 FUSE 简单地获取文件系统句柄,这样我就可以将数据直接放入其他脚本中,那就太好了——但如果有必要,我可以重新编写它们以逐行读取。关键是——在任何情况下界面都不应该下载整个文件。
blob - Web 应用程序的对象存储
我目前正在一个网站上工作,应该向其用户提供大约 4000 万份文档和图像。我需要关于哪种方法最适合存储符合这些要求的内容的建议。
- 系统应该是高度可用的、可扩展的和持久的。
- 文件必须永久存储,用户应该能够修改它们。
- 由于客户限制,Amazon S3 和 CDN 等第三方对象存储提供商不适合。
- 内容的文件大小可以从 1 MB 到 30 MB 不等。(但是大约 90% 的文件会小于 2 MB)
- 内容检索延迟不是什么大问题。因此索引或缓存不是很重要。
我做了一些研究,发现了以下解决方案;
- 将内容作为 BLOB 存储在数据库中。
- 使用 GridFS 来分块和存储内容。
- 使用哈希将内容存储在目录中的文件服务器中,并将元数据存储在数据库中。
- 使用分布式文件系统(如 GlusterFS 或 HDFS)并将文件元数据存储在数据库中。
该网站使用 PHP 开发,并使用 Couchbase 社区版作为数据库。
我真的很感激任何意见。
谢谢你。
python - 如何计算pyspark中的距离矩阵?
我有一个包含 1,00,000 条记录的数据集。我需要为这个数据集找到欧几里得距离矩阵。它应该创建 1,00,000*1,00,000 矩阵。在 python 中,我们有squareform(pdist(x))
. 由于我无法在 rdd 上执行相同的功能,如何在 python 的 spark 平台上执行此操作?
search - IPFS 搜索文件机制
我正在使用 IPFS(Inter Planetary File System)以分散的方式存储文档/文件。
- 为了从网络中搜索文件,是否有网络上所有哈希的记录(如水蛭)?
- 我的请求如何通过网络传播?
apache-spark - 从分布式文件系统中读取火花?
假设我将数据(用户事件)存储在 S3 或 HDFS 等分布式文件系统中。用户事件按日期存储在目录中。
案例 1 考虑 spark 作业需要读取一天的数据。我的理解是,单个spark job会从当天目录中读取数据,并逐块读取数据,将数据提供给spark集群进行计算。逐块读取过程会是顺序的吗?
案例 2 考虑到 spark 作业需要读取数据超过一天(比如 2 天) 问题:这里的作业必须从两个单独的目录中读取数据。我是否需要启动两个单独的 spark 进程(或线程),以便可以并行执行从单独目录读取的数据?
ipfs - IPFS如何存储小文件(小于1KB)
白皮书指出:
小值(等于或小于 1KB)直接存储在 DHT 上。对于较大的值,DHT 存储引用,即可以为区块提供服务的节点的 NodeId。
什么意思:“直接存储”?
这是否意味着它只是存储在本地还是广播给所有对等点?