Aerospike的介绍
Aerospike(以下简称AS)是一个以分布式为核心基础,可基于行随机存取内存中索引、数据或SSD存储中数据的数据库。它主要用于百G、数T等大数据量并且在数万以上高并发情况下,对性能也有毫秒级读取插入要求的场景。
B站视频链接:https://www.bilibili.com/video/BV1Dp4y1i7vp/?spm_id_from=333.337.search-card.all.click
- 可预见的高性能
99% 的响应可在 1 毫秒内实现,99.9% 的响应可在 5 毫秒内实现。 - 混合架构
索引存储在RAM 中,而数据存储在闪存/固态硬盘 (SSD) 上。 - 群集感知客户端软件
客户端知晓数据的存放位置,因此通常能够通过一次单跳检索到数据。 - 无热点
使用复杂的哈希函数来确保数据均等地分布到所有可用节点,从而将需求平均分布到各资源上。 - 数据完整性
保持了高度的一致性,或者允许对跨越多个群集和数据中心的一致性进行调节。 - 线性扩展
能够根据需要安装到多个数据中心内分组为多个群集的多个节点上。添加节点,无需分片,无需人工干预。 - 提供API的语言
AS支持多种语言,诸如C/C++、 Java、 C#、 Python、 PHP、 Go、 Node.js、 Ruby、 Erlang、 libevent2 (C)、 Perl等等。
1.工作模式
默认:混合闪存,支持HDD(机械硬盘)和SSD(固态硬盘),推荐SSD,性能好。
2.系统介绍
3.和Redis对比
4.环境故障后的自动修复
5.支持多活,自动同步
6.社区版和企业版对比
7.基本概念
- Namespace:策略容器,类似RDBMS关系数据库中的schema,可以设置副本数、内存大小、有效时长、存储引擎、文件存储位置。
- Sets:类似RDBMS关系数据库中的表。
- Records:类似RDBMS关系数据库中的行,行级的失效时间(TTL)。
- Bin:类似RDBMS关系数据库中的列,一行可以有多个bin。