停止冻结你的数据至死

告别数据冻结!企业应利用对象存储优化方案,如 AWS S3 Tables 和 Apache Iceberg,实现日志数据长期热存储,释放 ML、网络安全和 BI 潜力。通过并行、分区、高密度压缩等技术,提升查询性能,告别分层存储的低效与高成本,拥抱云原生实时分析新时代!

译自:Stop Freezing Your Data to Death

作者:Franz Knupfer

当涉及到日志的数据保留时,对于使用分层解决方案来降低成本的企业来说,情况很糟糕。分层存储系统通常包括热、温、冷和冻结层的一些变体,用于管理数据。

但是数据通常不会保持很长时间的热度,特别是对于每天摄取数TB日志数据的企业来说。它会迅速移动到冷层,最终移动到冻结层,在那里,充其量,重新激活是不方便的,最坏的情况是,它会变成暗数据——这是丢失洞察力和潜在安全风险的昂贵来源。

当日志数据的量不断增加,成本飞涨时,冻结存储或各种丢弃数据的方法(如下采样)似乎是唯一的解决方案。但是,这种思维方式已经过时,并且是基于使用紧密耦合的昂贵硬件(如SSD)来保持数据的热度以进行查询。

真正的问题是底层存储架构,它并非旨在经济高效地摄取、存储和查询大量的日志数据。从头开始重建遗留系统既昂贵又具有破坏性,因此高昂的成本和妥协都转嫁给了客户。

优化对象存储

近年来,一种最大化对象存储性能的新方法提供了一个更好的替代方案。现在,企业可以使用构建在对象存储之上的解决方案,以经济高效的方式保持所有数据的热度,以进行实时分析。

这个领域最近的一些新闻是AWS S3 Tables的发布,它使用Apache Iceberg来分区和优化对象存储。像Iceberg这样的工具提供了对象存储的包装器,从而大大提高了数据湖的性能。同时,像Hydrolix这样的解决方案通过最大化对象存储的性能来提供日志数据的实时和长期历史分析——所有这些都无需使用像Iceberg这样的工具从头开始构建解决方案。

通过这些方法,您不再需要在保持数据的热度和降低成本之间做出选择。如果您的企业为了降低成本而妥协对数据的访问,那么可能是时候重新考虑您的存储解决方案了。

让我们探讨一下分层存储的一些问题,保持所有数据热度的优势,以及现代数据存储解决方案如何最大化对象存储的性能,从而为可以跨越数年的PB级数据提供经济高效的低延迟查询性能。

分层存储的问题

与紧密耦合的昂贵的热存储相比,冻结存储可以降低成本。这就是冻结存储的优势所在,也是缺点开始的地方。冻结存储重新激活起来很不方便,因此很少被查询,并且很快就会变暗。它比热存储慢得多,无法用于机器学习运行,并且总体而言出奇地昂贵——主要是因为它往往有很多,并且提供的长期价值很少。在某些情况下,需要管道和数据副本才能在层之间移动数据,从而导致额外的复杂性和运营开销。

因此,分层数据范例将团队冻结到一种过时的遗留方法中,在这种方法中,日志数据仅对短期运营洞察(如可观测性)有价值。从这个角度来看,只有最近几周的数据对于高性能分析才重要,而日志数据的唯一剩余价值是用于合规性和安全目的。

但是,这与许多具有前瞻性思维的企业正在采取的联合和民主化数据访问的方法背道而驰,从而使团队和分析师可以在他们使用的工具中使用这些数据。这不仅包括运营,还包括商业智能(BI)、数据科学家、网络安全和开发机器学习模型的团队。

长期热存储的好处

通过消除传统上与热存储相关的高成本,企业可以释放广泛的优势,并且这些优势远远超出了上述用例中列出的优势。与冻结存储相比,一旦消除了成本考虑因素,保持所有数据热度就只有好处。完全热存储还提供以下好处:

  • 比较当前数据和历史数据的能力:通过分层存储,运营团队通常只能了解几周或最多几个月的数据。但是,通过长期热数据,可以将实时数据与上周、上个月甚至去年的数据进行比较。这样可以更容易地跟踪周期性事件、特定用户(例如恶意行为者)的行为,并了解您可能无法发现的模式和趋势。对于使用冷冻存储的企业,包含历史数据的查询通常需要重新激活,并且运行速度会慢得多。更糟糕的是,遍历多个存储层的查询会受到瓶颈的限制,从而导致热存储的优势丧失。
  • 更轻松的数据管理:通过保持所有数据处于热状态,无需管理多个数据层、在数据在层之间移动时备份数据或处理可能复杂的用于移动数据的管道。您还可以消除有关数据管理的难题,例如每种数据在移动之前应在每个层中驻留多长时间。
  • 提高在整个组织中联合和普及数据的能力:长期热存储可以使希望普及其日志数据并使其可供运营团队以外的团队访问的企业受益。
  • 将暗数据带入光明:由于冷冻存储不便于重新激活,因此通常是暗数据的重要来源。通过保持数据处于热状态,它不太可能变暗。这有助于减轻暗数据带来的风险,例如无法访问的数据可能隐藏有关恶意攻击和漏洞的重要证据的可能性。它还为原本没有价值的数据带来了潜在价值。

