Primeros pasos con orientdb

Instalación o configuración

OrientDB está disponible en dos ediciones:

  • Edición comunitaria se publica como un proyecto de código abierto bajo la [licencia de Apache 2](http://www.apache.org/licenses/LICENSE- 2.0.html). Esta licencia permite el uso gratuito sin restricciones para proyectos comerciales y de código abierto.

  • Enterprise Edition es un software comercial creado sobre Community Edition. Enterprise está desarrollado por el mismo equipo que desarrolló el motor OrientDB. Sirve como una extensión de Community Edition y proporciona funciones empresariales, como:

    • Non-Stop Backup and Restore
    • Scheduled FULL and Incremental Backups
    • Query Profiler
    • Distributed Clustering configuration
    • Metrics Recording
    • Live Monitoring with configurable Alerts

Community Edition está disponible como paquete binario para descargar o como código fuente en GitHub. La licencia de Enterprise Edition se incluye con las compras de Soporte.

Requisitos previos

Ambas ediciones de OrientDB se ejecutan en cualquier sistema operativo que implemente la máquina virtual Java (JVM). Ejemplos de estos incluyen:

  • Linux, todas las distribuciones, incluida ARM (Raspberry Pi, etc.)
  • Mac OS X
  • Microsoft Windows, desde 95/NT y posterior -Solaris -HP-UX -IBM AIX

OrientDB requiere Java, versión 1.7 o superior.

Nota: En contenedores OSGi, OrientDB utiliza una implementación ConcurrentLinkedHashMap proporcionada por concurrentlinkedhashmap para crear la memoria caché basada en LRU. Esta biblioteca usa activamente el paquete sun.misc que normalmente no se expone como un paquete del sistema. Para superar esta limitación, debe agregar la propiedad org.osgi.framework.system.packages.extra con el valor sun.misc a su lista de propiedades del marco.

Puede ser tan simple como pasar un argumento a la máquina virtual que inicia la plataforma:

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

Usar la ventana acoplable

Si tiene Docker instalado en su computadora, esta es la forma más fácil de ejecutar OrientDB. Desde la línea de comando escribe:

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

Donde en lugar de “root”, escriba la contraseña de root que desea usar.

Instalación binaria

OrientDB proporciona un paquete binario precompilado para instalar la base de datos en su sistema. Dependiendo de su sistema operativo, este es un paquete comprimido o alquitranado que contiene todos los archivos relevantes que necesita para ejecutar OrientDB. Para instalaciones de escritorio, vaya a Descargas de OrientDB y seleccione el paquete que mejor se adapte a su sistema.

En las instalaciones del servidor, puede usar la utilidad wget:

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

Ya sea que use su navegador web o wget, descomprima o extraiga el archivo descargado en un directorio conveniente para su uso (por ejemplo, /opt/orientdb/ en Linux). Esto crea un directorio llamado orientdb-community-2.2.0 con archivos y scripts relevantes, que necesitará para ejecutar OrientDB en su sistema.

Instalación del código fuente

Además de descargar los paquetes binarios, también tiene la opción de compilar OrientDB desde el código fuente de Community Edition, disponible en GitHub. Este proceso requiere que instale Git y Apache Maven en su sistema.

Para compilar OrientDB a partir del código fuente, clone el repositorio de Community Edition y luego ejecute Maven (mvn) en el directorio recién creado:

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

Es posible saltarse las pruebas:

$ mvn clean install -DskipTests

La rama de desarrollo contiene código para la próxima versión de OrientDB. Las versiones estables están etiquetadas en la rama maestra. Para cada versión mantenida, OrientDB tiene su propia rama hotfix. Al momento de escribir estas notas, el estado de las sucursales es:

  • desarrollo: trabajo en progreso para la próxima versión 3.0.x (3.0.x-SNAPSHOT)
  • 2.2.x: revisión para la próxima versión estable de 2.2.x (2.2.x-SNAPSHOT)
  • 2.1.x: revisión para la próxima versión estable de 2.1.x (2.1.x-SNAPSHOT)
  • 2.0.x: revisión para la próxima versión estable de 2.0.x (2.0.x-SNAPSHOT)
  • la última etiqueta en el maestro es 2.2.0

El proceso de compilación instala todos los archivos jar en el repositorio maven local y crea archivos en el módulo distribution dentro del directorio target. En el momento de escribir este artículo, la construcción desde la rama 2.1.x daba:

$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
$

El directorio orientdb-community-3.0.0-SNAPSHOT.dir contiene la distribución de OrientDB sin comprimir. Eche un vistazo a Contribute to OrientDB si desea participar.

Cada paquete de distribución contiene una base de datos de muestra llamada GratefulDeadConcerts. Es posible generar la base de datos:

$ 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

La base de datos se crea dentro del directorio de destino.

$ ls target/databases/
GratefulDeadConcerts/

Permisos de actualización

Para los sistemas operativos basados ​​en Linux, Mac OS X y UNIX, debe cambiar los permisos de algunos de los archivos después de compilarlos desde el origen.

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

Estos comandos actualizan los permisos de ejecución en archivos en el directorio config/ y scripts de shell en bin/, lo que garantiza que pueda ejecutar los scripts o programas que ha compilado.

Tareas posteriores a la instalación

Para los usuarios de escritorio que instalan el binario, OrientDB ahora está instalado y se puede ejecutar a través de scripts de shell que se encuentran en el directorio del paquete bin de la instalación. Para los servidores, hay algunos pasos adicionales que debe seguir para administrar el servidor de la base de datos para OrientDB como un servicio. El procedimiento para esto varía, dependiendo de su sistema operativo.

Actualización

Cuando llega el momento de actualizar a una versión más nueva de OrientDB, los métodos varían según cómo haya elegido instalarlo en primer lugar. Si instaló desde descargas binarias, repita el proceso de descarga anterior y actualice los enlaces simbólicos o accesos directos para que apunten al nuevo directorio.

Para los sistemas en los que OrientDB se creó a partir de la fuente, extraiga el código fuente más reciente y compile desde la fuente.

$ git pull origin master
$ mvn clean install

Tenga en cuenta que cuando compila desde el código fuente, puede cambiar de rama para compilar diferentes versiones de OrientDB usando Git. Por ejemplo,

$ git checkout 2.2.x
$ mvn clean install

construye la rama 2.2.x, en lugar de master.

Construyendo un único jar ejecutable con OrientDB

OrientDB para componentes internos como motores, operadores, fábricas utiliza Java SPI [Interfaz de proveedor de servicios] (https://docs.oracle.com/javase/tutorial/ext/basics/spi.html). Eso significa que los archivos jar de OrientDB se envían con archivos en META-INF/services que contienen la implementación de los componentes. Tenga en cuenta que al crear un solo jar ejecutable, debe concatenar el contenido de los archivos con el mismo nombre en diferentes orientdb-*.jar. Si está utilizando [Maven Shade Plugin] (https://maven.apache.org/plugins/maven-shade-plugin/), puede usar [Service Resource Transformer] (https://maven.apache.org/plugins/ maven-shade-plugin/examples/resource-transformers.html#ServicesResourceTransformer) para hacerlo.

Otros recursos

Para obtener más información sobre cómo instalar OrientDB en entornos específicos, consulte las guías a continuación: