大对象管理

GBase 8t Large Object Locator DataBlade 模块允许您创建针对大对象的单个一致接口。它扩展了大对象的概念以包含存储在数据库以外的数据。Large Object Locator 扩展允许您创建针对大对象的单个一致接口。它扩展了大对象的概念以包含存储在数据库以外的数据。

GBase 8t 将大对象数据(长度超过 255 个字节或包含非 ASCII 字符的数据)存储在数据库的列中。可以使用标准的 SQL 语句访问此数据。该服务器还提供了用于在大对象列与文件之间复制数据的函数。请参阅 GBase 8t SQL 指南:语法GBase 8t SQL 指南:教程 以获取更多信息。

通过 Large Object Locator,可以创建对大对象的引用,并将其以行的形式存储在数据库中。对象本身可以位于数据库外部:例如,在文件系统上(也可以是数据库中 BLOB 或 CLOB 类型的列)。 该引用识别对象的类型或访问协议,并指向其存储位置。例如,可以将对象识别为文件并为其提供路径名,或将对象识别为存储在数据库中的二进制或字符智能大对象。智能大对象是包含存储文本和图像的 CLOB 和 BLOB 数据类型的大对象类别。智能大对象分段存储和检索,且具有崩溃恢复和事务回滚之类的数据库属性。

可以通过将大对象的引用传递到 Large Object Locator 函数来访问大对象。 例如,要打开大对象以进行读取或写入,可以将其引用传递到 lld_open() 函数。此函数使用该引用来查找对象的位置和识别其类型。然后根据对象的类型调用相应底层函数来打开该对象。例如,如果对象存储在 UNIX™ 文件系统中,lld_open() 将调用 UNIX 函数来打开该对象。
重要: 理论上,可以使用 Large Object Locator 来引用任何存储位置中任何类型的大对象。实际上,必须在 Large Object Locator 中为每种类型的受支持对象构建访问协议。由于可以随时添加对新类型的支持,所以请务必阅读本出版物随附的发行说明(而非出版物本身),以便查看 Large Object Locator 当前支持的大对象类型。