- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我接触到文件存储和 block 存储,正在探索,根据我能理解的,如下:
block 级存储
一个。需要一个单独的卷和一个操作系统,它将作为一个单独的硬盘安装在其上,并可用于存储原始文件。
B.在服务器端用于性能超过容量。
C.自带备份软件等。
D.它使用光纤 channel 和 iSCSI 通信进行访问。
E.它无法访问内部的任何内容,它只是数据 block 。
文件级存储
一个。文件级存储不需要单独的操作系统即可运行。
B.选择它是为了容量而不是性能。
C.它没有自己的单独备份软件。
D.它是通过 NAS 等完成的文件访问系统......
基于以上,我的问题是:
block 级存储问题:
一个。 block 级存储只是无法访问文件的裸机存储,那么为什么它需要一个单独的操作系统,因为操作系统也会有一个文件管理系统,所以它会变得更像是一个同时具有文件和 block 存储选项的混合体?
B.如果以上是真的,那么SSD和SATA硬盘属于 block 存储设备吗?
C.如果上述情况属实,那么由于 SSD 和其他原因, block 级存储也出现在用户端,为什么它只用于服务器端?
D.当我们无法访问其中的任何文件时,为什么需要备份软件?
文件级存储问题:
一个。文件存储如何不需要单独的软件来操作?
B.当你可以访问这里面的文件,可以修改、读写文件的时候,为什么没有备份软件呢?
C.就像我们在 Mac OS X 上有 finder,它也是文件级存储,我们可以在其中管理我们的文件?
请澄清我上面的问题,让我知道我哪里错了。
最佳答案
在我看来,您混淆了像 Rackspace's Cloud Block Storage 这样的云 block 存储解决方案。或 Amazon Elastic Block Store与实际网络存储硬件的管理。当你启动一个云服务器时,你不会得到任何像公共(public) iSCSI 端点这样的东西来附加你自己的存储;自 iSCSI is cleartext那将是一个巨大的安全漏洞。
相反,云提供商提供 block 存储作为您的服务器实际所在的数据中心内网络(或本地)存储解决方案的抽象层。您可以将 block 存储想象成一个虚拟 USB key - 您可以将一个卷插入服务器,像任何其他驱动器一样安装它,在其上读取和写入文件,然后分离它并重新连接到另一个 - 理想情况下你不必担心物理上用于实现此目的的机制(当然,只要您的性能令人满意)。
“文件存储”下的 A、B 和 C 点在我看来真的像是在描述对象存储,例如 Cloud Files 或 S3。您通常不会像驱动器一样直接安装它们(尽管 it is technically possible ),而是通过 REST API of some sort 使用它们.它们提供了比您在典型硬盘驱动器上获得的存储容量大得多的潜力,但代价是最终一致和具有更高的延迟访问。在 Rackspace 上,您还可以 publish them to a content delivery network做一些事情,比如托管一个静态网站。很有用,但听起来不像您要找的东西。
回答您的具体问题:
block 级存储。
一个。将 block 存储卷连接到服务器就像插入 USB key 或连接物理驱动器一样。它公开了原始的、未解释的设备访问。因此,就像任何其他驱动器一样,您需要服务器上的操作系统才能 format it并对其数据进行有用的工作。卷没有处理器,因此除非它连接到云服务器,否则它不能做任何有用的事情!
B.当您在 Rackspace 创建 block 存储卷时,您可以选择是否希望它由 SSD 或 SATA 驱动器支持,以便您对性能权衡进行一些控制:SSD 会更快但更昂贵。不过,两者都是 block 存储设备。
C.我不确定您在这里所说的“用户端”是什么意思。由于我之前提到的安全问题,您不能在创建它的数据中心之外安装 block 存储卷,因此您只能将它附加到该数据中心内的云服务器。例如,您不能从桌面安装一个。
D.快照( block 存储备份)只是您放置在那里的任何内容的逐字节副本,因此它实际上根本不处理文件系统。
文件级存储。
一个。如果您在谈论 Cloud Files:您不需要特定的软件,因为它使用 REST API,因此您可以使用任何与 HTTP 通信的东西来操作它,例如 Rackspace 的 Web UI。
B.这是个好问题!我听说其他客户要求某种备份功能,但我不知道它在路线图上的什么位置。同时,您可以use the COPY operation执行存储对象的服务器端副本并以这种方式手动进行备份。
C.由于您通常不会像我之前所说的那样将 Cloud Files 容器直接安装到您的文件系统中,因此您不能直接使用 Finder 来操作对象 - 而是使用 API、SDK 或 Web UI 来处理它们。
关于cloud - 文件存储和 block 存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23406598/
我的 blockly.js 文件中有以下代码 Blockly.Blocks['account_number'] = { // Other type. init: function() {
首先抱歉我的英语不好,我正在开发 Image Splitter 应用程序并且已经完成,但是现在的要求是当图像被分割(分成几 block /chunks)那么图像 block 的每一 block (ch
#value: 消息的返回值,当发送到一个 block 时,是该 block 中最后一句话的值。所以 [ 1 + 2. 3 + 4. ] value 计算结果为 7。我发现有时很难使用。有没有办法显式
我想构建一个包含 3 div 的响应式导航栏相同的 width和 height . 我申请了 inline-block到每个 block ,我得到一个我不理解的行为。 问题是,第三 block 由 2
我希望使用 Blockly 来允许非技术人员用户指定测试脚本。 它的一部分需要一个文件选择器,但是,我看不到 Blockly 有一个。是吗? 实际上,我找不到完整的标准 block 列表。谁有网址?
仅当您位于父 block 内部时,父 block 的 props.isSelected 才为 true,但当您在该 block 的 innerBlocks 内进行编辑时则不然。 如何从父 block
仅当您位于父 block 内部时,父 block 的 props.isSelected 才为 true,但当您在该 block 的 innerBlocks 内进行编辑时则不然。 如何从父 block
我想创建一个具有不同背景颜色 block 和不同悬停颜色 block 的导航栏 block 。我可以分别创建不同的悬停颜色 block 或不同的背景颜色 block ,但不能一起创建。所以请告诉我如何
我正在使用看到的代码 here定期执行代码: #define DELAY_IN_MS 1000 __block dispatch_time_t next = dispatch_time(DISPATC
为什么 block 必须被复制而不是保留?两者在引擎盖下有什么区别?在什么情况下不需要复制 block (如果有)? 最佳答案 通常,当您分配一个类的实例时,它会进入堆并一直存在,直到它被释放。但是,
我想弄清楚我这样做是否正确: 如果我有一个 block ,我会这样做: __weak MyClass *weakSelf = self; [self performBlock:^{
我想制作一个 4 block 导航菜单,虽然我已经显示了一个 block ,然后单击打开第二个 block ,从第二个开始选择并再次单击出现第三个 block ,第四个 block 相同...这是我的
例如,这样更好吗? try { synchronized (bean) { // Write something } } catch (Int
我想让一只乌龟检查前方小块的颜色并决定移动到哪里。如果前面的补丁不是白色的,那么乌龟向左或向右旋转并移动。我的 If 决策结构中出现错误,显示“此处应为 TRUE?FALSE,而不是 block 列表
我想创建一个 block 对角矩阵,其中对角 block 重复一定次数,非对角 block 都是零矩阵。例如,假设我们从一个矩阵开始: > diag.matrix [,1] [,2] [
我是区 block 链新手。突然我有一个问题,我们是否可以通过区 block 号来访问以太坊区 block 链上之前的区 block 数据。 例如我创建了一个block1、block2。 block
我是区 block 链新手。突然我有一个问题,我们是否可以通过区 block 号来访问以太坊区 block 链上之前的区 block 数据。 例如我创建了一个block1、block2。 block
我创建了一个等距环境,全部使用 Javascript 和 HTML5 (2D Canvas),大部分情况下工作正常。我面临的问题是使用不同高度的图 block ,然后对图 block 上的对象索引进行
这是令我困惑的代码: public Integer getInteger(BlockingQueue queue) { boolean interrupted = false; try
我有一个基于 TPL 数据流的应用程序,它仅使用批处理 block 和操作 block 就可以正常工作。 我已经添加了一个 TransformBlock 以尝试在发布到批处理 block 之前从源中转
我是一名优秀的程序员,十分优秀!