2

我正在努力扩大我在分布式系统和系统设计方面的知识。我遇到了诸如内容交付网络和分布式文件系统之类的术语,用于存储/处理音乐、视频、图片、gif 等媒体数据。

我知道 DFS 只是我们在笔记本电脑中的一个文件系统,它被复制到其他服务器(分布式)以使其 99.9% 可用。CDN 是一个可以存储资产的网络,包括 javascript、图像、视频等。

现在,我在理解两者之间的区别方面有很大的困惑,哪一个在不同的用例中效果更好?如果我对 CDN 和 DFS 本​​身的基本理解是错误的,请纠正我。提前致谢!

4

1 回答 1

2

他们每个人都有自己的目的。

文件系统:

顾名思义,分布式文件系统 (DFS) 的文件系统(文件的一部分)分布在多个服务器上,尽管它显示为本地文件系统(本地文件)。也就是说,它使客户端能够访问和处理存储在服务器上的数据,就好像它在本地系统中一样。DFS 依赖于元数据并支持文件目录的透明性、复制和容错机制,通过缓存最近访问的磁盘块和可扩展性来提高性能。

关键 DFS 架构如下:

• 客户端-服务器架构——这应基于管理的许多服务器,多个客户端之间的元数据和数据通过提供系统的全局命名空间来管理。

• 基于集群的体系结构——该系统将元数据和数据分离,因此一些服务器存储数据,而另一些则专门用于管理元数据。如果基于集群的体系结构系统只有一个元数据服务器,则应称为集中式系统,而如果具有分布式元数据服务器,则应将其称为分布式系统。

例如 HDFS (Hadoop DFS) 是 DFS 的一种类型,它属于集中式分布式文件系统的类别,因为有一个称为 namenode 的单个服务器来管理元数据,并且 datanodes 应该保存拆分数据,分布式和复制。

在 DFS 的情况下,当团队/组或各种应用程序/进程的许多人同时处理一个巨大的文件时,它可以提高效率,并像用户/应用程序一样平滑用户/高级应用程序的日常活动不需要知道它的确切文件路径或备份。它使多个用户能够利用基于高效、安全和健壮的文件系统的网络连接的多台机器/主机。

CDN:

CDN 使用部署在各种互联网骨干网的服务节点,这些节点能够相对于最终用户在空间上分配服务,从而提高性能并确保高可用性。该算法选择最适合为特定请求向用户提供内容(基于跳跃距离或负载)的 CDN 节点或边缘服务器。部署了许多技术,如反应式探测、主动式探测和连接监控,以确定 CDN 节点/服务节点的接近度。

在 CDN 的情况下,许多内容提供商向 CDN 运营商支付费用,通过相应地放置服务节点/服务器来将其内容交付给最终用户。CDN 运营商反过来与 ISP 合作,通过向 ISP 付费,将其服务器托管在他们感兴趣的适当位置的数据中心。

于 2021-06-28T18:32:30.770 回答