Aerospike

关注
义项:实时NoSQL数据库
Aerospike

Aerospike 是一款面向实时场景的分布式 NoSQL 数据库管理系统,由同名公司开发,以混合内存架构(HMA)为核心技术特征。它把主索引驻留在内存、把数据存放在固态硬盘等持久化介质上,从而在接近内存级延迟的同时降低存储成本,常被用于欺诈检测、实时竞价、个性化推荐和支付等要求毫秒级响应与高可用性的业务[1]。该数据库支持键值、文档、图以及向量检索等多种数据模型[2]。

百科 图文
目录
  1. 定义
  2. 原理
  3. 发展历程
  4. 应用
  5. 局限
  6. 参见

定义

Aerospike 是一款开源与商业版并行的分布式 NoSQL 数据库管理系统,同时提供键值存储与多模型数据操作能力[1]。它采用无共享(shared-nothing)集群结构,所有节点地位对等,不存在单点故障,数据通过分区算法均匀分布在集群各节点上[3]。系统在数据模型上使用命名空间(namespace)作为最高层级,命名空间之下再划分为集合(set),记录由键、字段和元数据构成,这种划分方式与关系数据库中的表空间和表有对应关系[4]。

该系统以 C 语言编写,整体分为客户端层、分布层和数据层三个层次:客户端具备集群感知能力,可把请求直接发往持有目标记录的节点;分布层负责数据复制、故障检测与集群成员管理;数据层负责记录的持久化存储[4]。

原理

Aerospike 的核心是混合内存架构(Hybrid Memory Architecture,HMA):主索引常驻内存,记录数据则存放在固态硬盘、NVMe 闪存或持久内存上,读取时由内存索引把键映射到存储介质上的精确物理位置,再由服务器完成一次直接读写[1]。这种路径不依赖数据缓存层,因此不存在缓存命中率波动带来的延迟抖动,端到端的响应时间主要受网络往返影响[5]。除混合内存配置外,系统还支持内存配置与全闪存配置,同一集群内不同命名空间可以采用不同的存储配置[6]。

在数据分布上,Aerospike 使用完全随机化的分区策略把数据均匀分散到各节点,避免热点和不均衡节点造成的瓶颈;集群扩容时延迟基本不受影响,数据集从 TB 级增长到 PB 级对性能的影响很小[5]。系统通过保存记录的多份副本来维持 k-safety,节点故障后自动重新分片与复制,例如在 10 节点、双副本的集群中同时丢失两个节点时,短暂不可用的数据量约为总量的 2%[6]。此外,跨数据中心复制(XDR)功能可在多个地理分布的数据中心之间进行异步复制,使异地集群保持同步[7]。

发展历程

该产品的开发公司成立于 2010 年,最初名为 Citrusleaf,自 2010 年起就已向客户提供数据库产品[8]。2012 年 8 月,公司把企业名称和软件名称一并改为 Aerospike,名称取自一种能在很大高度范围内维持输出效率的火箭喷管,用来指代软件的扩展能力[1]。同年,公司收购了 AlchemyDB,并把两个数据库的功能整合,其中包括引入关系型数据管理能力[1]。

2014 年 6 月 24 日,Aerospike 数据库服务器以 AGPL 3.0 许可、客户端软件开发工具包以 Apache 2.0 许可开放源代码,同时公司仍提供商业化的企业版[1]。2018 年,产品发布了针对单记录操作的强一致性支持;2025 年 2 月发布的 8.0 版本进一步加入了分布式 ACID 事务与严格可串行化保证,公司称这是业界首次在保持高吞吐实时性能的前提下提供该能力[8]。

围绕向量能力,公司推出了向量检索(Vector Search)功能并持续迭代,新增自愈式 HNSW 索引与灵活存储选项,以支持检索增强生成、语义搜索等场景[9]。

应用

该系统面向毫秒级延迟且不允许停机的关键业务,典型用途包括欺诈检测、数字支付、客户画像与个性化、实时竞价以及人工智能决策等[10]。在广告技术领域,Criteo 把 Couchbase 与 Memcached 组合替换为 Aerospike 后,其实时竞价平台每天完成约 9500 亿次匹配、峰值每秒 2.5 亿次,硬件资源用量下降超过 75%[5]。

在印度市场,该数据库自 2011 年起被 Flipkart、Snapdeal、Airtel、Dream11 等企业用于实时个性化、支付与客户洞察;据公司披露,Flipkart 的促销活动期间系统处理过每秒 9500 万次事务[11]。企业常见的做法是通过 Kafka 等流式工具把分散在多个系统中的数据汇入 Aerospike,构建实时的客户 360 度视图,部分客户在建立信心后进一步将其用作记录系统[11]。在人工智能场景中,向量检索可与检索增强生成、图查询和键值查询组合使用,以支撑混合检索类应用[11]。

局限

该数据库在开发者群体中的认知度并不算高,Stack Overflow 2024 年的调查未把它列入开发者使用的前 35 名数据库,DB-Engines 的综合排名为第 61 位[8]。相比亚马逊 DynamoDB、谷歌 Spanner 等由超大规模云厂商提供的同类产品,其供应商规模较小,企业在依赖程度上需要自行权衡,而选择超大规模厂商的方案又可能带来对特定云和产品的绑定[8]。

在技术层面,混合内存架构虽然省去了缓存层,但索引仍需占用内存,索引规模会随记录数量增长而增长,因此单节点内存容量与记录大小都会约束可承载的数据规模;官方文档指出单条记录最大为 8MiB,且为维持副本策略,集群各节点需要相同的存储容量[6]。此外,持久内存等新型存储介质在主流云厂商中未获得广泛采用,相关存储方案的可用性受制于云平台的硬件选择[12]。

参见

  • NoSQL —— Aerospike 属于该类非关系型数据库,是其分布式键值存储分支的代表产品之一。

  • 键值数据库 —— Aerospike 最初以键值存储为主要数据模型,并在此基础上扩展出文档、图等模型。

  • 固态硬盘 —— 混合内存架构把数据持久化在该类介质上,是其实现低延迟与低成本平衡的基础。

  • 内存数据库 —— Aerospike 支持把数据与索引全部放入内存的配置,与这类数据库在形态上存在交集。

  • 向量数据库 —— Aerospike 提供向量检索能力,用于语义搜索与检索增强生成等人工智能应用。

参考资料

  1. epfl.ch 上的网页 [引用日期2026-10-14]
  2. Real-time scalable NoSQL database | Aerospike [引用日期2026-10-14]
  3. The Aerospike Database real-time data engine [引用日期2026-10-14]
  4. 探索Aerospike:一款具备超读写能力、低延迟和高吞吐量的NoSQL数据库 [引用日期2026-10-14]
  5. aerospike.com 上的网页 [引用日期2026-10-14]
  6. Flexible storage [引用日期2026-10-14]
  7. 产品简介: [引用日期2026-10-14]
  8. Analysts welcome ACID transactions on Aerospike [引用日期2026-10-14]
  9. enterpriseaiworld.com 上的网页 [引用日期2026-10-14]
  10. aerospike.com 上的网页 [引用日期2026-10-14]
  11. dqindia.com 上的网页 [引用日期2026-10-14]
  12. sdxcentral.com 上的网页 [引用日期2026-10-14]
词条评价
词条统计

浏览次数:2 次

阅读量:0 次 · 阅读完成量:0 次

最近更新:2026-10-13T20:39:36Z

历史版本

本条目引用的词条
NoSQL 键值数据库 固态硬盘 内存数据库 向量数据库