From 06fe798a3de86229e2948ecc1dc8c2a343ca625d Mon Sep 17 00:00:00 2001 From: Umachandar Jayachandran Date: Wed, 27 Mar 2019 12:31:02 -0700 Subject: [PATCH] Added support for CTP 2.4 --- .../bootstrap-sample-db.sql | 10 ++++- .../data-pool/data-ingestion-sql.sql | 38 ++++++++++++------- .../hadoop/inventory-export-hdfs-rcfile.sql | 8 +++- 3 files changed, 39 insertions(+), 17 deletions(-) diff --git a/samples/features/sql-big-data-cluster/bootstrap-sample-db.sql b/samples/features/sql-big-data-cluster/bootstrap-sample-db.sql index 50f0ddb2..464975fe 100644 --- a/samples/features/sql-big-data-cluster/bootstrap-sample-db.sql +++ b/samples/features/sql-big-data-cluster/bootstrap-sample-db.sql @@ -80,8 +80,14 @@ BEGIN WITH (LOCATION = 'sqldatapool://service-mssql-controller:8080/datapools/default'); IF NOT EXISTS(SELECT * FROM sys.external_data_sources WHERE name = 'SqlStoragePool') - CREATE EXTERNAL DATA SOURCE SqlStoragePool - WITH (LOCATION = 'sqlhdfs://service-mssql-controller:8080'); + BEGIN + IF SERVERPROPERTY('ProductLevel') = 'CTP2.3' + CREATE EXTERNAL DATA SOURCE SqlStoragePool + WITH (LOCATION = 'sqlhdfs://service-mssql-controller:8080'); + ELSE IF SERVERPROPERTY('ProductLevel') = 'CTP2.4' + CREATE EXTERNAL DATA SOURCE SqlStoragePool + WITH (LOCATION = 'sqlhdfs://service-master-pool:50070'); + END IF NOT EXISTS(SELECT * FROM sys.external_data_sources WHERE name = 'HadoopData') CREATE EXTERNAL DATA SOURCE HadoopData diff --git a/samples/features/sql-big-data-cluster/data-pool/data-ingestion-sql.sql b/samples/features/sql-big-data-cluster/data-pool/data-ingestion-sql.sql index 3ef3ac11..e2a9a27b 100644 --- a/samples/features/sql-big-data-cluster/data-pool/data-ingestion-sql.sql +++ b/samples/features/sql-big-data-cluster/data-pool/data-ingestion-sql.sql @@ -25,21 +25,33 @@ GO -- Insert results of a SELECT statement into the external table created on the data pool. -- Store summary results for quick access instead of going to the source tables always. -- -DECLARE @db_name SYSNAME = 'sales' -DECLARE @schema_name SYSNAME = 'dbo' -DECLARE @table_name SYSNAME = 'web_clickstream_clicks_data_pool' -DECLARE @query NVARCHAR(MAX) = ' -SELECT wcs_user_sk, i_category_id, COUNT_BIG(*) as clicks - FROM sales.dbo.web_clickstreams - INNER JOIN sales.dbo.item it ON (wcs_item_sk = i_item_sk - AND wcs_user_sk IS NOT NULL) - GROUP BY wcs_user_sk, i_category_id -HAVING COUNT_BIG(*) > 100; -' -EXEC model..sp_data_pool_table_insert_data @db_name, @schema_name, @table_name, @query +IF SERVERPROPERTY('ProductLevel') = 'CTP2.3' +BEGIN + DECLARE @db_name SYSNAME = 'sales' + DECLARE @schema_name SYSNAME = 'dbo' + DECLARE @table_name SYSNAME = 'web_clickstream_clicks_data_pool' + DECLARE @query NVARCHAR(MAX) = ' + SELECT wcs_user_sk, i_category_id, COUNT_BIG(*) as clicks + FROM sales.dbo.web_clickstreams + INNER JOIN sales.dbo.item it ON (wcs_item_sk = i_item_sk + AND wcs_user_sk IS NOT NULL) + GROUP BY wcs_user_sk, i_category_id + HAVING COUNT_BIG(*) > 100; + ' + EXEC model..sp_data_pool_table_insert_data @db_name, @schema_name, @table_name, @query +END; + +IF SERVERPROPERTY('ProductLevel') = 'CTP2.4' + INSERT INTO web_clickstream_clicks_data_pool + SELECT wcs_user_sk, i_category_id, COUNT_BIG(*) as clicks + FROM sales.dbo.web_clickstreams_hdfs_parquet + INNER JOIN sales.dbo.item it ON (wcs_item_sk = i_item_sk + AND wcs_user_sk IS NOT NULL) + GROUP BY wcs_user_sk, i_category_id + HAVING COUNT_BIG(*) > 100; GO --- Query data inserted from sp_data_pool_table_insert_data +-- Query data inserted into the data pool table -- SELECT count(*) FROM [dbo].[web_clickstream_clicks_data_pool] SELECT TOP 10 * FROM [dbo].[web_clickstream_clicks_data_pool] diff --git a/samples/features/sql-big-data-cluster/data-virtualization/hadoop/inventory-export-hdfs-rcfile.sql b/samples/features/sql-big-data-cluster/data-virtualization/hadoop/inventory-export-hdfs-rcfile.sql index 7577ca2d..57106cd9 100644 --- a/samples/features/sql-big-data-cluster/data-virtualization/hadoop/inventory-export-hdfs-rcfile.sql +++ b/samples/features/sql-big-data-cluster/data-virtualization/hadoop/inventory-export-hdfs-rcfile.sql @@ -1,8 +1,12 @@ USE sales GO -exec sp_configure 'allow polybase export', 1; -RECONFIGURE WITH OVERRIDE; +DECLARE @config_option nvarchar(100) = 'allow polybase export'; +IF NOT EXISTS(SELECT * FROM sys.configurations WHERE name = @config_option and value_in_use = 1) +BEGIN + EXECUTE sp_configure @config_option, 1; + RECONFIGURE WITH OVERRIDE; +END; GO -- Create file format for RCFILE with appropriate properties.