Aerospike(下一代NoSQL数据库)-从需求到安装

Aerospike学习笔记篇 Aerospike 是一个分布式、可扩展的Nosql 数据库。以KV 键值进行存储,当然也支持文档存储模型,在国内的并没有广泛使用,而在国外却大多数用在广告行业,以存储大数据量及强一致性而被广泛使用。... 阅读详情

一、需求与场景

   业务需要从数据库中获取产品的相关信息,搜索池为三张表总共670万行记录,所占空间为1.5g,键值集容量从200到2500之间分布,命中率为25%到80%,由于业务原因无法减少键值集,而公司内部规划没有采用分布式数据库架构。为减少搜索相关信息阶段的时间,需要将从MySQL等关系型数据库中的搜索压力转换到内存数据库。

    我们的业务场景需要NoSQL数据库在每个业务步骤进行上下文相关内容存取,数据量较大,不强调一致性,可以容忍数据丢失或出现脏数据,每次搜索键值集较大,需要有批量读的功能,以及稳定的搜索时间范围(除网络延迟之外),同时,需要控制成本。

二、Aerospike的特性

Aerospike的官方定义:Next Generation, NoSQL Data Platform。(下一代NoSQL数据平台)

Aerospike的官方描述:Powering real-time, extreme scale data solutions that require five-9’s+ uptime, predictable performance and operational simplicity。(某些数据解决方案需要5个9的正常运行时间、可预测的性能以及操作的简单性,而Aerospike恰恰支持这样实时的、极端规模的数据解决方案。)

Aerospike官方文档

    因为当前有很多性能不错的NoSQL数据库可供选择,那么我为什么要选择Aerospike呢?在看到官方简介之前,我是无从下手的。不过,有了这么高大上的定义,我瞬间有了方向。既然Aerospike 说自己是下一代NoSQL数据平台,那么我有个疑问,那下一代数据库的定义是什么样的呢 ?有什么特点吗?从它对自己性能的自信,我很好奇它采用了什么样的架构什么样的机制做到这样的性能呢?会不会存在打脸的情况呢?

    为了防止自己对Aerospike发表先入为主的意见,那么我就先从它的官方文档开始,看看它自己是怎么解释自己的特点以及它对自己定义的由来。同时为了自己的书写体验(避免它有王婆卖瓜的倾向可能会误导我的情况),我就将它描述中所有的形容词去掉,只看事实。

    1.稳定性及可靠性。通过三个方面来达到这个目的,第一,5个九的运行时间;第二,动态的集群管理机制;第三,强一致性。

    2.可预测性能。通过三个方面来达到这个目的,第一,获得专利的闪存优化存储层;第二,通过基于ML的实时决策支持高数据摄取率;第三,拓展到十亿兆字节规模。

    3.减少复杂性及总拥有成本。通过三个方面来达到这个目的,第一,解决服务器拓展问题;第二,使用低成本的Flash和PMEM来取代DRAM;第三,能在任何复杂的生产环境部署。

    假设,Aerospike官方的声明具有比较高的可信度,那么,在看到使用Aerospike可以减少复杂性以及总拥有成本的特点时,我们便有了决定(因为穷,只能节衣缩食),毕竟使用SSD+Memmory的方式比单纯使用Memmory要划算得多。同时,官方也提供了Aerosipke的监控工具,便于我们运维。剩余的信息官方说明已经很详细了,要用中文再写一遍的话,就有点反复造轮子的意思。上面三点已经绑定链接,可以直接跳转到相关的官方页面。

    补充一下,在官方对可预测性能的说明中,有与Cassandra、Redis、DynamoDB、Couchbase的基准测试,以及提供了一些选择的建议。如果你有在Aerospike与Redis中有做考虑的话,可以看看Aerospike官方给的参考项。强调一点,很多功能只有企业版才能使用,当然是需要商业许可的。

    那么,按照我的需求,到现在就已经可以安装使用Aerospike了。Aerospike数据库的限制列表。

三、安装

       官方下载

企业版与社区版的对比

 

        由于企业版本需要与销售顾问联系之后,才能拿到feturekeys.conf。就不做企业版的演示了。下面选择社区版的压缩包以及Docker安装方式进行简单说明。

1.社区版压缩包安装

    1.1 环境

            Centos7 虚拟机, Xshell远程连接工具。

    1.2 下载:

            方式一:在浏览器下载,再通过Xshell将压缩包上传到虚拟机中。

                    社区版本下载地址:aerospike-community-edition。(随便填写一些信息后,即可下载)

                    使用Xshell连接虚拟机,切换到你决定放压缩包的位置,执行rz命令,在弹出框中选择压缩包后点击ok即可(若有打开screen模式,在下载过程中会有问题,可以先退出screen模式,若并未在screen模式中,可忽略该提示)。若无rz命令,可通过下面命令进行安装

                   yum install lrzsz

            方式二:通过在虚拟机中使用wget下载压缩包。

                        使用Xshell连接虚拟机,切换到你决定放压缩包的位置,执行下面命令

                    wget -O aerospike.tgz 'https://www.aerospike.com/download/server/latest/artifact/el7' 

                        若是没有wget方法,可以通过下面命令安装

                        yum install wget 

        1.3 解压安装

                        解压

                    tar -xvf aerospike.tgz

                        安装(在Centos6和8中,需要安装一些额外依赖)

                    cd aerospike-server-community-{latest-version}-el7/

                    sudo ./asinstall

 

            1.4 启动、测试

                启动

            systemctl start aerospike

                测试

[root@192 ~]# aql

Seed: 127.0.0.1User: NoneConfig File: /etc/aerospike/astools.conf /root/.aerospike/astools.conf

Aerospike Query Client

Version 3.23.0C Client Version 4.6.9Copyright 2012-2019 Aerospike. All rights reserved.

aql> show sets

[127.0.0.1:3000] 0 rows in set (0.001 secs)

OK

aql>                    

到此,最基本的压缩包安装已经完成。

    2. Docker安装

           执行下面命令

docker run -tid   \

-v /opt/aerospike/data:/opt/aerospike/data \

-v /opt/aerospike/usr/lua:/opt/aerospike/usr/udf/lua \

-v /opt/aerospike/config:/opt/aerospike/etc \

--name aerospike1  \

-p 3000:3000 \

-p 3001:3001 \ 

-p 3002:3002 \ 

aerospike/aerospike-server /usr/bin/asd --foreground \

--config-file /opt/aerospike/etc/aerospike.conf

        -v {local-path}:{container-path} : 将本地文件挂载到容器中,是容器内文件于本地可见且可修改,这里挂载的目的主要为了,第一,定制化配置;第二,将容器内数据备份到本地;第三,为了持久化 lua cache;

        -p {local-port}:{container-port}:  绑定本地端口与容器端口看;

        --config-file {container-file}:使容器内的指定文件作为容器的配置文件,即使我们挂载的配置文件生效的方式之一

Aerospike的命令使用文档

ScyllaDB vs Aerospike:高性能NoSQL数据库对比 摘要: ScyllaDB与Aerospike作为高性能NoSQL数据库的代表,在性能、架构和成本效益上存在显著差异。测试显示,ScyllaDB在相同硬件条件下,读取吞吐量达700万次/秒(领先Aerospike 40%),写入性能提升40%-100%,且P99延迟仅4毫秒。其宽列存储模型、无界扩展能力和CQL兼容性使其在复杂查询和大规模部署中更具优势,而Aerospike在简单键值场景和低延迟(≤1ms)方面表现突出。成本上,ScyllaDB开源版无功能限制,相同负载下TCO比Aerospike低35%。综 阅读详情

相关推荐

HBase与Aerospike对比:内存优先数据库

在当今大数据时代,内存优先数据库因其高速的数据读写性能而备受关注。HBase和Aerospike是两种具有代表性的内存优先数据库,它们在不同的应用场景中都有着广泛的应用。本文章的目的在于对HBase和Aerospike进行全面、深入的对比,分析它们的优缺点、适用场景等,帮助开发者和企业在选择数据库时做出更合适的决策。本文的范围涵盖了这两种数据库的核心概念、架构、算法原理、实际应用案例以及未来发展趋势等方面。本文的预期读者主要包括数据库开发者、软件架构师、CTO以及对内存优先数据库感兴趣的技术爱好者。对于正在

