文档章节

融合RocksDB, Pregel, Fault-Tolerent Foxx & Satellite Collections 怎样使数据库性能提升35%?

GermanWifi
 GermanWifi
发布于 2017/07/27 17:45
字数 1686
阅读 228
收藏 8

RocksDB 存储引擎:

与 Facebook 的 RocksDB 存储引擎的集成,使得其成为架构中第一个可插拔的存储引擎,用户现在可以使用与磁盘一样多的数据。加上 RocksDB 更好的锁定行为(文档级别的锁),密集写入型的应用程序将显著改善性能。没有内存限制,并且只有文档级别的锁定,这将为许多用户消除了两个大障碍。如果选择 RocksDB 作为存储引擎,包括索引在内的所有内容都会持久保留在磁盘上,这就大大减少启动的时间。更多请参阅“比较新RocksDB和mmfiles引擎”的操作方法,以测试操作系统和用例的新引擎。

 

Pregel 分布式图形处理:

分布式图处理在ArangoDB 的图形工具箱中是一个缺失的功能。但是ArangoDB 通过实施Pregel 计算模型满足了这一需求。

通过PageRank,社区检测,顶点中心度量和进一步的算法,ArangoDB现在可以用来获取对图形隐藏特征的高级洞察。例如,您可以使用图形处理功能来检测社区。然后,您可以使用结果将数据有效地分散到集群中,从而使SmartGraph的使用充分发挥其潜力。我们相信,通过集成分布式图处理,用户现在将拥有单个数据库中最完整的图形工具集之一。

使用Pregal 社区检测教程测试新的Pregal 结合,并通过有关在ArangoDB 中使用SmartGraphs 的新教程进一步提高高级graph技能。

 

Foxx 的容错机制:

有容错机制的 Foxx 服务在集群模式下可根据您的需求扩展数据库。

很多开发者喜欢使用ArangoDB 的Foxx JavaScript 框架来实现以数据为中心的微服务。定义您自己的高度可配置的HTTP路由,完全访问C ++级别的ArangoDB内核可以非常方便地实现。在3.2版本中,ArangoDB 的Foxx团队完全重写了管理内部部件,以支持有容错机制的Foxx 服务。这样可以确保多协调器集群将始终保持其服务同步,即使所有现有协调器都不可用,新协调器也将被完全初始化。

通过遵循全新的Foxx教程,自己测试新的有容错机制的Foxx 或学习Foxx

 

强大的图形可视化功能:

使用 ArangoDB 3.2 可以轻松处理图形数据。

您可以通过arangoexport 使用open-source 选项导出数据,然后将其导入到Cytoscape(请参阅教程)。

或者您可以通过Foxx插入全新的Keylines 3.5,并安装按需连接。有了这个选项,您将始终将Keylines中的最新数据整齐地显示出来,不会出现任何导出/导入麻烦。只需按照本教程开始使用ArangoDB和Keylines。

 

只读用户:

为了加强ArangoDB 中的基本用户管理,其添加了只读用户功能。这些用户的权限可以在数据库和收集级别上进行定义。在数据库级别上,用户可以获得管理员权限,读取访问权限或拒绝访问权限。在收集级别,在数据库中,用户可以被给予读/写,只读或拒绝访问。如果用户没有访问数据库或集合,则该用户将不会显示数据库和集合。参考有关新用户管理的教程。

 

地理查询 Geo Index Cursor:

地理查询对我们的社区变得越来越重要。使用geo_cursor,现在可以将文档按距离排列到空间中的某一点(参考教程)。这使得查询变得更简单,像“时代广场周边半英里半径的素食餐厅在哪里?”我们计划在下一个小版本中增加对其他地理空间功能的支持(如多边形)。

 

卫星集合 Satellite Collections:

卫星集合(Satellite Collections)是这次合作的令人振奋的结果。它旨在在使用分片数据集时实现更快的连接操作。为了避免在机器之间的连接处理过程中出现昂贵的网络跳数,只能找到一个解决方案来启用本地连接。

使用Satellite Collections,您可以定义集合以分散到集群,以及将集合设置为复制到每台计算机。 ArangoDB 查询优化器知道每个分片在哪里,并向相关的DBServers 发送请求,然后在本地执行查询。然后,DBservers 会将部分结果发送回协调器,该协调器汇总了最终结果。通过这种方法,可以避免在分片集合的连接操作期间的网络跳跃,从而增加查询性能并减少网络流量。这可以通过一个例子更容易理解。在下面的模式中,集合C被划分到多个机器,而较小的卫星(即,S1-S5)被复制到每个机器上,绕着C的碎片轨道运行。

 

