| /* |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| */ |
| |
| drop dataverse tpcds if exists; |
| create dataverse tpcds; |
| |
| use tpcds; |
| |
| |
| |
| create type tpcds.customer_address_type as closed { |
| ca_address_sk : bigint, |
| ca_address_id : string, |
| ca_street_number : string?, |
| ca_street_name : string?, |
| ca_street_type : string?, |
| ca_suite_number : string?, |
| ca_city : string?, |
| ca_county : string?, |
| ca_state : string?, |
| ca_zip : string?, |
| ca_country : string?, |
| ca_gmt_offset : double?, |
| ca_location_type : string? |
| } |
| |
| create type tpcds.item_type as |
| closed { |
| i_item_sk : bigint, |
| i_item_id : string, |
| i_rec_start_date : string?, |
| i_rec_end_date : string?, |
| i_item_desc : string?, |
| i_current_price : double?, |
| i_wholesale_cost : double?, |
| i_brand_id : bigint?, |
| i_brand : string?, |
| i_class_id : bigint?, |
| i_class : string?, |
| i_category_id : bigint?, |
| i_category : string?, |
| i_manufact_id : bigint?, |
| i_manufact : string?, |
| i_size : string?, |
| i_formulation : string?, |
| i_color : string?, |
| i_units : string?, |
| i_container : string?, |
| i_manager_id : bigint?, |
| i_product_name : string? |
| } |
| |
| create type tpcds.web_sales_type as |
| closed { |
| ws_sold_date_sk : bigint?, |
| ws_sold_time_sk : bigint?, |
| ws_ship_date_sk : bigint?, |
| ws_item_sk : bigint, |
| ws_bill_customer_sk : bigint?, |
| ws_bill_cdemo_sk : bigint?, |
| ws_bill_hdemo_sk : bigint?, |
| ws_bill_addr_sk : bigint?, |
| ws_ship_customer_sk : bigint?, |
| ws_ship_cdemo_sk : bigint?, |
| ws_ship_hdemo_sk : bigint?, |
| ws_ship_addr_sk : bigint?, |
| ws_web_page_sk : bigint?, |
| ws_web_site_sk : bigint?, |
| ws_ship_mode_sk : bigint?, |
| ws_warehouse_sk : bigint?, |
| ws_promo_sk : bigint?, |
| ws_order_number : bigint, |
| ws_quantity : bigint?, |
| ws_wholesale_cost : double?, |
| ws_list_price : double?, |
| ws_sales_price : double?, |
| ws_ext_discount_amt : double?, |
| ws_ext_sales_price : double?, |
| ws_ext_wholesale_cost : double?, |
| ws_ext_list_price : double?, |
| ws_ext_tax : double?, |
| ws_coupon_amt : double?, |
| ws_ext_ship_cost : double?, |
| ws_net_paid : double?, |
| ws_net_paid_inc_tax : double?, |
| ws_net_paid_inc_ship : double?, |
| ws_net_paid_inc_ship_tax : double?, |
| ws_net_profit : double? |
| } |
| |
| create type tpcds.date_dim_type as |
| closed { |
| d_date_sk : bigint, |
| d_date_id : string, |
| d_date : string?, |
| d_month_seq : bigint?, |
| d_week_seq : bigint?, |
| d_quarter_seq : bigint?, |
| d_year : bigint? , |
| d_dow : bigint? , |
| d_moy : bigint?, |
| d_dom : bigint?, |
| d_qoy : bigint?, |
| d_fy_year : bigint?, |
| d_fy_quarter_seq : bigint?, |
| d_fy_week_seq : bigint?, |
| d_day_name : string?, |
| d_quarter_name : string?, |
| d_holiday : string?, |
| d_weekend : string?, |
| d_following_holiday : string?, |
| d_first_dom : bigint?, |
| d_last_dom : bigint?, |
| d_same_day_ly : bigint?, |
| d_same_day_lq : bigint?, |
| d_current_day : string?, |
| d_current_week : string?, |
| d_current_month : string?, |
| d_current_quarter : string?, |
| d_current_year : string? |
| } |
| |
| create type tpcds.customer_type as |
| closed { |
| c_customer_sk : bigint, |
| c_customer_id : string, |
| c_current_cdemo_sk : bigint?, |
| c_current_hdemo_sk : bigint?, |
| c_current_addr_sk : bigint?, |
| c_first_shipto_date_sk : bigint?, |
| c_first_sales_date_sk : bigint?, |
| c_salutation : string?, |
| c_first_name : string?, |
| c_last_name : string?, |
| c_preferred_cust_flag : string?, |
| c_birth_day : bigint?, |
| c_birth_month : bigint?, |
| c_birth_year : bigint?, |
| c_birth_country : string?, |
| c_login : string?, |
| c_email_address : string?, |
| c_last_review_date : string? |
| } |
| |
| create dataset customer_address(customer_address_type) primary key ca_address_sk; |
| |
| create dataset item (item_type) primary key i_item_sk; |
| |
| create dataset web_sales (web_sales_type) primary key ws_item_sk, ws_order_number; |
| |
| create dataset date_dim(date_dim_type) primary key d_date_sk; |
| |
| create dataset customer (customer_type) primary key c_customer_sk; |