架构师的AI之路,分享AI应用开发架构的学习与实践。 697

AS(aeroSpike)集群部署安装和常用命令

AeroSpike

weixin_43840872的博客 2516

Aerospike数据存储与分析应用场景案例

作者:禅与计算机程序设计艺术 Aerospike是一个高性能、可扩展的NoSQL数据存储系统,用于存储、查询和分析实时数据。Aerospike通过其独特的数据模型(如向量数据库)和客户端库(包括Java、C、Python和Go语言)能够轻松地将结构化或非结构化数据存储在内存中,并对数据进行快速查询、统计、分析和机器学习。本文中主要介绍Ae

AI天才研究院 4015

Aerospike(K-V 缓存型)数据库(简称AS)入门了解

Aerospike介绍

独断万码 1858

Hyper-V显卡直通实战:手把手解决Windows 11虚拟机错误码43(附完整参数配置)

本文详细解析了在Windows 11 Hyper-V虚拟机中配置显卡直通时遭遇错误码43的根源,并提供了从环境检查、核心PowerShell命令(如Set-VMGpuPartitionAdapter)配置到虚拟机内驱动替换的完整实战解决方案,帮助用户彻底解决显卡驱动无法加载的问题。

weixin_29238147的博客 899

反序列化漏洞详解

目录 一、什么是序列化和反序列化 二、什么是反序列化漏洞 三、序列化函数(serialize) 四、反序列化(unserialize) ​五、什么是PHP魔术方法 六、一些常见的魔术方法 七、魔术方法的利用 八、反序列化漏洞的利用 1.__destruct()函数 2.__wakeup() 3.toString() ​九、反序列化漏洞的防御 一、什么是序列化和反序列化 序列化是将对象转换为字符串以便存储传输的一种方式。而反序列化恰好就是序列化的逆过程,反序列化会将字符串.

LJH1999ZN的博客 3万+

aerospike解压安装(官方推荐)

aerospike解压安装

用一行行优雅代码重构现实的造梦者,坚信简洁即正义的美学践行者。 417

攻防实战之Confluence后利用

这边管理员密码是密文加密在数据库中,解不开,因此解决的思路是将管理员用户密码修改为已知明文密码的密文(这边不能直接在数据库中添加字段,关系型数据库在单表中添加一条字段可能会出现问题),登录上后台以后,添加用户并加入管理员组,最后将管理员密码还原。Confluence的后利用主要问题在于在Linux中搭建时,默认是Confluence用户权限,如下图所示,而confluence在linux中是没有写权限的,这也就是为什么有些人发现可以执行命令但是shell写不进去。至此admin的密码被改为了123123。

weixin_39251927的博客 2716

Aerospike学习笔记

当从客户端接收到写入(更新或插入)时,会在该行上获取锁存器,以避免对该集群的同一记录进行两次冲突的写入(在网络分区的情况下,可能会采取冲突的写入来提供可用性) ,稍后解决)。例如,您可以在 DRAM 中配置小型、频繁访问的命名空间,并将较大的命名空间放在较便宜的存储中,例如 SSD。这种架构减少了事务延迟,减轻了集群的工作负担,并消除了开发人员的工作量。混合内存系统包含存储在每个节点中的索引和数据,处理与物理存储的交互,包含用于自动从数据库中删除旧数据的模块,并对物理存储进行碎片整理以优化磁盘使用。

weixin_44247784的博客 1488

桌面云架构讲解(VDI、IDV、VOI/TCI、RDS)

什么是云桌面桌面云是虚拟化技术成熟后发展起来的一种应用,桌面云通常也称为云桌面、VDI等桌面云中的云一般指的是企业的数据中心,通过在数据中心的服务器上安装若干个虚拟机,这个虚拟机就是桌面;但是终端无法直接连接到这个虚拟机(云桌面),因此就需要通过技术将就虚拟机变为桌面云发放出来;发放出来之后只需要瘦客户端(PC、手机、瘦客户机等)连接到数据中心的云桌面服务器平台,最终就可以连接到桌面来进行使用云桌面的优势终端与数据信息分离,数据在后台集中处理和存储 ,数据实现统一管理。

m0_49864110的博客 3万+

