Oracle连接器
配置
首先,在开始使用oracle连接器之前,应该先完成以下步骤:
- 用于连接Oracle的JDBC连接详情
应该以常规openLooKeng连接器配置编写(例如名为oracle的openLooKeng目录使用oracle.properties)。文件应包含以下内容,并根据设置替换连接属性:
基本属性设置:
- 添加Oracle驱动
Oracle JDBC驱动不在普通存储库中提供,如果您是oracle数据库的用户,您可以选择前往Oracle官方网站,在确保遵守Oracle JDBC驱动所适用的license的条件下,下载和安装Oracle JDBC驱动到存储库中。Oracle JDBC驱动(ojdbcX.jar X为数字,根据Oracle的版本不同而不同)可能会作为Oracle客户端安装的一部分进行安装,或者从Oracle办公网站下载。获取了Oracle JDBC驱动后,您可以将jdbc jar文件部署到协调节点和工作节点上的openLooKeng插件文件夹中。例如,jdbc驱动文件为ojdbcX.jar,openLooKeng插件包文件夹为 /usr/lib/presto/lib/plugin,则拷贝命令如下: cp ojdbcX.jar /usr/lib/presto/lib/plugin/oracle。重启协调节点和工作节点进程,oracle连接器即可正常工作。
如果要启用oracle连接器的连接器下推功能,不需要做任何操作,oracle连接器的下推功能默认是打开的。但也可以按如下设置:
#true表示打开下推,false表示关闭。
- 下推模式选择。
如果要启用oracle连接器的全部下推功能,不需要做任何操作,oracle连接器的下推模式默认是全部下推的。但也可以按如下设置:
多套Oracle数据库或服务器
对于名为oracle的oracle连接器,每个Oracle数据库的用户都可以通过oracle连接器获取其可用的模式,命令为SHOW SCHEMAS:
SHOW SCHEMAS FROM oracle;
如果已经拥有了可用模式,可以通过SHOW TABLES命令查看名为data的Oracle数据库拥有的表:
若要查看数据模式中名为hello的表中的列的列表,请使用以下命令中的一种:
DESCRIBE oracle.data.hello;
SHOW COLUMNS FROM oracle.data.hello;
你可以访问数据模式中的hello表:
连接器在这些模式中的权限是在连接属性文件中配置的用户的权限。如果用户无法访问这些表,则特定的连接器将无法访问这些表。
openLooKeng和Oracle之间的数据类型映射
类型相关配置说明
数据类型映射表
openLooKeng到Oracle类型映射
openLooKeng支持在Oracle数据库中创建以下类型的表。下表显示了从openLooKeng到Oracle数据类型的映射关系。
数据类型映射表
openLooKeng与Oracle之间存在一些常用的共有函数。具体函数功能请参考openLooKeng中函数和运算符部分的文档和Oracle官网。下表列出了这些常用共有函数。
openLooKeng支持标准的SQL 2003语法,与Oracle SQL语法存在差异。要将Oracle的SQL语句运行在openLooKeng中,需要对SQL语句进行等价的语法转换。Oracle与openLooKeng SQL语法详细细节,请参考官方文档。
Oracle Synonyms的支持
基于性能的考虑,openLooKeng默认关闭了Oracle 的 功能。可以通过以下配置来开启:
oracle.synonyms.enabled=true
Oralce的number数据类型
Oralce中的number类型的精度长度是可变的,但openLooKeng不支持。由于这个原因,若oracle表在使用number类型时,未明确指定精度,openLooKeng将oracle的number类型转换openLooKeng的decimal类型时,在特定的取值范围内会造成一些精度损失。