orientdborientdb入门


备注

本节概述了orientdb是什么,以及开发人员可能想要使用它的原因。

它还应该提到orientdb中的任何大型主题,并链接到相关主题。由于orientdb的文档是新的,您可能需要创建这些相关主题的初始版本。

安装或设置

OrientDB有两个版本:

  • Community Edition作为Apache 2许可下的开源项目发布 。此许可证允许开源和商业项目的无限制免费使用。

  • Enterprise Edition是基于Community Edition构建的商业软件。 Enterprise由开发OrientDB引擎的同一团队开发。它是Community Edition的扩展,提供Enterprise功能,例如:

    • 不间断备份和还原
    • 预定的完整备份和增量备份
    • 查询分析器
    • 分布式群集配置
    • 度量标准记录
    • 带可配置警报的实时监控

Community Edition可作为二进制包下载或作为GitHub上的源代码提供。 Enterprise Edition许可证包含在支持购买中。

先决条件

两个版本的OrientDB都可以在任何实现Java虚拟机(JVM)的操作系统上运行。这些例子包括:

  • Linux,所有发行版,包括ARM(Raspberry Pi等)
  • Mac OS X.
  • Microsoft Windows,95 / NT及更高版本
  • 的Solaris
  • HP-UX
  • IBM AIX

OrientDB需要Java 1.7或更高版本。

注意 :在OSGi容器中,OrientDB使用concurrentlinkedhashmap提供的ConcurrentLinkedHashMap 实现来创建基于LRU的缓存。该库主动使用sun.misc包,该包通常不作为系统包公开。要克服此限制,您应该将值为sun.misc 属性org.osgi.framework.system.packages.extra 添加到框架属性列表中。

它可能就像将参数传递给启动平台的VM一样简单:

$ java -Dorg.osgi.framework.system.packages.extra=sun.misc

使用Docker

如果您的计算机中安装了Docker,这是运行OrientDB的最简单方法。从命令行类型:

$ docker run -d –-name orientdb -p 2424:2424 -p 2480:2480
   -e ORIENTDB_ROOT_PASSWORD=root orientdb:latest
 

而不是“root”,键入要使用的root密码。

二进制安装

OrientDB提供了一个预编译的二进制包,用于在您的系统上安装数据库。根据您的操作系统,这是一个tarred或压缩包,其中包含运行OrientDB所需的所有相关文件。对于桌面安装,请转至OrientDB下载并选择最适合您系统的软件包。

在服务器安装上,您可以使用wget 实用程序:

$ wget https://orientdb.com/download.php?file=orientdb-community-2.2.0.tar.gz

无论是使用Web浏览器还是wget ,将下载的文件解压缩或解压缩到便于使用的目录中(例如,Linux上的/opt/orientdb/ )。这将创建一个名为orientdb-community-2.2.0 的目录,其中包含相关文件和脚本,您需要在系统上运行OrientDB。

源代码安装

除了下载二进制包之外,您还可以选择使用GitHub上提供的Community Edition源代码编译OrientDB。此过程要求您在系统上安装GitApache Maven

要从源代码编译OrientDB,请克隆Community Edition存储库,然后在新创建的目录中运行Maven( mvn ):

$ git clone https://github.com/orientechnologies/orientdb
$ git checkout develop
$ cd orientdb
$ mvn clean install

可以跳过测试:

$ mvn clean install -DskipTests

develop分支包含下一版OrientDB的代码。稳定版本在主分支上标记。对于每个维护版本,OrientDB都有自己的hotfix 分支。在写这篇笔记的时候,分支的状态是:

  • 开发:下一个3.0.x版本正在进行中(3.0.x-SNAPSHOT)
  • 2.2.x:下一个2.2.x稳定版的热修复(2.2.x-SNAPSHOT)
  • 2.1.x:下一个2.1.x稳定版本的热修复(2.1.x-SNAPSHOT)
  • 2.0.x:下一个2.0.x稳定版的热修复(2.0.x-SNAPSHOT)
  • master上的最后一个标签是2.2.0

构建过程在本地maven存储库中安装所有jar,并在target 目录内的distribution 模块下创建存档。在撰写本文时,从分支2.1.x开始构建:

$ls -l distribution/target/
total 199920
    1088 26 Jan 09:57 archive-tmp
     102 26 Jan 09:57 databases
     102 26 Jan 09:57 orientdb-community-3.0.0-SNAPSHOT.dir
48814386 26 Jan 09:57 orientdb-community-3.0.0-SNAPSHOT.tar.gz
53542231 26 Jan 09:58 orientdb-community-3.0.0-SNAPSHOT.zip
$

目录orientdb-community-3.0.0-SNAPSHOT.dir 包含未压缩的OrientDB分发。如果您想参与,请查看Contribute to OrientDB。

每个分发包都包含一个名为GratefulDeadConcerts的示例数据库。可以生成数据库:

$ cd distribution/
$ mvn  prepare-package
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building OrientDB Community Distribution ...
...
Importing GRAPHML database from ../graphdb/src/test/resources/graph-example-2.xml with options ()...
Done: imported 809 vertices and 8049 edges
Imported in 1141ms. Vertexes: 809

数据库在目标目录中创建

$ ls target/databases/
GratefulDeadConcerts/
更新权限

对于Linux,Mac OS X和基于UNIX的操作系统,您需要在从源代码编译后更改某些文件的权限。

$ chmod 755 bin/*.sh
$ chmod -R 777 config

这些命令更新config/ 目录中文件的执行权限和bin/ shell脚本,确保您可以运行已编译的脚本或程序。

安装后任务

对于安装二进制文件的桌面用户,现在安装了OrientDB,并且可以通过安装的软件包bin 目录中的shell脚本运行。对于服务器,为了管理OrientDB作为服务的数据库服务器,还需要执行一些其他步骤。此过程因操作系统而异。

  • 在Unix,Linux和Mac OS X上安装为服务
  • 在Microsoft Windows上安装为服务

升级

当需要升级到更新版本的OrientDB时,这些方法会根据您选择安装它的方式而有所不同。如果从二进制下载安装,请重复上面的下载过程并更新任何符号链接或快捷方式以指向新目录。

对于从源构建OrientDB的系统,请下载最新的源代码并从源代码编译。

$ git pull origin master
$ mvn clean install

请记住,从源代码构建时,可以使用Git切换分支以构建不同版本的OrientDB。例如,

$ git checkout 2.2.x
$ mvn clean install

构建2.2.x 分支,而不是master

使用OrientDB构建单个可执行jar

用于内部组件(如引擎,运营商,工厂)的OrientDB使用Java SPI 服务提供程序接口 。这意味着OrientDB的jar包含META-INF/services 中包含组件实现的文件。请记住,在构建单个可执行jar时,必须在不同的orientdb - * .jar中连接具有相同名称的文件内容。如果您使用的是Maven Shade插件 ,则可以使用Service Resource Transformer来执行此操作。

其他资源

要了解有关如何在特定环境中安装OrientDB的更多信息,请参阅以下指南: