ArangoDB 3.2.8 发布,多模式数据库

栏目: 软件资讯 · 发布时间: 7年前

内容简介:ArangoDB 3.2.8 已发布,ArangoDB 是一个开源的分布式原生多模型数据库 (Apache 2 license)。 理念   利用一个引擎,一个 query 语法,一项数据库技术,以及多个数据模型,来最大力度满足项目的灵活性,简化技...

ArangoDB 3.2.8 已发布,ArangoDB 是一个开源的分布式原生多模型数据库 (Apache 2 license)。

理念  

利用一个引擎,一个 query 语法,一项数据库技术,以及多个数据模型,来最大力度满足项目的灵活性,简化技术堆栈,简化数据库运维,降低运营成本。

ArangoDB原生多模型数据库,指的是兼有图 (graph)、文档 (document)和键/值对 (key/value) 三种数据模型存储软件。其快捷灵活之处在于,它有适用于全部三种数据模型的统一内核和统一数据库查询语言——AQL (ArangoDB Query Language)。其可以涵盖全部三种数据模型,还允许在单个查询中混合使用三种数据模型。

因此,用户可以在单次查询过程中混合使用多种数据模型,而无需在不同数据模型间相互“切换”,也不需要执行数据传输过程。并且这三种数据模型均支持水平扩展。基于其本地集成多模型特性,ArangoDB 原生多模型数据库适用于搭建高性能应用程序。

该版本更新内容较多,详细如下:

removed `--recycle-ids` option for arangorestore

  using that option could have led to problems on the restore, with potential
  id conflicts between the originating server (the source dump server) and the 
  target server (the restore server)

* add readonly mode REST API

* allow compilation of ArangoDB source code with g++7

* AQL: during a traversal if a vertex is not found. It will not print an ERROR to the log and continue
  with a NULL value, but will register a warning at the query and continue with a NULL value.
  The situation is not desired as an ERROR as ArangoDB can store edges pointing to non-existing
  vertex which is perfectly valid, but it may be a n issue on the data model, so users
  can directly see it on the query now and do not "by accident" have to check the LOG output.

* potential fix for issue #3562: Document WITHIN_RECTANGLE not found

* introduce `enforceReplicationFactor` attribute for creating collections: 
  this optional parameter controls if the coordinator should bail out during collection 
  creation if there are not enough DBServers available for the desired `replicationFactor`.

* fixed issue #3516: Show execution time in arangosh
    
  this change adds more dynamic prompt components for arangosh
  The following components are now available for dynamic prompts, 
  settable via the `--console.prompt` option in arangosh:
    
  - '%t': current time as timestamp
  - '%p': duration of last command in seconds
  - '%d': name of current database
  - '%e': current endpoint
  - '%E': current endpoint without protocol
  - '%u': current user
    
  The time a command takes can be displayed easily by starting arangosh with `--console.prompt "%p> "`.

* make the ArangoShell refill its collection cache when a yet-unknown collection
  is first accessed. This fixes the following problem:

      arangosh1> db._collections();  // shell1 lists all collections
      arangosh2> db._create("test"); // shell2 now creates a new collection 'test'
      arangosh1> db.test.insert({}); // shell1 is not aware of the collection created
                                     // in shell2, so the insert will fail

* make AQL `DISTINCT` not change the order of the results it is applied on

* incremental transfer of initial collection data now can handle partial 
  responses for a chunk, allowing the leader/master to send smaller chunks 
  (in terms of HTTP response size) and limit memory usage

  this optimization is only active if client applications send the "offset" parameter
  in their requests to PUT `/_api/replication/keys/<id>?type=docs`

* initial creation of shards for cluster collections is now faster with
  `replicationFactor` values bigger than 1. this is achieved by an optimization
  for the case when the collection on the leader is still empty

* potential fix for issue #3517: several "filesystem full" errors in logs 
  while there's a lot of disk space

* added C++ implementations for AQL function `SUBSTRING()`, `LEFT()`, `RIGHT()` and `TRIM()`

* show C++ function name of call site in ArangoDB log output

  this requires option `--log.line-number` to be set to *true*

* UI: added word wrapping to query editor

* UI: fixed wrong user attribute name validation, issue #3228

* make AQL return a proper error message in case of a unique key constraint
  violation. previously it only returned the generic "unique constraint violated"
  error message but omitted the details about which index caused the problem.

  This addresses https://stackoverflow.com/questions/46427126/arangodb-3-2-unique-constraint-violation-id-or-key

* added option `--server.local-authentication`

* UI: added user roles

* added config option `--log.color` to toggle colorful logging to terminal

* added config option `--log.thread-name` to additionally log thread names

* usernames must not start with `:role:`, added new options:
    --server.authentication-timeout
    --ldap.roles-attribute-name
    --ldap.roles-transformation
    --ldap.roles-search
    --ldap.superuser-role
    --ldap.roles-include
    --ldap.roles-exclude

* performance improvements for full collection scans and a few other operations
  in MMFiles engine

* added `--rocksdb.encryption-key-generator` for enterprise

* removed `--compat28` parameter from arangodump and replication API
  
  older ArangoDB versions will no longer be supported by these tools.

* increase the recommended value for `/proc/sys/vm/max_map_count` to a value
  eight times as high as the previous recommended value. Increasing the
  values helps to prevent an ArangoDB server from running out of memory mappings.

  The raised minimum recommended value may lead to ArangoDB showing some startup
  warnings as follows:

      WARNING {memory} maximum number of memory mappings per process is 65530, which seems too low. it is recommended to set it to at least 512000
      WARNING {memory} execute 'sudo sysctl -w "vm.max_map_count=512000"'

此外,3.3.rc1 也已发布,更多内容请查看更新日志

发布说明:https://github.com/arangodb/arangodb/releases


【声明】文章转载自:开源中国社区 [http://www.oschina.net]


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

AJAX企业级开发

AJAX企业级开发

Davec Johnson、Alexeic White、Andrec Charland / 张祖良、荣浩、高冰 / 人民邮电出版社 / 2008 / 49.00元

本书首先解释了AJAX 为什么在大规模的开发中能有如此广阔的应用前景,接着系统地介绍了当前重要的AJAX 技术和组件。你将看到把数据表、Web 窗体、图表、搜索和过滤连接在一起用于构建AJAX应用程序的框架开发的整个过程;在此基础上,本书给出了已经过证实的AJAX 架构模式,以及来源于实际的.NET 和Java AJAX 应用程序的案例研究。一起来看看 《AJAX企业级开发》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

SHA 加密
SHA 加密

SHA 加密工具