OrientDB 教程

OrientDB - 主页 OrientDB - 概述 OrientDB - 安装 OrientDB - 基本概念 OrientDB - 数据类型 OrientDB - 控制台模式

OrientDB 数据库命令

OrientDB - 创建数据库 OrientDB - 更改数据库 OrientDB - 备份数据库 OrientDB - 恢复数据库 OrientDB - 连接数据库 OrientDB - 断开数据库 OrientDB - 信息数据库 OrientDB - 列出数据库 OrientDB - 冻结数据库 OrientDB - 释放数据库 OrientDB - 配置数据库 OrientDB - 导出数据库 OrientDB - 导入数据库 OrientDB - 提交数据库 OrientDB - 回滚数据库 OrientDB - 优化数据库 OrientDB - 删除数据库

OrientDB 记录命令

OrientDB - 插入记录 OrientDB - 显示记录 OrientDB - 加载记录 OrientDB - 重新加载记录 OrientDB - 导出记录 OrientDB - 更新记录 OrientDB - 截断记录 OrientDB - 删除记录

OrientDB 类命令

OrientDB - 创建类 OrientDB - 更改类 OrientDB - 截断类 OrientDB - 删除类

OrientDB 集群命令

OrientDB - 创建集群 OrientDB - 更改群集 OrientDB - 截断群集 OrientDB - 删除群集

OrientDB 属性命令

OrientDB - 创建属性 OrientDB - 更改属性 OrientDB - 删除属性

OrientDB 顶点命令

OrientDB - 创建顶点 OrientDB - 移动顶点 OrientDB - 删除顶点

OrientDB 边命令

OrientDB - 创建边 OrientDB - 更新边 OrientDB - 删除边

OrientDB高级概念

OrientDB - 函数 OrientDB - 序列 OrientDB - 索引 OrientDB - 事务 OrientDB - 钩子 OrientDB - 缓存 OrientDB - 日志 OrientDB - 性能调优 OrientDB - 升级 OrientDB - 安全 OrientDB - Studio

OrientDB 接口

OrientDB - Java 接口 OrientDB - Python 接口

OrientDB 有用资源

OrientDB - 快速指南 OrientDB - 有用资源 OrientDB - 讨论


OrientDB - 基本概念

OrientDB 的主要功能是支持多模型对象,即它支持不同的模型,如文档、图形、键/值和真实对象。它包含一个单独的 API 来支持所有这四种模型。

文档模型

术语文档模型属于 NoSQL 数据库。这意味着数据存储在文档中,文档组称为集合。从技术上讲,文档是指一组键/值对,也称为字段或属性。

OrientDB 使用类、集群和链接等概念来存储、分组和分析文档。

下表说明了关系模型、文档模型和 OrientDB 文档模型之间的比较 −

关系模型文档模型OrientDB 文档模型
集合类或集群
文档文档
键/值对文档字段
关系不可用链接

图形模型

图形数据结构是一种数据模型,可以以由边(弧)互连的顶点(节点)的形式存储数据。OrientDB 图形数据库的理念源自属性图。顶点和边是图形模型的主要构件。它们包含属性,可以使它们看起来与文档相似。

下表显示了图形模型、关系数据模型和 OrientDB 图形模型之间的比较。

关系模型图形模型OrientDB 图形模型
顶点和边类扩展"V"(表示顶点)和"E"(表示边)的类
顶点顶点
顶点和边属性顶点和边属性
关系

键/值模型

键/值模型意味着数据可以以键/值对的形式存储,其中值可以是简单类型或复杂类型。它可以支持文档和图形元素作为值。

下表说明了关系模型、键/值模型和 OrientDB 键/值模型之间的比较。

关系模型键/值模型OrientDB 键/值模型
类或集群
键/值对文档
不可用文档字段或顶点/边属性
关系不可用链接

对象模型

该模型已被面向对象编程继承,并支持类型之间的继承(子类型扩展了超类型)、引用基类时的多态性以及编程语言中使用的对象的直接绑定

下表说明了关系模型、对象模型和 OrientDB 对象模型之间的比较。

关系模型对象模型OrientDB 对象模型
类或集群
对象文档或顶点
对象属性文档字段或顶点/边属性
关系指针链接

在详细了解之前,最好先了解与 OrientDB 相关的基本术语。以下是一些重要术语。

记录

您可以加载并存储在数据库中的最小单位。记录可以存储在四种类型中。

  • 文档
  • 记录字节
  • 顶点

记录 ID

当 OrientDB 生成记录时,数据库服务器会自动为该记录分配一个单元标识符,称为 RecordID (RID)。RID 看起来像 #<cluster>:<position>。<cluster> 表示簇标识号,<position>表示记录在集群中的绝对位置。

文档

文档是 OrientDB 中最灵活的记录类型。文档是软类型的,由具有定义约束的模式类定义,但您也可以插入没有任何模式的文档,即它也支持无模式模式。

可以通过 JSON 格式的导出和导入轻松处理文档。例如,查看以下 JSON 示例文档。它定义了文档详细信息。

{ 
   "id"        : "1201", 
   "name"      : "Jay", 
   "job"       : "Developer", 
   "creations" : [ 
      { 
         "name"    : "Amiga", 
         "company" : "Commodore Inc." 
      }, 
		
      { 
         "name"    : "Amiga 500", 
         "company" : "Commodore Inc." 
      } 
   ] 
} 

记录字节

记录类型与 RDBMS 中的 BLOB 类型相同。OrientDB 可以加载和存储文档记录类型以及二进制数据。

顶点

OrientDB 数据库不仅是文档数据库,也是图形数据库。使用顶点和边等新概念以图形形式存储数据。在图形数据库中,最基本的数据单元是节点,在 OrientDB 中称为顶点。顶点存储数据库的信息。

有一种单独的记录类型称为边,它将一个顶点连接到另一个顶点。边是双向的,只能连接两个顶点。OrientDB 中有两种类型的边,一种是常规的,另一种是轻量级的。

类是一种数据模型,也是从面向对象编程范式中得出的概念。基于传统的文档数据库模型,数据以集合的形式存储,而在关系数据库模型中,数据存储在表中。OrientDB 遵循文档 API 和 OPPS 范式。作为一个概念,OrientDB 中的类与关系数据库中的表具有最密切的关系,但(与表不同)类可以是无模式、全模式或混合模式。类可以从其他类继承,从而创建类树。每个类都有自己的一个或多个集群(如果未定义,则默认创建)。

集群

集群是一个重要的概念,用于存储记录、文档或顶点。简而言之,集群是存储一组记录的地方。默认情况下,OrientDB 将为每个类创建一个集群。类的所有记录都存储在与类同名的同一集群中。您可以在数据库中创建最多 32,767 (2^15-1) 个集群。

CREATE 类是用于创建具有特定名称的集群的命令。创建集群后,您可以在创建任何数据模型时指定名称,从而使用该集群保存记录。

关系

OrientDB 支持两种关系:引用和嵌入。引用关系表示它将直接链接存储到关系的目标对象中。嵌入关系表示它将关系存储在嵌入它的记录中。这种关系比引用关系更强。

数据库

数据库是访问实际存储的接口。IT 了解查询、模式、元数据、索引等高级概念。OrientDB 还提供多种数据库类型。有关这些类型的更多信息,请参阅数据库类型。