aerospike参考资料

2023-05-16

本文转自:http://blog.csdn.net/songhuiqiao/article/details/50324073

aerospike QQ群:419183757

http://blog.csdn.net/jiashiwen/article/category/3090193

如果您的企业依赖于:
庞大的数据量(超过任何结构化数据库所能处理的数据量)
可预见(且快速)的性能
透明的扩展
始终正常运行
那么您只有一个选择,那就是 Aerospike。 Aerospike 数据库是一个键-值存储的高性能实时 NoSQL(灵活模式)数据库。 即刻开使!免费下载 Aerospike 软件并电邮 sales.cn@aerospike.com 我们能够为您的用户带来更多优势:
快速——我们不仅快速,而且始终保持快速:
可预见的高性能。我们是行业最佳——比竞争对手快 10 倍,99% 的响应可在 1 毫秒内实现,99.9% 的响应可在 5 毫秒内实现。
混合架构。索引存储在 RAM 中,而数据存储在闪存/固态硬盘 (SSD) 上,针对采用多核处理器和多处理器机器的现代硬件进行优化。直接硬盘访问(绕过文件系统)可带来难以置信的性能。
群集感知客户端软件。由于客户端知晓数据的存放位置,因此通常能够通过一次单跳检索到数据。
无热点!Aerospike Server 使用复杂的哈希函数来确保数据均等地分布到所有可用节点,从而将需求平均分布到各资源上。
可靠——没有中断、没有停机、没有数据损失:
数据完整性。许多 NoSQL 数据库会牺牲数据一致性(ACID 标准),但 Aerospike 保持了高度的一致性,或者允许对跨越多个群集和数据中心的一致性进行调节。
可靠且容错。如果群集中的一个节点出现故障,则其他节点将自动重新平衡负载。
我们能够为您带来更多优势:
所有 NoSQL 数据库都声称能处理大数据,但我们正在管理真正巨大的数据。到底有多大?我们的客户每月处理多达 2 万亿次交易,并管理超过 8 TB 数据,而且数据量每天都在迅猛增长,永无止境。
易于设置、管理和扩展:
分布式。Aerospike Server 能够根据需要在任意位置的任意台服务器上运行。
线性扩展。Aerospike Server 软件能够根据需要安装到多个数据中心内分组为多个群集的多个节点上。如要纵向扩展,只需将节点添加到集群,Aerospike 群集将自动在所有可用的服务器之间重新平衡数据负载。无需分片。无需人工干预。
滚动的硬件和软件升级。备份和安装在后台完成,无需停机。
跨数据中心支持。不同数据中心内的群集能够自动协调,从而实现绝对的可靠性。
运行在商用硬件之上。易于购买和安装新服务器,没有需要特别订购的部件或不常见的硬件组件。我们甚至有一个非常好的傻瓜型方法,能够在价值 5000 美元的商用机器上实现 100 万 TPS。
易于使用的软件开发套件。我们的多语言、多平台 API 允许您快速开发和部署您自己的客户端应用程序。
业界最低的总体拥有成本 (TCO)。Aerospike Server 经过优化,使您可以通过更少的服务器获得更快的响应速度。我们并不认为拥有一个 100 节点的群集是一件值得骄傲的事,相反,我们对软件进行了优化,以利用更少的服务器提供更快的响应速度——并且,更少的服务器意味着为您降低硬件和维护成本。总体拥有成本仅为其他数据库的 17 分之一。
业经验证的成功纪录。我们的第一次部署是在三年前实施的,到目前为止仍在正常运行,从未出现任何停机故障。
首屈一指的客户支持。我们将检视您的应用程序设计,帮助您制定部署计划,并提供标准的技术支持。
定期发布的软件升级。我们通过加利福尼亚州和印度的工程团队积极支持和改进 Aerospike 数据库,推出新的软件更新和新功能。
下载 超高性能 NoSQL 基准测试 – 分析耐用性和性能的权衡
Aerospike | Aerospike Chinese
原文地址:http://www.aerospike.com/chinese/

Aerospike 宣布开源其内存中的 NoSQL 数据库
Aerospike 宣布开源其 NoSQL 数据库,使用 AGPL 许可证发布。该许可证要求对源代码的任意改进都必须提交回主库。Aerospike 相关的所有源码都可通过如下地址获取:

