📜  OrientDB-列表数据库(1)

📅  最后修改于: 2023-12-03 15:18:10.476000             🧑  作者: Mango

OrientDB - 列列表数据库

简介

OrientDB 是一个支持 Graph,Document 和 Key/Value 数据库模型的开源多模型数据库管理系统。它由意大利的 Orient Technologies 公司开发并发布。OrientDB 支持 ACID 事务,也支持 SQL 和灵活的查询语言,以及分布式和高可用性。OrientDB 被广泛应用于互联网、社交网络、游戏、企业应用、电信和生物医学等领域。

特性与优点
  • 支持多数据模型:Graph, Document, Key/Value;
  • 分布式:集群支持异步复制和 sharding;
  • 高可用性:自动容错、备份和恢复;
  • ACID 事务:支持多条记录的跨文档 ACID 事务;
  • SQL和类SQL语言:OrientDB 直接扩展了 SQL,可以直接定义类,在类中添加或查询数据。
  • 灵活的查询:OrientDB 支持灵活的查询,包括图形查询、嵌套查询、索引查询、脚本查询和遍历等;
  • 强大的集成:提供了原生的 JDBC 驱动程序和 ODBC 驱动程序支持;
  • 可扩展性:可用于构建大型、高性能、分布式系统或嵌入式系统。
安装

官网提供了多种方式的安装介质,包括源码、二进制等。

官方文档推荐方式

这里采用官方文档推荐的安装方式,即通过 Homebrew 安装 OrientDB。

brew update
brew install orientdb
使用
数据库管理控制台

安装成功后,可以通过以下方式启动管理控制台:

brew services start orientdb
orientdb studio
代码示例

以下示例演示了如何使用 OrientDB 的 Java API。

创建数据库

String dbName = "dbName";
String dbUser = "root";
String dbPassword = "root";
String orientDbUrl = "remote:localhost/" + dbName;
String orientUser = dbUser;
String orientPassword = dbPassword;
OrientDB orientDB = new OrientDB(orientDbUrl, OrientDBConfig.defaultConfig());
orientDB.create(dbName, ODatabaseType.PLOCAL, OrientDBConfig.defaultConfig());
ODatabaseSession db = orientDB.open(dbName, orientUser, orientPassword);

创建类

ODatabaseSession db = ...;
OClass person = db.createVertexClass("Person");
person.createProperty("name", OType.STRING);
person.createProperty("age", OType.INTEGER);
person.createIndex("Person_name_index", INDEX_TYPE.UNIQUE, "name");

插入数据

ODatabaseSession db = ...;
OVertex person = db.newVertex("Person");
person.setProperty("name", "张三");
person.setProperty("age", 18);
person.save();

查询数据

ODatabaseSession db = ...;
String query = "SELECT * FROM Person WHERE name = ?";
List<ODocument> result = db.query(new OSQLSynchQuery<>(query), "张三");
维护与商业支持
  • 官方网站:https://orientdb.com/
  • 官方文档:https://orientdb.com/docs/
  • 论坛:https://community.orientdb.com/
  • 商业支持:https://orientdb.com/support/