Chapter 16 Greenplum PL/Java 语言扩展-About PL/Java

通过使用Greenplum数据库PL/Java扩展,您可以使用您最喜欢的Java IDE编写Java方法,并将包含这些方法的JAR文件安装到Greenplum数据库中。
Greenplum数据库PL/Java包基于开源的PL/Java 1.4.0。 Greenplum数据库PL/Java提供以下功能。
•能够使用Java 1.6或更高版本执行PL/Java函数。
•标准化实用程序(建模在SQL 2003提议之后)在数据库中安装和维护Java代码。
•参数和结果的标准映射。支持复杂类型以及集合。
•使用内部Greenplum数据库SPI例程的嵌入式高性能JDBC驱动程序。
•JDBC驱动程序的元数据支持。包括DatabaseMetaData和ResuitsetMetaData。
•从查询中返回ResultSet的能力,作为逐行构建ResultSet的替代方法。
•完全支持保存点和异常处理。
•使用IN,INOUT和OUT参数的功能。
•两种独立的Greenplum数据库语言:
pljava,TRUSTED PL/Java语言
pljavau,UNTRUSTED PL/Java语言
•事务或保存点侦听程序在事务或保存点被提交或回退时启用代码执行。
•在选定的平台上与GNU GCJ集成。
Greenplum数据库PL/Java扩展包附带嵌入式Java Runtime 6u32,它安装在每个Greenplum数据库主机的$ GPHoME/ext/jre-i.6.o_32目录中。
SQL中的函数将在Java类中指定一个静态方法。为了执行该功能,指定的类必须在由Greenplum数据库服务器配置参数pijava_ciasspath指定的类路径上可用。 PL/Java扩展添加了一组帮助安装和维护java类的函数。类存储在普通的Java归档,JAR文件中。 JAR文件可以选择性地包含部署描述符,该描述符又包含部署或取消部署JAR时要执行的SQL命令。这些函数是根据为SQL 2003提出的标准建模的。
PL/Java实现了传递参数和返回值的标准方式。使用标准的JDBC ResultSet类传递复杂的类型和集合。
一个JDBC驱动程序包含在PL/Java中。这个驱动程序调用Greenplum数据库内部的SPI例程。驱动程序是必不可少的,因为函数调用回数据库来获取数据是很常见的。当PL/Java函数获取数据时,它们必须使用进入PL/Java执行上下文的主函数所使用的相同的事务边界。
PL/Java针对性能进行了优化。 Java虚拟机在与后端相同的进程内执行,以尽量减少调用开销。 PL/Java的设计目标是使Java对数据库本身具有强大的功能,以便数据库密集型业务逻辑可以尽可能接近实际的数据执行。
桥接后端和Java VM之间的调用时使用标准Java本地接口(JNI)。
安装PL/Java
对于Greenplum数据库,PL/Java扩展可作为一个包提供。从Pivotal网络下载软件包,然后使用Greenplum软件包管理器(gppkg)进行安装。
gppkg实用程序会在群集中的所有主机上安装Greenplum数据库扩展以及任何依赖项。在系统扩展和分段恢复的情况下,它也自动在新主机上安装扩展。
有关gppkg的信息,请参阅Greenplum数据库实用程序指南。
要安装和使用PL/Java:
1.安装Greenplum数据库PL/Java扩展。
2.可选。更改PL/Java使用的Java版本。
3.为每个打算使用PL/Java的数据库启用语言。
4.将包含Java方法的用户创建的JAR文件安装到所有Greenplum数据库主机的同一目录中。
5.将JAR文件的名称添加到Greenplum数据库服务器配置参数pijava_ciasspath。该参数列出了已安装的JAR文件。有关该参数的信息,请参阅“Greenplum数据库参考指南”。

你可能感兴趣的:(Chapter 16 Greenplum PL/Java 语言扩展-About PL/Java)