https://github.com/aerospike

Aerospike 当前将数据库打包成两个版本:社区版和企业版。其中社区版是免费的,但限制了集群、存储能力以及每秒的事务处理数。在最新的 3.3.5 版本中这些限制已经移除(我们目前用得是最新版3.5.15)。社区版跟企业版所提供的功能已经基本一致,除了企业版提供的多个数据中心的复制功能以及补丁和技术支持服务外。

Aerospike 提供 C, C++, Java, C#, Node.js, Python, PHP, Erlang 和 Perl 语言的客户端开发包,这些客户端开发包的源码使用 Apache 许可证。

同时公司刚获得 C 轮 2000 万美金的投资用于未来的进一步开发。

Aerospike是一个以分布式为核心基础,可基于行随机存取内存中索引、数据或SSD存储中数据的数据库。

原文地址:http://www.oschina.net/news/53142/aerospike-open-source

Aerospike NoSQL 数据库架构
作者 Srini Penchikala ,译者 李志 发布于 2015年6月16日 | 讨论
分享到:微博微信FacebookTwitter有道云笔记邮件分享后阅读
Aerospike是一个开源的分布式键-值NoSQL数据库。它支持灵活的数据模式,并且支持满足ACID特性的事务。其架构包括如下三层:
客户端层:这一层包括带有Aerospike API的开源客户端库和能够感知数据在Aerospike集群中位置的追踪节点。
集群和数据分布层:这一层监控集群通讯并提供一些自动化功能,比如故障转移、数据复制和跨数据中心同步。
数据存储层:这一层负责在DRAM(动态随机存取存储器)和Flash(闪存)中存储数据。
InfoQ采访了Aerospike的联合创始人兼CTO Brian Bulkowski,内容包括NoSQL数据库架构、其优势以及限制。
InfoQ:现在有不少NoSQL解决方案——Aerospike解决了哪些问题?
Brian: Aerospike为应用开发者们解决了键-值存储问题。当他们想要使用支持分片的键-值NoSQL数据库时就应该考虑Aerospike。它为解决大量的网络负载而生,在这一点上很多成功的公司已经证明部署Aerospike的重要性。它不是一个只用于分析功能的数据库,也不是Hadoop的替代品。
在大规模用户信息存储和会话管理方面,Aerospike的表现都极其出色。而且在很多商家使用实时数据在做的个性化项目、安全项目、移动支付和很多其他项目的例子中,Aerospike都是不二之选。
通过发布Aerospike源代码和最近的一些用户自定义函数,还有二级索引和统计收集而来的数据集的使用,Aerospike可以被选做可扩展高性能应用的数据库。
InfoQ:如何比较Aerospike和关系型数据库?

Brian:Aerospike在一开始就是以擅长做键-值存储的分布式数据库为目标开发的。关系型数据库功能完备但是丧失了主键使用上的速度和规模优势。然而,主键的使用方面——为了性能而做数据反规范化,是互联网应用开发者最看重的一个特性。
关系型数据库是很棒的多功能工具,然而,糟糕的扩展性、缓慢的连接操作(joins)、维护数据关系的复杂性和难以更改的架构降低了应用的性能和开发者的敏捷性。这就是为什么为了打造那些真正令人兴奋的应用,缓存和分片已经被应用多年。
SQL尚未适配几个关键的开发需求。多语言使用要侧重于列表和图的抽象和更高级的数据结构,比如文档。NoSQL数据库给开发者们提供了想要的东西——列表和图作为上层数据类型并且允许跨语言访问。还有一些小的改进,比如可以很容易地保持原子性地更新和读取记录(UPDATE和SELECT),这让开发者的工作变得更轻松。
不同于关系型数据库的实现,Aerospike利用最新的硬件——多核、多CPU服务器和闪存(PCIe卡和SSD),还有可以向外扩展,处理数十亿的对象、TB级的数据和每秒百万级的事务的分布式无共享架构。当下的公有云都可以配置SSD,只需花费RAM的小部分费用就能获得内存般的性能。一个关于“高可扩展性”的博客列举了原因。
InfoQ:如何比较它与其他NoSQL数据库?

