OrientDB - 升级


升级时,必须考虑版本号和格式。格式分为三种类型 - MAJOR、MINOR、PATCH。

  • 主要版本需要进行不兼容的 API 更改。

  • MINOR版本需要以向后兼容的方式提供功能。

  • PTCH版本需要向后兼容的错误修复。

要在次要版本和主要版本之间同步,您可能需要导出和导入数据库。有时您可能需要将数据库从 LOCAL 迁移到 PLOCAL,并且需要将图形迁移到 RidBag。

从 LOCAL 存储引擎迁移到 PLOCAL

从1.5.x版本开始,OrientDB附带了一个全新的存储引擎:PLOCAL(Paginated LOCAL)。它像 LOCAL 一样具有持久性,但以不同的方式存储信息。以下几点显示了 PLOCAL 和 LOCAL 之间的比较 -

  • 在 PLOCAL 中,记录存储在簇文件中,而在 LOCAL 中,记录在簇和数据段之间分割。

  • 由于写入时追加模式,PLOCAL 比 LOCAL 更持久。

  • PLOCAL 对写入具有较小的争用锁,这意味着更多的并发性。

  • PLOCAL 不使用内存映射技术 (MMap),因此Behave更“可预测”。

要将 LOCAL 存储迁移到新的 PLOCAL,您需要使用 PLOCAL 作为存储引擎导出并重新导入数据库。以下是程序。

步骤 1 - 打开新的 shell (Linux/Mac) 或命令提示符 (Windows)。

步骤 2 - 使用控制台导出数据库。按照给定的命令将数据库演示导出到demo.json.gzip文件中。

$ bin/console.sh (or bin/console.bat under Windows) 
orientdb> CONNECT DATABASE local:/temp/demo admin admin 
orientdb> EXPORT DATABASE /temp/demo.json.gzip 
orientdb> DISCONNECT

步骤 3 - 在本地文件系统上,使用“plocal”引擎创建一个新数据库 -

orientdb> CREATE DATABASE plocal:/temp/newdb admin admin plocal graph 

步骤 4 - 将旧数据库导入新数据库。

orientdb> IMPORT DATABASE /temp/demo.json.gzip -preserveClusterIDs=true 
orientdb> QUIT

如果您在同一个 JVM 中访问数据库,请记住将 URL 从“local:”更改为“plocal:”

将图迁移到 RidBag

从 OrientDB 1.7 开始,RidBag 是管理图中邻接关系的默认集合。虽然由 MVRB-Tree 管理的旧数据库完全兼容,但您可以将数据库更新为更新的格式。

您可以通过控制台或使用ORidBagMigration类升级图表。

  • 连接到数据库 CONNECT plocal:databases/<graphdb-name>

  • 运行升级图命令