在 Centos 7 vm 上,我们按照此处的说明安装了 mssql server 2019:https ://docs.microsoft.com/en-us/sql/linux/quickstart-install-connect-red-hat?view=sql-server- linux-ver15
然后我们按照此处的说明安装了 mssql-server-polybase:https ://docs.microsoft.com/en-us/sql/relational-databases/polybase/polybase-linux-setup?view=sql-server-ver15
对 polybase 运行查询后,我们收到以下错误消息:
Msg 110813, Level 16, State 1, Line 26
The Remote Java Bridge has not been attached yet.
这是我们尝试运行的查询:
use testdb
GO
CREATE EXTERNAL DATA SOURCE [HadoopSouthMLI] WITH (TYPE = HADOOP, LOCATION = N'hdfs://servername:8020', RESOURCE_MANAGER_LOCATION = N'rm-servername:8032')
GO
CREATE EXTERNAL FILE FORMAT [parquetz_gz_file_format] WITH (FORMAT_TYPE = PARQUET, DATA_COMPRESSION = N'org.apache.hadoop.io.compress.GzipCodec')
GO
CREATE EXTERNAL TABLE [dbo].[test] (
[primary_key] nvarchar(64) NOT NULL,
[type] nvarchar(64) NOT NULL,
[track_key] nvarchar(64) NOT NULL,
[id_number] nvarchar(6),
[additional_id_number] nvarchar(6),
[score] float NULL,
[id] nvarchar(7),
)
WITH (LOCATION='/path/to/file/',
DATA_SOURCE = HadoopSouthMLI,
FILE_FORMAT = parquetz_gz_file_format
);
GO
该查询在安装了 mssql-server 2017 的 Windows 机器上运行没有问题,因此我认为查询本身没有问题。
收到上述错误后,我列出了其他可用的 mssql-server 包,并找到了一个 mssql-server-polybase-hadoop 包,其中还安装了另外两个包;mssql-zulu-jre-11 和 mssql-zulu-jre-8。我们安装了软件包并重新启动了 mssql-server,但是,在尝试连接时,我们仍然收到“尚未连接远程 Java 桥”。
是否需要任何其他包或配置来创建网桥以便此查询有效?