STM32硬件SPI驱动W25Q128实战:从CubeMX配置到DMA高速读写(附完整代码)

本文详细介绍了如何使用STM32硬件SPI驱动W25Q128 Flash存储器,从CubeMX配置到DMA高速读写的完整实战指南。内容包括硬件连接方案、SPI参数优化、DMA配置技巧以及完整代码实现,帮助开发者快速掌握高速稳定的SPI Flash存储解决方案。

weixin_33734785的博客 185

aerospike删除数据_通过Aerospike的内存速度满足大数据分析的需求

云环境中越来越多地使用流程和数据密集型应用程序。 云概念正在发生变化,将其定位为满足各种IT需求的一站式解决方案。 随着当前数据收集的指数增长,高质量的数据分析算法比比皆是。 云引发的基础架构优化通过许多机制在不断增加,例如: 合并 集权 联邦 虚拟化 货柜化 商品化 工业化 我们有基于策略和软件定义的抽象,自动化,标准化和简化方法。 这些提供了自适应,即时...

cusi77914的博客 1368

OCR开发实战:如何用PaddleOCR C++版实现本地文字识别(附模型文件处理技巧)

本文详细介绍了如何使用PaddleOCR C++版实现本地文字识别,包括环境搭建、工程编译、运行时优化等全流程。重点讲解了在VS2019/VS2022环境下配置PaddleOCR的CPU推理性能优化技巧,以及模型文件处理的实际应用方法,帮助开发者高效完成OCR本地化部署。

devops8pract的博客 335

Aerospike---可能会代替Redis的下一代NoSql数据库

个推专注为开发者们提供消息推送服务多年。通过个推SDK,手机终端与服务器建立长连接,维持在线状态。然而在网络异常等情况下,消息无法实时送达到终端用户,因而推送服务器建立了一份离线消息列表,以待用户重新登录时,进行消息的下发。这部分数据存储在个推Redis集群,整个集群包括主从共百余个实例,key的数量在10亿级别,存储空间在T级别,带来了一定的维护成本和运维挑战。作为个推的后端开发工程师,我们也一...

FeelTouch Labs 1171

全新RT-DETR 有效涨点改进目录 | 包含各种卷积、主干改进、各种注意力机制、Neck特征融合改进、损失函数、AIFI创新改进、独家创新、小目标检测、特殊场景检测等最全大论文及小论文必备创新改进点

《全新最全RT-DETR涨点改进专栏》提供500+种创新改进方案,涵盖卷积、注意力机制、主干网络等模块优化,适用于PCB检测、工业缺陷检测等场景。专栏包含顶会论文改进点、数据集增强方法、热力图可视化等实用功能,帮助科研人员快速提升模型性能。提供完整环境配置指南(Python3.10+Pytorch2.5.1)和训练教程,支持不同版本RT-DETR模型。定期更新涨点策略,配套QQ答疑群免费指导,适合从入门到发论文全流程需求,特别推荐给目标检测领域的研究生和工程师。

Ai缝合怪、助力小伙伴高效发论文 3420

【Windows Server 2019】邮件服务器配置与管理——安装及配置Winmail服务器(上)

博文介绍了如何安装邮件服务器 Winmail,如何配置Winmail,包括运行服务器,Winmail管理工具介绍和域名配置。

VMware, Windows, Linux, Cisco, Container, Kubernetes, Kali 2万+

aerospike入门

Aerospike 一、NoSql NoSQL(Not Only Sql),泛指非关系型的数据库。传统项目网站访问量一般不大,单机版数据库就很不错, 随着互联网web2.0网站的兴起,传统的关系数据库在处理web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,出现了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用难题。 常见NoSql有: Redi

VVVVVxVVVVV的博客 1209

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Aerospike简单使用

Aerospike简单使用Aerospike概述Aerospike特性基本概念(名词解释)学习网址Aerospike软件安装Aerospike下载修改配置文件:配置文件示例:配置文件解析:NetWork Configuration:NetWork配置示例:Hearbeat:Multicast(UDP):建议使用Mesh(TCP):Mesh对心跳信号使用TCP点对点连接。群集中的每个节点都保持与所有...

Brown_Bear_007的博客 1878

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Aerospike入门

