- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在考虑 Cassandra 集群的设计。
用例将存储大行微小样本的时间序列数据(使用 KairosDB),数据几乎是不可变的(非常罕见的删除,无更新)。这部分工作得很好。
但是,几年后,数据将相当大(最大大小将达到数百 TB - 考虑到复制因子,超过 1 PB)。
我知道建议每个 Cassandra 节点不要使用超过 5TB 的数据,因为压缩和修复期间 I/O 负载很高(这对于旋转磁盘来说显然已经相当高了)。由于我们不想为此用例构建具有数百个节点的整个数据中心,因此我正在研究在旋转磁盘上使用高密度服务器是否可行(例如,在 RAID10 中使用旋转磁盘每个节点至少 10TB 或 20TB或 JBOD,服务器将具有良好的 CPU 和 RAM,因此系统将受到 I/O 限制)。
Cassandra 每秒的读/写量可由小型集群管理,没有任何压力。我还可以提到,这不是一个高性能事务系统,而是一个用于存储、检索和一些分析的数据存储,并且数据几乎是不可变的 - 因此,即使压缩或修复/重建需要在多个服务器上花费几天的时间同时,这可能根本不会成为问题。
我想知道是否有人对使用旋转磁盘的高服务器密度有经验反馈以及您使用的配置(Cassandra 版本、每个节点的数据大小、每个节点的磁盘大小、磁盘配置:JBOD/RAID、硬件类型)。
预先感谢您的反馈。
致以诚挚的问候。
最佳答案
超密集节点的风险不一定是在修复和压缩期间最大化 IO - 它是无法可靠地解决整个节点故障。在您对 Jim Meyer 的回复中,您指出不鼓励使用 RAID5,因为重建期间发生故障的可能性太高 - 同样的潜在故障是反对超密集节点的主要论点。
在 vnode 出现之前,如果您有一个 20T 节点死亡,并且必须恢复它,则必须从相邻 (2-4) 个节点传输 20T 节点,这将最大化所有这些节点节点,增加了故障的可能性,并且需要(数小时/天)来恢复故障节点。那时,您的运行冗余会减少,如果您重视数据,这可能会带来风险。
vnode 受到许多人赞赏的原因之一是它可以将负载分配给更多邻居 - 现在,用于引导替换节点的流操作来自数十台计算机,从而分散了负载。但是,您仍然遇到根本问题:您必须在 Bootstrap 失败的情况下将 20T 数据传输到节点上。长期以来,流媒体比预期的更加脆弱,并且在云网络上流媒体 20T 且无故障的可能性并不理想(尽管它再次变得越来越好)。
可以运行20T节点吗?当然。但有什么意义呢?为什么不运行 5 个 4T 节点 - 您可以获得更多冗余,可以相应地缩小 CPU/内存,并且不必担心一次重新引导 20T。
我们的“密集”节点是采用 Cassandra 2.1.x 的 4T GP2 EBS 卷(x >= 7 以避免 2.1.5/6 中的 OOM)。我们使用单个卷,因为虽然您建议“cassandra 现在很好地支持 JBOD”,但我们的经验是,依赖 Cassandra 的平衡算法不太可能给您带来您所想象的效果 - IO 将在设备之间惊群(压倒性的,然后压倒下一个,依此类推),它们会不对称地填充。对我来说,这是反对大量小卷的一个很好的论据 - 我宁愿只看到单个卷上的一致使用。
关于Cassandra 集群 - 数据密度(每个节点的数据大小) - 寻求反馈和建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31563447/
我以前做过很多关系数据库设计,我认为我对其中一些设计模式有经验......但是,我想不出从哪里开始解决这个问题。 我正在创建一个健身房数据库,它将在“健身房”表中包含基本的健身房信息。 然后我将有另一
大家好,我有时需要从网站上自动执行数据收集任务。有时我需要目录中的一堆 URL,有时我需要一个 XML 站点地图(是的,我知道有很多软件和在线服务)。 无论如何,作为我之前问题的后续,我编写了一个可以
我不明白为什么,但客户端库中似乎没有机制可以为 Windows Azure 表存储并行执行许多查询。我创建了一个模板类,可以用来节省大量时间,欢迎您随意使用它。不过,如果您能将其拆开,并提供有关如何改
每次我的作业中出现这些问题中的一个时,我都会弄错...任何人都可以帮助我理解吗?还是老师的 key 关了? (我没有办法知道,因为我没有得到正确的答案,它只是让我知道我的错误。) Assume x =
我计划参加为期一周的有关该主题的类(class)。我主要参与 Java 项目,并且对 C 和 C++ 也有一定的了解。而且,我有兴趣了解有关并发编程的更多信息,并希望获得有关本类(class)的反馈。
有谁知道提交 C# 4.0 反馈的官方方法,以便 Anders 和他的团队能够获得反馈并能够对提交的内容做出回应? 最佳答案 可能是论坛here ,或(对于错误)connect (他们为 .NET 4
这是我想要实现的示例 - http://home.mcafee.com/default.aspx 我想知道如何让页面右侧的反馈标签/按钮稍微打开而不是完全滑出。然后单击,我想打开一个页面(不是 jqu
我遇到过这样的情况:我有一个托管第三方网站的 iframe。我只需要知道 iframe 已导航到其最终的“成功”url,这样我就可以做出响应。 但是,正如您所知,由于 CORS 安全问题,现代浏览器会
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 3 年前。 Improve this qu
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 10 年前。 Improve thi
我使用数据库记录管理构建 JQuery/JS/PHP/mySQL 应用程序,需要在 AJAX 调用、修改后端数据库记录时向用户提供可靠且完整的反馈。恕我直言,问题是 $.ajax success: 和
要检测无效 token ,我应该多久检查一次反馈服务? 我已经使用 APNS 服务实现了一个广播系统。我打开一个连接,发送所有 APNS 消息,然后断开连接。然后我在广播完成后立即打开一个反馈连接,并
是否可以使用 shader toy 在下一帧中访问渲染图像 (GLSL)? 最佳答案 现在他们已经实现了渲染到缓冲区,所以你可以渲染到缓冲区。实际上,如果需要,您最多可以使用四个缓冲区。还有, wat
我在Delphi XE5中开发了一个数据快照服务器。 一个客户端连接到服务器。 一个客户端触发一种方法(比如说Server.ComputeTables)。 服务器正在使用ComputeTables方法
我想改进应用程序中的 AJAX 反馈(在我的模态中发布远程表单后等)。 我已经收到一些很好的反馈,显示了加载动画 $(document).ajaxStart(function(){ $('.l
我能够通过 azure-iot-sdk-python 将消息和报告属性从 iot 集线器发送到模拟设备。现在我想获得从 IoT 中心发送到设备/模块的消息的确认 (success,expired,re
我能够通过 azure-iot-sdk-python 将消息和报告属性从 iot 集线器发送到模拟设备。现在我想获得从 IoT 中心发送到设备/模块的消息的确认 (success,expired,re
我的老板想在反馈表单中添加一个选择表单,要求用户选择他/她的国家/地区。我可以通过以下方式实现这一目标: Select country = form.addItem().addSelect("
如何设置反馈,以便在输入数字时 slider 的值发生变化? JS: $('.catalog-filter-change-price_slider-range').slider({ range:
我有一个 CQRS 解决方案,它在 HTML/JavaScript 应用程序中利用 NServiceBus 和网络 worker 。 我有场景 WebAPI 发送命令 CommandHandler 更
我是一名优秀的程序员,十分优秀!