写点什么

AxonIQ 发布最新的事件存储数据库 AxonDB

  • 2018-03-20
  • 本文字数:1229 字

    阅读完需:约 4 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

AxonIQ 公司最近发布了 AxonDB ,一款用于事件溯源的数据库,支持事务和基于推送的事件发布模式。为了确保数据库的性能不受存储容量的影响,AxonDB 的架构在读取数据方面下了功夫。AxonIO 方面的评测表明,即使在处理大量事件时,AxonDB 的性能仍然十分稳定。

AxonDB 支持完整的 ACID 事务模型,也就是说,可以在单个事务中插入多个事件。一致性是通过单调增长的唯一性序列号来实现的,所有事件必须持有一个这样的序列号。为了在高吞吐的情况下保证持久性,需要搭建 AxonDB 集群。

在往 AxonDB 插入事件时,事件不仅会被保存起来,还会被发送给事件监听器和事件处理器,从而避免了定时轮询,降低了延迟。

AxonDB 的其他特性包括:

  • 使用 Java 开发。
  • 直接操作文件,不使用任何底层的数据库系统。
  • 只允许以追加的方式插入事件。
  • 内置支持快照。
  • 支持临时的查询,包括使用 XPath——可以通过这种方式达到调试等目的。
  • 支持集群,集群只有一个主节点,写入事件时采用法定节点数原则。
  • 支持从传统数据库或 MongoDB 迁移到 AxonDB。

AxonIQ 的商务总监 Frans van Buul 在一次演讲中强调,甘特的研究数据表明,基于事件的架构(Event-Driven Architecture,EDA)是 2018 年的十大技术趋势之一,而事件溯源就属于 EDA 的一种。

AxonIQ 的团队之所以要设计这款全新的数据库,是因为他们找不到一款可以支持以下特性的事件存储数据库,比如:

  • 支持读取单个聚合中的所有事件,或者读取从某个时间点之后的所有事件。
  • 按照写入顺序读回事件。
  • 一次写入多个事件,并保证原子性,只能读取已提交的事件。
  • 性能不受存储大小的影响,支持快照。
  • 只支持追加方式写入,没有必要支持随机性的插入,不允许更新或删除,因为它们是不可变的。
  • 将存储过的事件发布给事件监听器。

RDBMS 对原子性有很好的支持,但性能是硬伤。当需要存储的事件很多时,性能就得不到保证。

文档数据库(如 MongoDB)可以存储大量的数据,但对事务的支持不太好。解决办法是将多个事件保存在同一个文档中,但这样会导致其他方面的问题。

Kafka 高度可伸缩,虽然是为保存临时消息而设计,但也可以无限制地保存消息。但在读取一个聚合中的事件时仍然存在问题,虽然可以使用 topic,但无法扩展到数百万个聚合。

由 Greg Young 领导开发的 Event Store 是另一个为事件溯源而设计的存储引擎。它把大部分的逻辑包含在了引擎当中,而 van Buul 希望能够把逻辑与存储分开。

基于上述的几点原因,他们最后决定自己开发一个新的数据库,专注于支持事件溯源。于是,AxonDB 诞生了——一款商业数据库,提供了 4 个版本,其中一个是免费的开发者版本(包含了文档)。

注:即将发布的 MongoDB 4.0 将支持跨文档事务

AxonIQ 提供了一个 GDPR 模块,确保事件中的个人数据使用加密秘钥进行加密,通过删除秘钥就可以移除个人数据。

2018 年 9 月 21 号将会有一场关于 Axon 产品的推介会

查看英文原文: AxonDB, a New Implementation of an Event Store

2018-03-20 19:001750
用户头像

发布了 731 篇内容, 共 454.1 次阅读, 收获喜欢 2003 次。

关注

评论

发布
暂无评论
发现更多内容

龙头整机厂商宝德加入,共建龙蜥社区开源新生态

OpenAnolis小助手

Linux 开源 合作伙伴

Apache Flink ML 2.0.0 发布公告

Apache Flink

大数据 flink 编程 实时计算

MyBatis的功能架构是怎样的

编程江湖

mybatis

工商银行实时大数据平台建设历程及展望

Apache Flink

大数据 flink 编程 实时计算

HBase的 rowkey 设计原则

编程江湖

HBase 架构

WorkPlus移动数字化平台赋能新型智慧城市建设

BeeWorks

足球、篮球、花样滑冰、乒乓球四大运动的动作识别通用方案开源了

百度大脑

人工智能

mark: mac 开启chrome webrtc 日志

webrtc developer

chrome WebRTC

女生不适合当程序员?XTransfer这位程序员妈妈绝了!生娃半年内升职加薪

XTransfer技术

技术人 程序媛 XTransfer

销量之王,去年程序员最爱看的技术书就是它!

博文视点Broadview

数据安全产品之堡垒机详细介绍-行云管家

行云管家

网络安全 防火墙 数据安全 堡垒机

大数据开发之Flink + TiDB

@零度

flink 大数据开发

🏆【Alibaba中间件技术系列】「Nacos技术专题」配置中心加载原理和配置实时更新原理分析(中)

洛神灬殇

nacos 配置中心 Alibaba 1月日更 Apache alibaba

有一群青年人,用热爱连接起科技与智慧生活的“双向奔赴”

最新动态

使用APICloud AVM框架开发预约应用

YonBuilder低代码开发平台

前端框架 APP开发 APICloud 跨端开发 小程序开发

netty系列之:可以自动通知执行结果的Future,有见过吗?

程序那些事

Java Netty 程序那些事

针对 jQuery 的优化方法有哪些

编程江湖

技术升级!国内公有云厂商首个支持保留消息功能

百度开发者中心

物联网

Flink 大规模作业调度性能优化

Apache Flink

大数据 flink 编程 实时计算

从 Flink Forward Asia 2021,看 Flink 未来开启新篇章

Apache Flink

大数据 flink 编程 实时计算

Redis OM .NET Redis对象映射框架

MASA技术团队

C# .net 微软 后端 redis'

Flink CDC 系列 - Flink MongoDB CDC 在 XTransfer 的生产实践

Apache Flink

大数据 flink 编程 实时计算 IT

Pravega Flink Connector Table API 进阶功能探秘

Apache Flink

大数据 flink 编程 实时计算 Pravega

Alink、Tensorflow on Flink 在京东的应用

Apache Flink

大数据 flink 编程 实时计算 Alink

架构训练营 week6 作业

红莲疾风

「架构实战营」

教程直播第7期|如何对 OceanBase 进行 SQL 诊断和调优

OceanBase 数据库

oceanbase OceanBase 开源 OceanBase 社区版 OceanBase教程

虎符推出AMM流动性资金池 支持现货专区做市赚收益

区块链前沿News

流动性 虎符 Hoo 虎符交易所 AMM

内网是什么意思?指什么网?内网需要做等保测评吗?

行云管家

安全 内网 等保测评

免费下载!FFA 系列专刊|《Flink CDC 新一代数据集成框架》电子书

Apache Flink

大数据 flink 编程 实时计算 IT

大咖集结,共创生态|AIOps社区专家团正式集结出道

云智慧AIOps社区

开源项目 开源社区 智能运维 开发者社区 社区治理

初识MASA Blazor

MASA技术团队

C# .net 微软 后端 blazor

AxonIQ发布最新的事件存储数据库AxonDB_语言 & 开发_Jan Stenberg_InfoQ精选文章