During my first installation of Microsoft SQL Server 2016 CTP2 on a VM I created for this I got an error message stating that Java Runtime was not installed… (during an full install – selected all features)
Error message: “Oracle JRE 7 Update 51 (64bit) or higher is required”
And when you click on “Failed”:
Yes, of course, I do not want any dependencies on Java Runtime on my SQL Server boxes. So the Java Runtime is not installed on my default machines. The bigger question is of course:
“Why has SQL Server all of a sudden the requirement of Java Runtime since SQL Server 2016 CTP2?”
It turns out that a new feature of SQL Server 2016 CTP2 is PolyBase. “PolyBase is a T-SQL front end that allows customers to query data stored in HDFS”. With PolyBase you can query, using T-SQL, Hadoop or Azure Blob Storage and query it in an adhoc fashion. It also lets you query semi-structured data and join the results with relational data sets stored in SQL Server. PolyBase is optimized for data warehousing workloads and intended for analytical query scenarios.
So the new feature is a great addition in accessing data like Hadoop and Azure Blob Storage together with SQL Server.
So if you need PolyBase then you must install Java Runtime too. I really hope that the Java Runtime dependency will be rewritten to a .Net variant. Or I need to get used to install Java Runtime together with SQL Server. Of course it is better to install the PolyBase feature on a standalone VM in a larger environment.