Sql-server – Polybase with SQL Server 2019 on Linux or Containers

containerspolybasesql serverUbuntu

I would like to install SQL Server 2019 on Linux either a full Linux server (Ubuntu 18.04) or on a Docker container with Polybase. Installing MSSQL 2019 on a Linux Server or a container is relatively easy. It's the Polybase bit that I cannot figure out.

Using the instructions at this Microsoft Docs site: https://docs.microsoft.com/en-us/sql/relational-databases/polybase/polybase-linux-setup?view=sql-server-ver15

There is a reference to install Polybase on Ubuntu, which should be applicable in both cases (server or container). When I attempted to install the Polybase packages on an Ubuntu server I got this result:

sudo apt-get install mssql-server-polybase

Installed without any issue

sudo apt-get install mssql-server-polybase-hadoop

The following packages have unmet dependencies: mssql-server-polybase-hadoop : Depends: mssql-zulu-jre-11 but it is not installable E: Unable to correct problems, you have held broken packages.

I could not find a solution to installing the package mssql-zulu-jre-11 on a Linux Server.

In a container, I logged in as a Root user and attempted the commands above:

apt-get install mssql-server-polybase

E: Unable to locate package mssql-server-polybase

I did verify that within the container the Linux instance has the correct sources for apt to find this package. I am completely confused as to how to get Polybase running with SQL Server 2019 on Linux. Have any of your had success? Any help would be greatly appreciated!

Best Answer

After a lot of trial and error and a lot of research, I found a solution.

I tried both Ubuntu 16.04 and Ubuntu 18.04. This installation approach works for both, but I only was able to get Polybase to work under Ubuntu 18.04.

I performed a fresh install of Ubuntu and SQL Server. As with every attempt, everything went well except the installation of the mssql-server-polybase-hadoop package. It failed on attempting to find and install the mssql-zulu-jre-11 package.

However, I downloaded the .deb package and manually installed it from these locations:

Ubuntu 16.04: https://packages.microsoft.com/ubuntu/16.04/prod/pool/main/m/mssql-zulu-jre-11/mssql-zulu-jre-11_11.43.56-1_amd64.deb

Ubuntu 18.04: https://packages.microsoft.com/ubuntu/18.04/prod/pool/main/m/mssql-zulu-jre-11/mssql-zulu-jre-11_11.43.56-1_amd64.deb

After installing it with dpkg -i, I was able to then install the mssql-server-polybase-hadoop package.

This process allowed me to configure and use Polybase. (Only with Ubuntu 18.04)