释放机器学习、网络安全和商业智能用例

除了这些优势之外,长期历史热数据还有许多用例,这些用例对于冷冻存储来说更加困难,甚至是不可能的。以下三个用例(涵盖网络安全、机器学习和商业智能领域)只是长期热数据保留重要性的一些示例。

  • 威胁搜寻平均漏洞需要 272 天才能检测到,这超出了许多平台的热数据保留窗口。实际上,恶意行为者通常使用“低而慢”的方法,从而更难以检测可疑模式并防止入侵演变成严重的漏洞。当数据快速移动到冷冻存储中时,就无法检测到几个月甚至几年内发生的模式。相反,取证分析仅在发生漏洞且造成损害后才会发生。
  • 训练机器学习模型:几乎每个人都在谈论利用人工智能的力量,但是许多企业仍在试图弄清楚这到底意味着什么。挑战之一是生成高质量的数据集,以确保模型的准确性。日志和系统数据可以为异常检测和容量规划等用例提供高保真、远距离的数据集。但是,冷冻数据会阻止访问,从而增加了训练运行所需的时间和精力。最终,机器学习模型应使用“热”数据集——任何不符合此标准的数据都可能限制模型的有效性。
  • 商业智能和数据科学:日志提供的不仅仅是应用程序性能的记录;它们通常包括有关用户如何与您的品牌、产品和网站交互的详细信息。商业智能和数据科学团队可以挖掘这些数据,以获取可帮助产品开发、库存计划、营销活动和广告投放的见解。但是,只有当团队可以完全访问数据集时,而不是仅跨越几周或几个月的不完整数据时,这些见解才可用。

通过长期、经济高效的热数据,问题变成了“我们可以做些什么来最大程度地提高此数据的价值?”,而不是“在不失控成本的情况下,我可以保持数据可访问多长时间?”

重新发明用于实时分析的热存储

只有当对象存储具有足够的性能以进行实时分析时,所有这些优势才有可能实现。但是传统上,对象存储并不是实时所需的低延迟查询的正确方法。对象存储的分布式特性使其既可以无限扩展又具有极高的成本效益,但这也意味着数据是物理分散的,而不是与查询组件紧密耦合,从而导致更高的延迟。并且,更常见的是看到对象存储用于冷或冷冻数据,而不是热数据。

为了最大程度地提高对象存储的性能,解决方案围绕以下核心概念构建:

  • 并行性:诸如 AWS S3 和 GCP Cloud Storage 等对象存储允许多个并行连接到对象存储,因此使用 Kubernetes 等系统的解决方案可以并发地写入和读取数据。
  • 最大限度地减少需要遍历的数据量:诸如分区之类的技术可以最大限度地减少需要遍历的数据量。例如,一种常见的分区策略是按时间戳。然后,当用户进行时间过滤的查询时,所有不包含时间戳范围的分区都会被排除在考虑范围之外。
  • 最大限度地减少需要通过分布式系统传输的数据量:诸如高密度压缩和谓词下推之类的技术可以显著减少需要通过 HTTP 传输的数据量。
  • 通过正确的解决方案,可以将“呈现时间”(包括数据摄取、转换和查询)缩短到几秒钟。例如,使用 Hydrolix,即使企业每秒摄取数百万条日志行,典型的呈现时间也少于 10 秒。

虽然这并非真正的毫秒级实时延迟,但许多实时用例(如分析)不需要毫秒级延迟。根据 Gartner 的实时分析定义,“对于某些用例,实时仅仅意味着分析在新数据到达后的几秒或几分钟内完成。” 在可观测性、商业智能和许多网络安全用例中(仅举几例),几秒范围内的延迟使运营和其他团队能够快速查找和修复问题,并发现数据中更深入的见解。

对象存储不适用于需要真正毫秒级延迟的用例,但与此同时,依赖于内存存储或昂贵的、紧密耦合的硬件的解决方案也不再适用于大量数据的分析。与往常一样,重要的是使用适合工作的工具。当涉及到摄取、存储和分析大量日志数据时,现在应该使用构建在对象存储之上的解决方案,而不是将数据留在冷存储中的分层存储。

了解 Hydrolix 如何 通过最大限度地提高分离式对象存储的性能,帮助您以更低的成本更长时间地保留更多数据。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注