Brian:一些流行的NoSQL数据库提倡高性能,但是仍然需要缓存技术来解决并发读写的问题。Aerospike优良的内存性能使应用开发更简单,同时部署也更便捷。如果你正在使用NoSQL替代MySQL满足高性能和可扩展性,你需要一个性能很可靠的内存数据库。
然而,开源的缓存系统比如Memcache和Redis,都不容易扩展。它们性能确实很好,但是它们的持久化模型不成熟,而且需要完全的DRAM。扩容服务器的时候要手动分割数据才能避免低性能。
Aerospike从设计之初就同时支持RAM和闪存(SSDs)。淘汰从RAM到闪存之间的数据交换方案,Aerospike实现了一个混合方式,把已分配的索引和数据或者存储在RAM或者SSD中。我们发现对于不同的部署环境,有一些数据最好放在RAM中,而有一些最好放在闪存中,这个工作对Aerospike来讲很简单。
其他的NoSQL数据库只实现了延迟一致性,但是Aerospike默认运行同步复制机制,提供单行ACID属性。读提交是最实用的ACID隔离级别,它为程序员提供了写后读的实时性,确保返回正确结果。Aerospike实现了包括锁存器和短期记录锁的分布式隔离技术,确保了隔离性。Aerospike提供的持久化机制包括在RAM和持久化存储上的多节点复制,另外每次事务更新都会在发送提交成功信号之前写入集群中的多个位置。更多的细节可以在这篇超大数据集会议论文中找到。
Aerospike有力保证让数据离处理它的进程更近,这是通过运行在服务器而非客户端的用户自定义函数实现的。分布式的代码管理器可以使得模块安全地上传至集群,而后高效地执行。这一特性减轻了网络拥堵。举例来说,在数据库中把一个元素添加到列表,列表管理可以写成一个简单的UDF(用户自定义函数),其实就是用自定义操作扩展数据库功能。
其他的NoSQL数据库要求手动分片、手动故障转移、维护窗口等。MongoDB和HBase提供了自动分片,但是MongoDB需要一个区分数据的分片键值作为参数,而HBase要涉及到从原则集里选择一个RegionSplitPolicy(域分配原则)。然而Aerospike是可以自我复合和自动执行一些功能的,包括故障转移和数据再平衡,这极大地减少了维护的工作量。在Aerospike部署中,维护窗口的存在是不必要的——备份和升级的操作会在数据库集群还在响应请求服务的同时就完成了。
InfoQ:Aerospike作为解决方案一部分的最佳用例或者最佳应用是什么?

Brian:Aerospike是一个可以满足广告优化和广告个性化这些低延迟应用的数据库选择。实时竞价广告系统——运行着大量互联网上常见的竞价广告,很依赖服务器上最近的cookie数据变化,还要加上海量的Hadoop分析而来的更深层用户数据。这种类型的大数据应用要求REST API请求响应在毫秒级,而且要把最近行为写到上层数据库。Aerospike被平台用作用户信息存储、服务端cookie存储、实时上下文存储、设备ID存储和ID映射,可以预见,这些平台必须在1毫秒之内存储和读写几十亿条数据。此外,Aerospike提供金融交易必需的单行ACID特性。
Aerospike还被商家用于在用户浏览商品时生成动态内容——报价和交易信息,并给出相关产品的最佳推荐。以Snapdeal公司举例来说,过去一直使用运行于RAM的MongoDB作为缓存,后来发现性能欠佳。现在他们使用Aerospike,满足了开发人员单页面更多的数据库调用,由此实现了视觉更丰富、利益更大化的网络体验。
我们发现缓存正在变成历史。很多社交媒体公司——从Pinterest到Twitter,都在使用持久化的内存键值存储作为数据基础架构的核心——无缓存化。
如今每家平台都需要全天候的服务才能保证优质的用户体验、达成服务水平协议,还要通过维护和备份做到始终可用。许多Aerospike客户刚开始使用较小的集群。当他们的产品不仅仅是增长,而是爆炸式增长的时候,他们发现很容易就可以通过增加服务器而扩展服务。根本没有必要重启现现有节点、客户端,或是计划停机时间等等。
InfoQ:Aerospike架构里是否有持久化的后台数据库或者完全的内存数据库?

