blob: 2a668dd52d3cc040bfde7e24ed1458aea94949cc [file] [log] [blame]
/*
* 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;