SQL Server连接器

SQL Server连接器允许在外部SQL Server数据库中查询和创建表。这可用于在SQL Server和Hive等不同系统之间或在两个不同的SQL Server实例之间联接数据。

配置

要配置SQL Server连接器,在etc/catalog中创建一个目录属性文件,例如sqlserver.properties,将SQL Server连接器挂载为sqlserver目录。使用以下内容创建文件,并根据设置替换连接属性:

  1. connector.name=sqlserver
  2. connection-url=jdbc:sqlserver://[serverName[\instanceName][:portNumber]]
  3. connection-user=root
  4. connection-password=secret

多个SQL Server数据库或服务器

SQL Server连接器只能访问SQL Server服务器中的单个数据库。因此,如果有多个SQL Server数据库,或者想要连接到多个SQL Server实例,则必须配置多个目录,每个实例一个。

要添加另一个目录,只需添加另一个属性文件到具有不同名称的etc/catalog中(确保它以.properties结尾)。例如,如果将属性文件命名为sales.properties,openLooKeng将使用配置的连接器创建一个名为sales的目录。

查询SQL Server服务器

SQL Server连接器提供对配置数据库中指定用户可见的所有模式的访问。对于以下示例,假设SQL Server目录为sqlserver

可通过执行SHOW SCHEMAS来查看可用的模式:

  1. SHOW SCHEMAS FROM sqlserver;

如果有一个名为web的模式,那么可以通过执行SHOW TABLES来查看这个模式中的表:

  1. SHOW TABLES FROM sqlserver.web;

可以使用以下方法之一查看web数据库中clicks表中的列的列表:

  1. DESCRIBE sqlserver.web.clicks;
  2. SHOW COLUMNS FROM sqlserver.web.clicks;

最后,可以访问web模式中的clicks表:

  1. SELECT * FROM sqlserver.web.clicks;

如果对目录属性文件使用不同的名称,请使用该目录名称,而不要使用上述示例中的sqlserver

SQL Server连接器限制

openLooKeng支持连接SQL Server 2016、SQL Server 2014、SQL Server 2012以及Azure SQL Database。

openLooKeng支持以下SQL Server数据类型。下表显示了SQL Server和openLooKeng数据类型之间的映射。

SQL Server类型 openLooKeng类型


SQL Server类型openLooKeng类型
bigintbigint
smallintsmallint
intinteger
floatdouble
char(n)char(n)
varchar(n)varchar(n)
datedate

SQL Server数据类型的完整列表。

暂不支持以下SQL语句:

DELETEGRANTREVOKE