当前位置: 首页 > 科技观察

如何为您的数据选择合适的流处理器?

时间:2023-03-14 15:02:22 科技观察

【.com速译】对于云端的流数据管道,有很多端到端的解决方案可用。更不用说用于导航不同流处理工具的许多术语。正确的解决方案也将在很大程度上取决于最终用户及其需求。有这么多问题需要考虑,为您的组织找到合适的框架可能是一个挑战。因此,在本指南中,我们将阐明为您的数据选择流处理器时应考虑的事项。什么是流处理?流处理器使用户能够快速响应连续的数据流。它们还可以在几毫秒内检测到各种情况。任何需要对实时数据立即做出反应的应用程序都需要流处理器。例如,一旦达到特定温度,温度传感器就会发出警报。因此,流处理通常是实时分析的同义词。它允许用户在没有太多延迟的情况下摄取、处理和分析数据。您可以在此处找到对流处理的更深入介绍。DIY与托管流处理器在选择合适的流处理器时,您可以自己构建应用程序或选择现有工具。使用现有的流处理架构可以节省您的时间和金钱,并避免基础设施效率低下。如果您没有设置类似应用程序的经验,这将特别方便。但是,有很多流处理框架可供选择。因此,在看不同的引擎之前,先列出你的框架需要支持的特性。流处理系统的基本功能包括:使用消息代理进行数据摄取使用流式SQL编写查询流处理API和查询编写环境高可用性(HA)、最小HA和高可靠性扩展系统性能(框架是否可扩展?处理大窗口?)拖放式GUI的用户友好性首先,列出必备功能。然后,列出您的可选功能。这将指导您为您的数据搜索最佳流处理器。您还需要确定正确的流处理引擎类型。主要有三种类型:1.开源组合引擎组合流处理引擎依赖于有向无环图(DAG)的早期定义。这发生在数据被处理之前。虽然这简化了代码,但开发人员必须仔细规划他们的框架以避免处理效率低下。这些引擎被认为是第一代流处理器,通常管理起来很复杂。开源组合引擎的示例包括ApacheStorm、Samza和Apex。2.Manageddeclarativeengines这些引擎可以链接流处理功能。因此,引擎在接收数据时计算DAG,并可以在运行时优化DAG。这种类型的流处理引擎更易于管理,并带有一系列托管服务选项。然而,管道的初始设置仍然是一项昂贵的投资。成本涉及从来源到存储和分析的方方面面。ApacheSpark和Flink都是具有托管服务的声明式引擎。3.完全托管的自助服务引擎最后,还有完全托管的自助服务引擎。这些是流处理的最新进展。该引擎运行DAG并提供端到端解决方案,包括将数据直接流式传输到存储基础架构中。完全托管的引擎还组织数据并将其提供给分析框架。设置、管理和管理不同的流处理器具有不同的设置、管理和管理要求。这是选择正确工具之前的另一个重要考虑因素。为了说明这一点,我们可以将AmazonKinesis与Kafka进行比较。例如,ApacheKafka可能需要数天甚至数周时间才能满足完全生产就绪的要求。该过程的长度取决于您的团队可用的专业知识。此外,该框架是一个开源系统,需要自己的:集群节点多复制分区托管服务的设置速度要快得多。此外,它们可以在数小时内启动并运行,因为提供商将管理基础设施、存储、网络和配置。换句话说,您可以在很短的时间内获得流式传输数据所需的一切。托管服务还将负责硬件和软件的持续维护、供应和部署。成本和定价模型与不同流处理器类型关联的定价模型是为您的数据选择流处理器的最终考虑因素。开源解决方案通常需要大量的技术资源。您的组织可能负责为设置和管理基础设施的24/7运营负担提供资金。您还需要为专用硬件提供资金。相比之下,完全托管的服务通常提供现收现付的定价模式。您不必为设置投资前期成本。支付的金额可能取决于吞吐量所需的标准分片数量。在此模型中,您可以节省设置基础架构的时间和金钱。为您的数据选择合适的流处理器了解流处理及其所有要求可能具有挑战性。但是,我们希望本文能帮助您关注选择流处理引擎时最重要的考虑因素。市场上有许多工具,托管服务通常是最现代、最灵活的解决方案。【翻译稿件,合作网站转载请注明原译者和出处.com】