gpt4 book ai didi

hadoop - 从 Hadoop 提供静态文件

转载 作者:可可西里 更新时间:2023-11-01 14:20:32 25 4
gpt4 key购买 nike

我的工作是为静态图像/视频文件设计一个分布式系统。数据的大小约为数十TB。它主要用于 HTTP 访问(因此不对数据进行处理;或仅进行简单的处理,例如调整大小 - 但这并不重要,因为它可以直接在应用程序中完成)。

更清楚一点,这是一个系统:

  1. 必须是分布式的(水平尺度),因为数据的总规模非常大。
  2. 主要通过 HTTP 提供小型静态文件(例如图像、缩略图、短视频)。
  3. 一般不需要处理数据(因此不需要MapReduce)
  4. 设置对数据的 HTTP 访问可以很容易地完成。
  5. (应该)良好的吞吐量。

我正在考虑:

  1. 原生的网络文件系统:但是好像不可行,数据放不下。

  2. Hadoop 文件系统。我以前使用过 Hadoop mapreduce,但我没有使用 Hadoop 作为 HTTP 请求的静态文件存储库的经验。所以我不知道这是否可能或者是否是推荐的方式。

  3. 移动文件系统。看起来很有前途,但我觉得使用 MySQL 管理本地文件(在单机上)会产生太多开销。

有什么建议吗?

最佳答案

我是 Weed-FS 的作者。对于您的要求,WeedFS 是理想的选择。 Hadoop不能处理很多小文件,除了你的原因,每个文件都需要在master中有一个条目。如果文件数量很大,hdfs master节点无法伸缩。

使用最新的 Golang 版本编译时,Weed-FS 变得越来越快。

最近在 Weed-FS 上做了很多新的改进。现在您可以使用内置的上传工具非常轻松地进行测试和比较。这个在一个目录下递归上传所有文件。

weed upload -dir=/some/directory

现在您可以通过“du -k/some/directory”比较磁盘使用情况,通过“ls -l/your/weed/volume/directory”比较 Weed-FS 磁盘使用情况。

而且我想您需要使用数据中心、机架感知等进行复制。它们现在就在其中!

关于hadoop - 从 Hadoop 提供静态文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16879878/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com