Aerospike是一款高性能分布式NoSQL数据库,具有亚毫秒级延迟和百万级QPS处理能力,适用于实时性要求高的场景如广告竞价、金融交易等。其采用无中心节点设计,支持自动分片和数据再平衡,保证高可用性。Aerospike支持丰富的数据类型,包括基础类型(整型、字符串)、复合类型(列表、映射)和特殊类型(GeoJSON、TTL),并支持动态模式和原子操作。通过混合内存架构优化性能,索引存于内存,数据存于SSD/NVMe。安装时需注意配置网络、服务参数和命名空间策略,推荐使用SSD存储和万兆网络。该数据库兼具

Made In SQL 993

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

从源码到部署:Aerospike Database Server编译安装全流程(附常见问题解决)

Aerospike Database Server 是一款闪电般快速的 NoSQL 数据库,专为在内存和闪存上优化而设计。本指南将带您完成从源码克隆到成功部署的全过程,即使您是开源新手也能轻松掌握!🚀 ## 📋 准备工作:系统要求与依赖安装 在开始编译前,请确保您的 Linux 系统满足以下条件: - 64位操作系统(推荐 Ubuntu 20.04+ 或 CentOS 7+) - 至少 2

gitblog_00883的博客 411

Aerospike 宣布开源其内存中的 NoSQL 数据库

Aerospike 宣布开源其 NoSQL 数据库,使用 AGPL 许可证发布。该许可证要求对源代码的任意改进都必须提交回主库。Aerospike 相关的所有源码都可通过如下地址获取: https://github.com/aerospike Aerospike 当前将数据库打包成两个版本:社区版和企业版。其中社区版是免费的,但限制了集群、存储能力以及每秒的事务处理数。在最新的 3

kiss_m_2015的专栏 589

aerospike-client-c:高性能NoSQL数据库C语言客户端

aerospike-client-c:高性能NoSQL数据库C语言客户端 项目介绍 aerospike-client-c 是一个开源的 C 语言客户端库,用于与 Aerospike 分布式 NoSQL 数据库进行交互。它提供了丰富的方法和接口,使得在64位版本的 Linux、MacOS 或 Windows 操作系统上构建应用程序时,可以高效地访问 Aerospike 数据库。该项目不仅包括了客户端...

gitblog_00970的博客 450

最好的nosql数据库_最好的NoSQL数据库

最好的nosql数据库 NoSQL的现代意义可以追溯到2009年,它指的是不基于关系表构建的数据库,这与SQL数据库不同。 通常, NoSQL数据库比传统SQL 数据库拥有更好的设计灵活性,水平可伸缩性和更高的可用性,有时以牺牲一致性为代价。 NoSQL数据库可以采用多种形式。 它们可以是云服务,也可以是本地安装。 它们可以支持一个或多个数据模型:键值,文档,列,图,有时甚至是关系模型,这是...

cxu0262的博客 234

Aerospike

文章来源:拉勾教育Java高薪训练营第3期 Aerospike介绍 Aerospike(简称AS)是一个分布式,可扩展的键值存储的NoSQL数据库。 T级别大数据高并发的结构化数据存储 读写操作达微妙级,99%的响应可在1毫秒内实现 采用混合架构,索引存储在内存中,而数据可存储在机械硬盘(HDD)或固态硬盘(SSD) 上(也可存储在 内存) AS内部在访问SSD屏蔽了文件系统层级,直接访问地址,保证了数据的读取速度。 AS同时支持二级索引...

自律给我自由 2017

Aerospike分布式数据库架构深度解析:构建高性能数据存储的5种最佳实践

Aerospike作为一款高性能、闪存优化的分布式NoSQL数据库,在现代大规模数据处理场景中展现出卓越的性能优势。本文将从技术演进、核心架构、配置策略、实战部署、性能监控等多个维度,为技术决策者和架构师提供深度技术洞察,帮助您构建高可用、高性能的数据存储解决方案。Aerospike数据库通过其独特的架构设计,在内存优化和闪存存储方面实现了突破性创新,为实时数据处理提供了企业级解决方案。 ##

gitblog_00139的博客 608
下一篇: Java项目中的package-info.java的作用
小鸡炖蘑菇Plus版
博客等级 码龄10年 10粉丝 27原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值