Brian:Aerospike在使用RAM的时候是持久化的,标准配置会写入磁盘。由于不通过磁盘读取数据,因此没什么性能影响。当使用闪存或SSD时,数据会同步写入主备机。在数据块写入到磁盘是时是队列维护的,所以所有副本都是持久化的,而且没有性能影响。
InfoQ:它支持什么类型的监控?

Brian:有很多方式可以用来监控Aerospike。Aerospike监控控制台(AMC)提供了一个很全面的仪表盘来监视集群的活动。它通过vagrant预装在Aerospike虚拟机中,并注册了亚马逊AMI(亚马逊系统镜像)。
Aerospike支持Nagios和Graphite插件——这些Python写的插件可以作为其他系统的模板。
InfoQ:使用Aerospike有什么限制?

Brian:Aerospike在如下场景可能不是最佳选择:
工作负载总是只读的
如果工作负载是批量分析,旋转介质(HDDs)会更高效

AerospikeDB与Redis性能比较:在AWS上的NoSQL基准测试
http://www.infoq.com/cn/news/2015/02/aerospikedb-redis-aws-nosql?utm_campaign=infoq_content&utm_source=infoq&utm_medium=feed&utm_term=global

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

aerospike参考资料 的相关文章

  • GitLab的备份与还原

    一 现状 前段时间在麒麟系统上部署了GitLab xff0c 后来发现太占资源 xff0c 于是准备在Ubuntu Desktop版本上部署GitLab Ubuntu Desktop出预装了浏览器 xff0c 感觉不会比麒麟轻太多 之前安装
  • 如何使用Sublime的插件(以HexViewer为例)

    1 打开Package Control功能 xff1a 在sublime任意界面按下ctrl 43 xff08 注意是键盘左上角的 xff09 xff0c 会在界面最下方弹出一个编辑框 xff0c 输入如下内容 xff08 注意区分Subl
  • Java和Qt如何实现multipartfile表单的请求

    一 背景 做项目经常需要跟其他单位 公司对接 xff0c 由于成本等方面的考虑 xff0c 不可能多家单位一直坐在一起开发 一般的解决办法是 xff0c 自己的B端 C端先与自己的服务端对接 xff0c 基本功能开发完成 xff0c 再将自
  • 树的排布、展开与折叠算法

    一 背景 原项目是纯C端程序 xff0c 未来要移植成BS架构 其中一个功能是界面上展示树 xff0c 基本要求是 xff1a xff08 1 xff09 按层次展示树各个结点 xff08 2 xff09 根结点以及各个子树结点可以点击 x
  • 常用git命令

    一 背景 做Qt开发一直在Windows平台上 xff0c 客户要求移植到麒麟系统 Windows和麒麟共用一套代码 xff0c 所以麒麟系统上的代码也需要与Git服务器同步 好用的Sourcetree没有Linux版本 xff0c 无奈只
  • 用Qt实现文件转码

    一 背景 用VS做Qt开发 xff0c 源码文件默认是GBK编码 但做跨平台 xff0c 同样的源码复制到麒麟的QtCreator xff0c 必须手动选择GB2312编码才能修改代码 另外 xff0c Windows的Sourcetree
  • 我的程序员之路(20)——2022年年度总结

    在现在的公司工作一年半了 过去的一年收获很多 xff0c 与以往最大的区别是肩上压了一个项目 尽管我只负责技术方面的工作 xff0c 但是要协调各方面 xff0c 也是件很麻烦的事 尤其是跟用户方的接触 xff0c 是极大的提升了业务知识
  • C++中回调函数的一个简单例子?

    回调函数应用实例 xff1a 1 定义一个Person类 xff08 Person h xff09 文件 xff1a 注意 xff1a 在这个类中指定了回调函数 xff0c 回调函数的执行者 xff0c 和回调函数指针 重要的是 回调函数
  • Docker容器的端口映射

    在Docker容器的日常使用中 xff0c 有以下5种常见的端口映射方式 1 对容器暴露的所有端口 xff0c 随机映射宿主机端口 P xff0c publish all 61 true false xff0c 默认为false span
  • wsl不动了,wsl2不动了。不响应

    原来是用vim编辑时 xff0c 习惯了 xff0c 按了ctrl 43 s的原因 Ctrl 43 s 在终端下是有特殊用途的 xff0c 那就是暂停该终端 xff0c Ctrl 43 q 退出这种状态 xff0c 让终端继续运行
  • Ubuntu Server 20.04最小部署openstack Wallaby(四)——Nova

    Compute服务与其他OpenStack服务协作 xff0c 协调各种工作 xff0c 是OpenStack的核心服务 xff0c 这里需要操作Controller和Compute两个节点 1 Controller节点配置 创建数据库 注
  • debian8 安装&配置 zsh

    请访问我的个人博客 sourcod 安装zshsudo apt get install zsh安装oh my zsh sh c 34 curl fsSL https raw githubusercontent com robbyrussel
  • Conda错误:Collecting package metadata (current_repodata.json): failed

    conda新安装设置清华源后发现并没有使用 xff0c 且会出现错误 Collecting package metadata current repodata json failed 换了科大源也没成功 xff0c 考虑可能是默认源的问题
  • OpenCascade与三角剖分 笔记

    笔记 摘自 http www cppblog com eryar archive 2013 05 26 200605 html 概述 三角剖分是平面剖分中的一个重要课题 xff0c 在数字图像处理 计算机三维曲面造型 有限元计算 逆向工程等
  • 利用DbgHelp获取导出函数信息

    include 34 stdafx h 34 include lt Windows h gt include lt imagehlp h gt include lt locale h gt pragma comment lib 34 Dbg
  • 《iOS之导航控制器的使用图解》

    通过代码的方式实现 xff1a 导航控制器 导航栏 xff08 height64 xff0c status状态20 xff0c 导航部分44 xff09 内容部分 导航控制器栈 xff1a 通过storyboard方式实现页面导航 设置默认
  • 【Ubuntu笔记】ubuntu18.04设置开机启动命令/脚本的三种方法(可sudo)

    转自微信 谭狗星 很多时候想开机时便启动想要启动的命令 xff08 甚至是需要sudo的命令 xff09 但是如何设置呢 xff0c 一般来说有以下三种方法 xff08 本文针对的是ubuntu18 04设置开机启动命令或者脚本 xff09
  • Pyperclip模块详解

    一 Pyperclip模块安装 Pyperclip模块兼容python2和python3 xff0c 能跨平台使用 安装指令如下 xff0c 在Anaconda的终端执行如下指令 pip install pyperclip 二 Pyperc
  • 如何在Ubuntu 18.04上安装Docker

    选项1 xff1a 使用默认存储库在Ubuntu上安装Docker 第1步 xff1a 更新软件存储库 更新本地软件数据库以确保可以访问最新版本 打开终端并输入 xff1a sudo apt get update 第2步 xff1a 卸载旧
  • iOS创建自己的pod库

    一 背景 在iOS开发中 xff0c 我们经常会使用到一些第三方库 xff0c 如AFNetworking SDWebImage等 xff0c 一般使用cocoapods来管理 本篇文章将介绍如何封装自己的pod库 二 封装步骤 1 在本地