卫星集合的用例很丰富。在这个更深入的博客文章中,我们使用了一个IoT案例。基于基因组测序分析的个性化患者治疗是另一个很好的例子,其中涉及大量数据集的高效联合操作可以帮助改善患者护理并节省基础设施成本。

 

闲时数据加密:

使用RocksDB,您可以使用高度安全的AES算法对存储在磁盘上的数据进行加密。即使有人窃取您的一个磁盘,他们将无法访问数据。通过升级,ArangoDB向HIPAA合规迈出了重要一步。

 

通过LDAP增强身份验证:

通常,用户是通过ArangoDB 进行定义和管理。使用LDAP,您可以使用外部服务器来管理用户。ArangoDB 实现了一个可以扩展的共同模式。如果您有不符合此模式的特殊要求,可以联系ArangoDB。

 

3.2 正式版本下载链接: https://docs.arangodb.com/3.2...

Find ArangoDB on Github

© 著作权归作者所有

共有 人打赏支持
GermanWifi
粉丝 133
博文 16
码字总数 14016
作品 0
德国
程序员
加载中

评论(3)

GermanWifi
GermanWifi

引用来自“东森平台总代”的评论

一脸懵逼的进来,一脸懵逼的出去!

回复@东森平台总代 : 需要更详细一点的解释吗?
东森平台总代
东森平台总代
一脸懵逼的进来,一脸懵逼的出去!
瘦-马
瘦-马
功能太多了,不如把某项做到极致。
key / value 数据库的选型

原文出处:keakon的涂鸦馆 引言 一直以来在我的观念中,key/value 数据库就三种选项: 内存可存放:Redis 单机磁盘可存放:RocksDB 超过 TB 级:Cassandra、HBase…… 然而在实际项目中使用 ...

keakon的涂鸦馆
07/17
0
0
RocksDB 5.14.3 发布,Facebook 推出的存储系统

RocksDB 5.14.3 发布了,RocksDB 是一个来自 Facebook 的可嵌入的支持持久化的 key-value 存储系统,也可作为 C/S 模式下的存储数据库。RocksDB 基于 LevelDB 构建。 更新内容如下: Public...

h4cd
08/23
0
0
RocksDB 5.15.10 发布,修复 RocksDB Java 构建和测试

RocksDB 5.15.10 发布了,RocksDB 是一个来自 Facebook 的可嵌入的支持持久化的 key-value 存储系统,也可作为 C/S 模式下的存储数据库。RocksDB 基于 LevelDB 构建。 更新内容如下: Bug Fi...

h4cd
09/15
0
0
Ceph存储后端ObjectStore架构和技术演进

Ceph是分布式和强一致性的软件定义存储产品,随着越来越多的企业和组织不断加入,Ceph存储系统稳定性、可靠性和易管理性得到了很大的提升,在版本演进和迭代中,Ceph存储的企业特性也得到了完...

架构师技术联盟
08/16
0
0
RocksDB系列十三:How to persist in memory RocksDB database?

  随着服务器内存的增长和更加严格的低延迟需求,很多应用都决定将全部数据存储在内存中。在RocksDB中启动一个全内存的数据库非常简单,只需要将RocksDB数据目录mount到tmpfs or ramfs中即...

薛少佳
07/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周一乱弹 —— 鱼生不值得

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @瘟神灬念:分享新裤子的单曲《没有理想的人不伤心 (Remix版)》: 《没有理想的人不伤心 (Remix版)》- 新裤子 手机党少年们想听歌,请使劲儿戳...

小小编辑
55分钟前
67
7
arts-week10

Algorithm 905. Sort Array By Parity - LeetCode Review Who’s Afraid of the Big Bad Preloader? 一文读懂前端缓存 一个网络请求3个步骤:请求,处理,响应,而前端缓存主要在请求处响应这两步...

yysue
今天
5
0
00.编译OpenJDK-8u40的整个过程

前言 历经2天的折腾总算把OpenJDK给编译成功了,要说为啥搞这个,还得从面试说起,最近出去面试经常被问到JVM的相关东西,总感觉自己以前学的太浅薄,所以回来就打算深入学习,目标把《深入理...

凌晨一点
今天
6
1
python: 一些关于元组的碎碎念

初始化元组的时候,尤其是元组里面只有一个元素的时候,会出现一些很蛋疼的情况: def checkContentAndType(obj): print(obj) print(type(obj))if __name__=="__main__": tu...

Oh_really
昨天
7
2
jvm crash分析工具

介绍一款非常好用的jvm crash分析工具,当jvm挂掉时,会产生hs_err_pid.log。里面记录了jvm当时的运行状态以及错误信息,但是内容量比较庞大,不好分析。所以我们要借助工具来帮我们。 Cras...

xpbob
昨天
197
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部