2016-11-19 106 views
0

最近,我阅读了Amazon的关键/值存储系统Dynamo的论文。 Dynamo使用一致的哈希算法作为分区算法。为了解决负载均衡和异构的挑战,它应用了“虚拟节点”机制。这里是我的问题:Dynamo中的虚拟节点

  1. 据记载,“一个节点是 负责虚拟节点的数量可以决定基于其能力”,但什么容量它 是什么?它的计算容量,网络带宽或磁盘的容量是多少?
  2. 将节点划分为“虚拟节点”的技术是什么?虚拟节点只是一个过程吗?或者,也许使用码头或虚拟机?
+0

1)亚马逊秘密酱油2)亚马逊秘密酱油 –

回答

0

没有进入具体细节,对于#1答案将是:所有以上。在运行一些负载测试并记录结果之后,可以根据经验确定不同节点类型的容量。与您将用于确定Web服务器容量的过程类似。

对于你的第二个问题,本文只是说你应该从逻辑的角度考虑节点。为了满足#1,环中的节点被指定为使得一个或多个节点将哈希到相同的物理硬件。所以一个虚拟节点只是一个逻辑映射。它只是物理层之上的一个抽象层。如果你对文件系统很熟悉,可以想象一个虚拟节点,比如iNode和磁盘柱面(比较可能略有过时)