| /* |
| * 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.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.customer_demographics_type as |
| closed { |
| cd_demo_sk : bigint, |
| cd_gender : string?, |
| cd_marital_status : string?, |
| cd_education_status : string?, |
| cd_purchase_estimate : bigint?, |
| cd_credit_rating : string?, |
| cd_dep_count : bigint?, |
| cd_dep_employed_count : bigint?, |
| cd_dep_college_count : bigint? |
| } |
| create type tpcds.catalog_sales_type as |
| closed { |
| cs_sold_date_sk: bigint?, |
| cs_sold_time_sk: bigint?, |
| cs_ship_date_sk: bigint?, |
| cs_bill_customer_sk: bigint?, |
| cs_bill_cdemo_sk: bigint?, |
| cs_bill_hdemo_sk: bigint?, |
| cs_bill_addr_sk: bigint?, |
| cs_ship_customer_sk: bigint?, |
| cs_ship_cdemo_sk: bigint?, |
| cs_ship_hdemo_sk: bigint?, |
| cs_ship_addr_sk: bigint?, |
| cs_call_center_sk: bigint?, |
| cs_ship_mode_sk: bigint?, |
| cs_warehouse_sk: bigint?, |
| cs_item_sk: bigint, |
| cs_promo_sk: bigint?, |
| cs_order_number: bigint, |
| cs_quantity: bigint?, |
| cs_wholesale_cost: double?, |
| cs_list_price: double?, |
| cs_sales_price: double?, |
| cs_ext_discount_amt: double?, |
| cs_ext_sales_price: double?, |
| cs_ext_wholesale_cost: double?, |
| cs_ext_list_price: double?, |
| cs_ext_tax: double?, |
| cs_coupon_amt: double?, |
| cs_ext_ship_cost: double?, |
| cs_net_paid: double?, |
| cs_net_paid_inc_tax: double?, |
| cs_net_paid_inc_ship: double?, |
| cs_net_paid_inc_ship_tax: double?, |
| cs_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.promotion_type as |
| closed { |
| p_promo_sk : bigint, |
| p_promo_id : string, |
| p_start_date_sk : bigint?, |
| p_end_date_sk : bigint?, |
| p_item_sk : bigint?, |
| p_cost : double?, |
| p_response_target : bigint?, |
| p_promo_name : string?, |
| p_channel_dmail : string?, |
| p_channel_email : string?, |
| p_channel_catalog : string?, |
| p_channel_tv : string?, |
| p_channel_radio : string?, |
| p_channel_press : string?, |
| p_channel_event : string?, |
| p_channel_demo : string?, |
| p_channel_details : string?, |
| p_purpose : string?, |
| p_discount_active : string? |
| } |
| |
| create dataset item (item_type) primary key i_item_sk; |
| |
| create dataset customer_demographics(customer_demographics_type) primary key cd_demo_sk; |
| |
| create dataset catalog_sales (catalog_sales_type) primary key cs_item_sk, cs_order_number; |
| |
| create dataset date_dim(date_dim_type) primary key d_date_sk; |
| |
| create dataset promotion (promotion_type) primary key p_promo_sk; |