- 快召唤伙伴们来围观吧
- 微博 QQ QQ空间 贴吧
- 文档嵌入链接
- 复制
- 微信扫一扫分享
- 已成功复制到剪贴板
VoltDB让Kafka支持复杂数据流驱动的实时业务决策
VoltDB是一个高速决策引擎,为必须在数毫秒内做出响应的应用程序提供基础架构支持,适用场景 包括BSS(策略和收费)、预防欺诈、客户价值管理(即个性化)和实时工业自动化等等,那些通过实 时决策可以增加收入或减少损失的场景。
这些应用程序通常需要VoltDB运行在一个多样化和异构计算的软件生态里,它需要与各种技术集成 对接,包括Apache Kafka。实际上,Kafka已然成为企业消息队列的首选中间件。Kafka Connectors丰 富的生态系统让其它技术框架与VoltDB集成变得很简单。
虽然有很多技术可以从Kafka里提取数据来并交给下游进一步处理,但能够同时完成实时数据决策 需求的技术就屈指可数了。
通过订阅Kafka Topic,VoltDB可以直接从Kafka上提取数据,并在10毫秒内完成数据决策,然后 立即把结果发送回Kafka,在诈骗实施得手或者失去盈利机会前,完成相关决策执行。
展开查看详情
1 .EBOOK VoltDB让Kafka支持复杂 数据流驱动的实时业务决 策
2 .简介 VoltDB是一个高速决策引擎,为必须在数毫秒内做出响应的应用程序提供基础架构支持,适用场景 包括BSS(策略和收费)、预防欺诈、客户价值管理(即个性化)和实时工业自动化等等,那些通过实 时决策可以增加收入或减少损失的场景。 这些应用程序通常需要VoltDB运行在一个多样化和异构计算的软件生态里,它需要与各种技术集成 对接,包括Apache Kafka。实际上,Kafka已然成为企业消息队列的首选中间件。Kafka Connectors丰 富的生态系统让其它技术框架与VoltDB集成变得很简单。 虽然有很多技术可以从Kafka里提取数据来并交给下游进一步处理,但能够同时完成实时数据决策 需求的技术就屈指可数了。 通过订阅Kafka Topic,VoltDB可以直接从Kafka上提取数据,并在10毫秒内完成数据决策,然后 立即把结果发送回Kafka,在诈骗实施得手或者失去盈利机会前,完成相关决策执行。 PRODUC CONSUME ERS RS TOPIC TOPIC A B KAF KA PROCESSING IMPORT EXPORT ER ER 2 HOW VOLTDB ENABLES EVENT-DRIVEN DECISIONS FROM KAFKA
3 . VoltDB让企业在Kafka技术生态的投值增值,它实现了在复杂流数据上的实时决策能力,让应用开 发重心放在处理重要的业务逻辑上,在实时完成数据的分析、处理和修改。 我们的客户通过集成VoltDB和Kafka,赋能让各种应用场景,比如:让电话接线员给在90多个国家 的用户提供实时的个性化服务,帮助需要大规模、高并发、实时响应的大型体育运动平台提供流畅的个 性化用户体验。 在已经建立成熟的事件驱动型软件架构中,只需要加入VoltDB,您的应用程序就可以获得实时分布 式事务决策的能力,可以有效应对5G时代下的物联网、机器学习的实时推理决策需求。 随着5G、机器学习和物联网的迅猛发展,VoltDB和Kafka技术的对接已经非常成熟,它使Kafka能 够快速并无缝地查询复杂的流数据。Kafka建于2011年,用于处理流数据,那时5G,物联网和机器学习 等实时处理的需求还并不是特别旺盛,因此,尽管Kafka在某些场景下可以正常工作,但可能不适用于 当代快速查询复杂流数据的场景。 Kafka的强大之处 当今的经济是建立在知识和数据的基础上的。与往日的石油经济一样,现代公司需要搭建基础设施, 并快速并有效地处理这些知识和数据。 通过创建一个只为了让线性数据流动的中央管理系统,Apache Kafka在很大程度上降低了系统的 复杂程度。Kafka完全是从头开始建造的吞吐量明显高于任何连接组件。最后,它是作为实时流数据平 台构建的,始终可以让数据流实时传递。 Kafka不只是在信息传输上面表现出色,它还有其它优势:无限制的水平扩展性和简单的数据存储, 在实时的流数据传递过程中可以无性能损耗的存储数据。 虽然Kafka加上KsqIDB可以通过类SQL语言读取实时流数据,如果需要进行储存和运算数据的话则 需要多种辅助工具比如NoSQL数据库、流处理技术和规则引擎等。为了达到5G、工业物联网及它们相 关的实时控制回路所需要的低延迟标准和智能化要求,我们需要将这些技术封装到一个中间件里,这就 是VoltDB。 3 HOW VOLTDB ENABLES EVENT-DRIVEN DECISIONS FROM KAFKA
4 .你的选择:集成还是替换 根据架构和事件驱动架构的发展程度,应用程序可以通过使用importer-exporter框架将VoltDB与 Kafka消息队列集成,或者可以使用新的Topics功能本身将VoltDB用作Kafka消息队列。以下是这两个 选项的简要概述。 用importer-exporter框架来进行整合 VoltDB的importer-exporter框架提供了与其他技术(如Kafka,Kinesis,JDBC,Elastic, Hadoop等)的无代码集成。 导入程序将数据流传输到VoltDB中以按事件进行提取,同时确保消息/记录在存储后的持久性导入 到VoltDB。然后,exporter可以以At-Least Once语义,将后处理消息/记录推送到下游系统。 VOLTDB IMPORT – EXPORT SYSTEM A SYSTEM B Importer polls continuously Imported records are passed as Exporter tries and pulls the parameters to the configured to push any available data IMPORTER stored procedure for processing EXPORTER data that i s available STORED PROCEDURE Offsets persisted (Kafka/Kinesis) Exporter records are persisted todisk to Stored provide at-least-once delivery guarantee procedure invocations are durable to disk 4 HOW VOLTDB ENABLES EVENT-DRIVEN DECISIONS FROM KAFKA
5 .导入 Importer框架让用户程序集成VoltDB到事件驱动型架构。VoltDB的Importer框架管理如下过程: 1. 轮询外部系统是否有新的可用数据 2. 导入数据 3. 逐条处理数据 4. 在同一个存储过程中,依次传递数据给应用程序的业务逻辑,完成用户的自定义业务处理 可以在配置文件中或通过VoltDB的用户界面声明性地配置用于不同系统的Importer。这些内置的 导入器在数据库启动时自动运行,在数据库停止时自动停止,使数据导入成为数据库操作过程的一部 分。此外,Importer连接器还为摄取的事件提供持久性,以确保在灾难情况下不会丢失任何数据。可 以在正在运行中的数据库上创建导入程序实例,而无需停机。 VoltDB Kafka Importer使用Kafka Consumer API从多个Kafka代理和多个Topic提取数据。开发人 员可以使用与Kafka Consumer相同的属性配置导入程序。 导出 导出会自动执行与导入相反的过程,捕获写入到导出表或流中的所有数据并将其发送到关联的外部目 标,无论是文件,服务(例如Kafka)还是其它数据库。 开发者可以选择导出特定记录或迁移由于TTL过期而从表中删除的行。导出过程是事务性的,因此 开发人员可以确保导出期间不会丢失任何记录。VoltDB保证每条数据记录将至少导出一次(At – Least Once)。 PRODUCERS CONSUMERS TOPIC A TOPIC B KAF KA PROCESSING IMPORTER EXPORTER 5 HOW VOLTDB ENABLES EVENT-DRIVEN DECISIONS FROM KAFKA
6 .替换 VoltDB Topic特性(测试版) 在v10.1版本里,Topic特性允许应用程序使用发布和订阅语义与VoltDB连接。除了提供更好的语义 以与其它系统集成外,这该功能还允许将VoltDB用作消息队列,一站式完成VoltDB实时数据流管理和 实时数据处理。 通过标准的Kafka Consumer API和Producer API来集成此功能,VoltDB可以轻松替换Kafka,特别 是对于需要低延迟事务处理的数据流场景。 在v10.1版本里,Topic特性允许应用程序使用发布和订阅语义与VoltDB连接。除了提供更好的语义 以与其它系统集成外,这该功能还允许将VoltDB用作消息队列,一站式完成VoltDB实时数据流管理和 实时数据处理。 通过标准的Kafka Consumer API和Producer API来集成此功能,VoltDB可以轻松替换Kafka,特别 是对于需要低延迟事务处理的数据流场景。 VOLTDB TOPICS PRODUCERS CONSUMERS Simple Message Queueing TOPIC A TOPIC D Events STORED PROCEDURE B Processing TOPIC B Request STORED PROCEDURE C Response CALL C APPLICATION 6 HOW VOLTDB ENABLES EVENT-DRIVEN DECISIONS FROM KAFKA
7 . 新的Topic特性带给应用程序带来的好处在于: 通过缩减Kafka集群的大小来降低成本 减少跨越组件带来的网络延迟,从而降低整体的端到端延迟 更简单的架构设计 复用Kafka Connect生态 VoltDB实现Kafka API Topic的优势之一是可以复用Kafka Connect,让VoltDB可以无缝替换 Kafka,与那些已经和Kafka集成绑定的流行技术方案更容易集成VoltDB。应用系统架构中只用替换 少量组件,就可以将发布者和使用者直接嵌入,充分复用丰富的Kafka Connect生态组件。 通过使用Source和Sink Kafka连接器将各种系统与VoltDB集成在一起,开发人员可以轻松地将 其数据管道连接在一起,以充分利用将消息队列与复杂的决策引擎结合在一起的独特优势。 VOLTDB PIPELINE Publishes Consumes Messages Messages DEVICES Application Topics DASHBOARD KAFKA CONSUMER KAFKA Kafka-Connect Topics Schema-Registry Topics PUBLISHER Live State Publishes Messages Reads and writes Consumes Persists Schemas Messages ENTERPRISE SOURCES CRM, ODS - TARGET Configuration KAFKA-CONNECT SOURCE JDBC, NOSQL, HADPOP - KAFHA-CONNECT SINK SCHEMA- REGISTRY 7 HOW VOLTDB ENABLES EVENT-DRIVEN DECISIONS FROM KAFKA
8 .结束语 现代的大数据和5G的场景需求,与传统的基础软件架构系统适用性有大量的冲突。传统基础设施, 因为没有足够能力去应付瞬息万变的应用场景而即将成为历史。Kafka是在2011年被发明的,那是还是 没有5G和物联网概念的时代,简单查询处理能力的程序还适用于那个时期。如今时代已经不一样了, Kafka虽然目前还是一个强大的流数据处理器,但是它仍需要一些场外援助,才能在复杂流数据上完成 实时决策。 如果您正在使用Kafka,VoltDB与Kafka的集成也是容易的。但由于相信并了解Kafka的强大功能以 及客户的需求,我们一直在寻找更多方法来与诸如Kafka的这类关键技术集成,这就是我们创建Kafka Importer和Exporter工具的原因,也是我们开发新的pub-sub功能的原因。 最重要的是:无论客户是否使用Kafka,我们都希望客户的数据库体系结构支持并加速其业务目标, 而不是提供让人困扰的方案。这也是我们总是提供各种选项,以及与客户讨论数据架构需求的原因。 关于VoltDB VoltDB支持需要实时智能决策的应用程序,以实现互联世界,同时又不影响ACID要求。没有其他数据 库产品可以同时为需要低延时、大规模、高并发数和准确性相结合的应用程序加油。 VoltDB由2014年图灵奖的获得者Mike Stonebraker博士创建,他对关系数据库进行了重新设计,以应 对当今不断增长的实时操作和机器学习挑战。Stonebraker博士对数据库技术研究已有40多年,在快速 数据,流数据和内存数据库方面带来了众多创新理念。 在VoltDB的研发过程中,他意识到了利用内存事务数据库技术挖掘流数据的全部潜力,不但可以满足 处理数据的延迟和并发需求,还能提供实时分析和决策。VoltDB是业界可信赖的名称,已经由诺基亚, 金融时报,三菱电机,HPE,巴克莱,华为等领先组织合作有实际场景落地。 © VoltDB, Inc. 209 Burlington Road, Suite 203, Bedford, MA 01730 • VOLTDB.COM 联系我们 点击此处 8 HOW VOLTDB ENABLES EVENT-DRIVEN DECISIONS FROM KAFKA