随机推荐

  • Mac OS系统磁盘空间不断减少,直到为0

    问题描述 xff08 从网络摘录 xff09 xff1a 昨天上午Mac OS系统突然警告硬盘空间不足 xff0c 建议删除多余文件 经过清理后硬盘出现20G自由空间 xff0c 但今天系统再次警告硬盘空间不足 只好再次删除一些文件 xff
  • Git,Github和Gitlab简介和使用方法

    日期 xff1a 2016 08 04 来源 xff1a 简书 作者 xff1a frogoscar 字体 xff1a 大 中 小 来源 xff1a https www jianshu com p 8d497989f704 这年头不知道Gi
  • Ubuntu设置清华源

    为了在Ubuntu下安装软件快些 xff0c 需要使用国内的源 xff0c 比如清华源 步骤如下 xff1a 一 xff1a 备份源文件 cd etc apt 然后会显示下面的源文件sources list 输入命令行 xff1a cp为c
  • Git 中忽略某些文件或者文件夹

    Git 中忽略某些文件或者文件夹 有些时候 xff0c 你必须把某些文件放到Git工作目录中 xff0c 但又不能提交它们 xff0c 比如保存了数据库密码的配置文件啦 xff0c 等等 xff0c 每次git status都会显示 Unt
  • 教程:简单十步,在 iTunes 申请 App Store 退款

    你常在 App Store 买应用或音乐吗 xff1f 你肯定有因为买到坑爹的应用而心情糟糕 懊悔不已吧 xff1f 在这种情况下 xff0c 可能有一部分同学知道能向苹果提交退款申请 xff0c 但相信仍有很大一部分同学并不知道还有此等
  • Mac 终于有显示隐藏文件的快捷键了

    转载至 xff1a https hran me archives shortcuts to show hiden files in macos sierra html 在 macOS Sierra 之前 xff0c 要在 Finder 中查
  • UISearchBar的占位符 (Placeholder,包括图片文字) 如何居左显示 ?

    转载至 xff1a https blog csdn net qq 33226881 article details 76512656 UISearchBar的占位符 Placeholder 如何居左显示 xff1f 做项目的时候遇到这个问题
  • C语言冒泡排序

    1 基本原理 冒泡排序指的是在排序时 xff0c 每次比较数组中相邻的两个数组元素的值 xff0c 较小的数 xff08 从小到大排列 xff09 排在较大的数前面 排序的基本思想 两两相邻的元素进行比较 xff0c 并且可能的话需要进行交
  • dell optiplex ubuntu 14.04 安装 NVIDIA 显卡驱动

    公司配置的 dell optiplex使用核显带起双屏幕 xff0c 玩dota2无法特效全开 so xff0c 在京东上买了一块750Ti 安装驱动的时候需要切换到ubuntu的全命令行模式 xff0c 关掉桌面系统才能安装 这时候这个坑
  • golang tcp 2 unix socket proxy

    想将mysql 的TCP 封死 xff0c 所有外部链接由我的proxy来控制 xff0c so 写了一个 tcp 转 unix socket 的 proxy package main import 34 os 34 34 fmt 34 3
  • backup mysql for xtrabackup with xbstream and lz4

    需要临时为mysql添加一个实例 xff0c 使用xtrabackup最简单快速 在现有数据节点上 xff1a home work app xtrabackup 2 2 3 innobackupex ibbackup 61 home wor
  • MySQL分组排序取前N条记录以及生成自动数字序列--group by 后 limit 外加 rownumber

    同事提了一个需求 xff0c 要求按照某列分组 xff0c 然后将各组的前几条抽取出来 表结构 CREATE TABLE 96 total freq ctrl 96 96 time 96 int 10 unsigned NOT NULL 9
  • docker init 起步

    yum install wget http fedora mirror nexicom net epel 6 x86 64 epel release 6 8 noarch rpm yum y install epel release 6 8
  • 设置xrdp使用固定的会话

    修改xrdp ini配置文件 xff0c 位于 etc xrdp xrdp ini 要打开和编辑xrdp的配置文件 xff0c 请使用 xff1a sudo nano etc xrdp xrdp ini 默认情况下 xff0c 第一个xrd
  • 回想当年 91d2 1588 神戒

    渡鳥之箍 全JP属性 xff0c 1588成交
  • mysql 事务 rollback 失效

    最近支付业务发生了一件怪事 xff0c 在一个事务 失败后 xff0c 调用rollback xff0c 发现只rollback 了最后一条sql 开发查了很久 xff0c 发现是网络抖动 xff0c 造成第一次创建链接的 begin 丢掉
  • 旅游

    每次出游 我们自己看来 别人看来 实际上
  • 使用cgroup 限制进程的磁盘io

    cat etc cgconfig conf Copyright IBM Corporation 2007 Authors Balbir Singh lt balbir 64 linux vnet ibm com gt This progra
  • mac ox ssd 开启 trim

    使用clover 补丁开启
  • aerospike参考资料

    本文转自 xff1a http blog csdn net songhuiqiao article details 50324073 aerospike QQ群 xff1a 419183757 http blog csdn net jias