为支持用户导入自定义软件包,HybridDB for PostgreSQL 引入了 Create/Drop Library 命令。使用此命令创建 PL/Java 的 UDF 的示例,请参见
PL/Java UDF 的使用。
Create/Drop Library 命令的使用方法如下。
语法CREATE LIBRARY library_name LANGUAGE [JAVA] FROM oss_location OWNER ownername
CREATE LIBRARY library_name LANGUAGE [JAVA] VALUES file_content_hex OWNER ownername
DROP LIBRARY library_name
[backcolor=transparent]参数说明:
oss://oss_endpoint filepath=[folder/[folder/]...]/file_name id=userossid key=userosskey bucket=ossbucket
create library example language java from 'oss://oss-cn-hangzhou.aliyuncs.com filepath=analytics.jar id=xxx key=yyy bucket=zzz';
create library pglib LANGUAGE java VALUES '73656c6563742031' OWNER "myuser";
drop library example;
select name, lanname from pg_library;
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
HybridDB for PostgreSQL 是阿里云提供的一种支持大规模数据的在线分析处理(OLAP)数据库服务,它基于PostgreSQL并针对大数据分析场景进行了优化。您提到的Create/Drop Library
命令是用于在HybridDB for PostgreSQL中管理用户自定义软件包(通常是Java库,用于扩展数据库功能,如用户自定义函数UDF)的重要工具。
当您的库文件(例如.jar
文件)存储在阿里云对象存储服务(OSS)上时,可以使用如下命令安装:
CREATE LIBRARY example LANGUAGE JAVA FROM 'oss://oss-cn-hangzhou.aliyuncs.com filepath=analytics.jar id=xxx key=yyy bucket=zzz';
这里,example
是您给库起的名字,oss://oss-cn-hangzhou.aliyuncs.com
是OSS的Endpoint,filepath=analytics.jar
指定了OSS上的文件路径,而id=xxx key=yyy bucket=zzz
是用来认证和定位OSS存储桶的凭证信息。
如果库文件较小,或者您直接拥有文件的16进制字节流,可以直接通过以下命令创建库:
CREATE LIBRARY pglib LANGUAGE JAVA VALUES '73656c6563742031' OWNER "myuser";
在这个例子中,pglib
是库名,'73656c6563742031'
代表了“select 1”的16进制字节表示,OWNER "myuser"
指定了库的所有者。
要删除已安装的库,使用DROP LIBRARY
命令,例如:
DROP LIBRARY example;
要查看当前数据库中已经安装的所有库,可以执行:
SELECT name, lanname FROM pg_library;
这将返回每个库的名称及其使用的语言。
请注意,在实际操作中,替换命令中的占位符(如xxx
, yyy
, zzz
, myuser
等)为实际的值,并确保您有足够的权限来执行这些操作。此外,与任何数据库操作一样,建议在执行前备份相关数据,以防不测。