|
| 1 | +USE master; |
| 2 | +GO |
| 3 | +-- Enable external scripts execution for R/Python/Java: |
| 4 | +exec sp_configure 'external scripts enabled', 1; |
| 5 | +RECONFIGURE WITH OVERRIDE; |
| 6 | +GO |
| 7 | + |
| 8 | +IF DB_ID('sales') IS NULL |
| 9 | + RESTORE DATABASE sales |
| 10 | + FROM DISK=N'/var/opt/mssql/data/tpcxbb_1gb.bak' |
| 11 | + WITH |
| 12 | + MOVE N'tpcxbb_1gb' TO N'/var/opt/mssql/data/sales.mdf', |
| 13 | + MOVE N'tpcxbb_1gb_log' TO N'/var/opt/mssql/data/sales.ldf'; |
| 14 | +GO |
| 15 | + |
| 16 | +USE sales; |
| 17 | +GO |
| 18 | +-- Create default data sources for SQL Big Data Cluster |
| 19 | +IF NOT EXISTS(SELECT * FROM sys.external_data_sources WHERE name = 'SqlDataPool') |
| 20 | + CREATE EXTERNAL DATA SOURCE SqlDataPool |
| 21 | + WITH (LOCATION = 'sqldatapool://service-mssql-controller:8080/datapools/default'); |
| 22 | + |
| 23 | +IF NOT EXISTS(SELECT * FROM sys.external_data_sources WHERE name = 'SqlStoragePool') |
| 24 | + CREATE EXTERNAL DATA SOURCE SqlStoragePool |
| 25 | + WITH (LOCATION = 'sqlhdfs://service-mssql-controller:8080'); |
| 26 | +GO |
| 27 | + |
| 28 | +-- Create view used for ML services training stored procedure |
| 29 | +CREATE OR ALTER VIEW [dbo].[web_clickstreams_book_clicks] |
| 30 | +AS |
| 31 | + SELECT |
| 32 | + q.clicks_in_category, |
| 33 | + CASE WHEN cd.cd_education_status IN ('Advanced Degree', 'College', '4 yr Degree', '2 yr Degree') THEN 1 ELSE 0 END AS college_education, |
| 34 | + CASE WHEN cd.cd_gender = 'M' THEN 1 ELSE 0 END AS male, |
| 35 | + q.clicks_in_1, |
| 36 | + q.clicks_in_2, |
| 37 | + q.clicks_in_3, |
| 38 | + q.clicks_in_4, |
| 39 | + q.clicks_in_5, |
| 40 | + q.clicks_in_6, |
| 41 | + q.clicks_in_7, |
| 42 | + q.clicks_in_8, |
| 43 | + q.clicks_in_9 |
| 44 | + FROM( |
| 45 | + SELECT |
| 46 | + w.wcs_user_sk, |
| 47 | + SUM( CASE WHEN i.i_category = 'Books' THEN 1 ELSE 0 END) AS clicks_in_category, |
| 48 | + SUM( CASE WHEN i.i_category_id = 1 THEN 1 ELSE 0 END) AS clicks_in_1, |
| 49 | + SUM( CASE WHEN i.i_category_id = 2 THEN 1 ELSE 0 END) AS clicks_in_2, |
| 50 | + SUM( CASE WHEN i.i_category_id = 3 THEN 1 ELSE 0 END) AS clicks_in_3, |
| 51 | + SUM( CASE WHEN i.i_category_id = 4 THEN 1 ELSE 0 END) AS clicks_in_4, |
| 52 | + SUM( CASE WHEN i.i_category_id = 5 THEN 1 ELSE 0 END) AS clicks_in_5, |
| 53 | + SUM( CASE WHEN i.i_category_id = 6 THEN 1 ELSE 0 END) AS clicks_in_6, |
| 54 | + SUM( CASE WHEN i.i_category_id = 7 THEN 1 ELSE 0 END) AS clicks_in_7, |
| 55 | + SUM( CASE WHEN i.i_category_id = 8 THEN 1 ELSE 0 END) AS clicks_in_8, |
| 56 | + SUM( CASE WHEN i.i_category_id = 9 THEN 1 ELSE 0 END) AS clicks_in_9 |
| 57 | + FROM web_clickstreams as w |
| 58 | + INNER JOIN item as i ON (w.wcs_item_sk = i_item_sk |
| 59 | + AND w.wcs_user_sk IS NOT NULL) |
| 60 | + GROUP BY w.wcs_user_sk |
| 61 | + ) AS q |
| 62 | + INNER JOIN customer as c ON q.wcs_user_sk = c.c_customer_sk |
| 63 | + INNER JOIN customer_demographics as cd ON c.c_current_cdemo_sk = cd.cd_demo_sk; |
| 64 | +GO |
| 65 | + |
| 66 | +-- Create table for storing the machine learning models |
| 67 | +CREATE TABLE sales_models ( |
| 68 | + model_name varchar(100) NOT NULL PRIMARY KEY, |
| 69 | + model varbinary(max) NOT NULL, |
| 70 | + model_native varbinary(max) NOT NULL, |
| 71 | + created_by nvarchar(300) NOT NULL DEFAULT(SYSTEM_USER), |
| 72 | + create_time datetime2 NOT NULL DEFAULT(SYSDATETIME()) |
| 73 | +); |
| 74 | +GO |
0 commit comments