Skip to content

Commit 4689a02

Browse files
Pratyaksh SharmaPratyaksh Sharma
authored andcommitted
Add data maintenance insert functions
1 parent 2c914d1 commit 4689a02

19 files changed

+900
-3
lines changed

benchmarks/tpc-ds/ds_refresh.json

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,18 @@
22
"description": "Sequentially run the first refresh run for tpc-ds and then verify the results.",
33
"query_files": [
44
"queries/refresh/LF_CR.sql",
5-
"queries/refresh/verify_LF_CR.sql"
5+
"queries/refresh/LF_CS.sql",
6+
"queries/refresh/LF_SR.sql",
7+
"queries/refresh/LF_SS.sql",
8+
"queries/refresh/LF_WR.sql",
9+
"queries/refresh/LF_WS.sql",
10+
"queries/refresh/LF_I.sql",
11+
"queries/refresh/verify_LF_CR.sql",
12+
"queries/refresh/verify_LF_CS.sql",
13+
"queries/refresh/verify_LF_SR.sql",
14+
"queries/refresh/verify_LF_SS.sql",
15+
"queries/refresh/verify_LF_WR.sql",
16+
"queries/refresh/verify_LF_WS.sql",
17+
"queries/refresh/verify_LF_I.sql"
618
]
719
}

benchmarks/tpc-ds/queries/refresh/DF_CS.sql

Whitespace-only changes.

benchmarks/tpc-ds/queries/refresh/DF_I.sql

Whitespace-only changes.

benchmarks/tpc-ds/queries/refresh/DF_SS.sql

Whitespace-only changes.

benchmarks/tpc-ds/queries/refresh/DF_WS.sql

Whitespace-only changes.

benchmarks/tpc-ds/queries/refresh/LF_CR.sql

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ SELECT d_date_sk cr_return_date_sk,
3030
cret_merchant_credit cr_merchant_credit,
3131
cret_return_amt + cret_return_tax + cret_return_fee - cret_refunded_cash-cret_reversed_charge-cret_merchant_credit
3232
cr_net_loss
33-
FROM iceberg.tpcds_sf1_refresh_source_iceberg_corrected.s_catalog_returns_1
33+
FROM s_catalog_returns_1
3434
LEFT OUTER JOIN date_dim
3535
ON ( CAST(cret_return_date AS DATE) = d_date )
3636
LEFT OUTER JOIN time_dim
Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
DROP VIEW IF EXISTS csv;
2+
3+
CREATE VIEW csv
4+
AS
5+
SELECT d1.d_date_sk cs_sold_date_sk,
6+
t_time_sk cs_sold_time_sk,
7+
d2.d_date_sk cs_ship_date_sk,
8+
c1.c_customer_sk
9+
cs_bill_customer_sk,
10+
c1.c_current_cdemo_sk cs_bill_cdemo_sk
11+
,
12+
c1.c_current_hdemo_sk
13+
cs_bill_hdemo_sk,
14+
c1.c_current_addr_sk cs_bill_addr_sk,
15+
c2.c_customer_sk
16+
cs_ship_customer_sk,
17+
c2.c_current_cdemo_sk cs_ship_cdemo_sk
18+
,
19+
c2.c_current_hdemo_sk
20+
cs_ship_hdemo_sk,
21+
c2.c_current_addr_sk cs_ship_addr_sk,
22+
cc_call_center_sk
23+
cs_call_center_sk,
24+
cp_catalog_page_sk
25+
cs_catalog_page_sk
26+
,
27+
sm_ship_mode_sk
28+
cs_ship_mode_sk,
29+
w_warehouse_sk cs_warehouse_sk,
30+
i_item_sk cs_item_sk,
31+
p_promo_sk cs_promo_sk,
32+
cord_order_id cs_order_number,
33+
clin_quantity cs_quantity,
34+
i_wholesale_cost
35+
cs_wholesale_cost,
36+
i_current_price cs_list_price,
37+
clin_sales_price cs_sales_price,
38+
( i_current_price-clin_sales_price ) * clin_quantity
39+
cs_ext_discount_amt,
40+
clin_sales_price * clin_quantity
41+
cs_ext_sales_price
42+
,
43+
i_wholesale_cost * clin_quantity
44+
cs_ext_wholesale_cost,
45+
i_current_price * clin_quantity
46+
CS_EXT_LIST_PRICE,
47+
i_current_price * cc_tax_percentage CS_EXT_TAX,
48+
clin_coupon_amt cs_coupon_amt,
49+
clin_ship_cost * clin_quantity CS_EXT_SHIP_COST
50+
,
51+
( clin_sales_price * clin_quantity ) - clin_coupon_amt
52+
cs_net_paid,
53+
( ( clin_sales_price * clin_quantity ) - clin_coupon_amt ) * ( 1 +
54+
cc_tax_percentage )
55+
cs_net_paid_inc_tax,
56+
( clin_sales_price * clin_quantity ) - clin_coupon_amt + (
57+
clin_ship_cost * clin_quantity )
58+
CS_NET_PAID_INC_SHIP,
59+
( clin_sales_price * clin_quantity ) - clin_coupon_amt + (
60+
clin_ship_cost * clin_quantity ) + i_current_price * cc_tax_percentage
61+
CS_NET_PAID_INC_SHIP_TAX,
62+
( ( clin_sales_price * clin_quantity ) - clin_coupon_amt ) - (
63+
clin_quantity * i_wholesale_cost ) cs_net_profit
64+
FROM s_catalog_order_1
65+
LEFT OUTER JOIN date_dim d1
66+
ON ( CAST(cord_order_date AS DATE) = d1.d_date )
67+
LEFT OUTER JOIN time_dim
68+
ON ( cord_order_time = t_time )
69+
LEFT OUTER JOIN customer c1
70+
ON ( cord_bill_customer_id = c1.c_customer_id )
71+
LEFT OUTER JOIN customer c2
72+
ON ( cord_ship_customer_id = c2.c_customer_id )
73+
LEFT OUTER JOIN call_center
74+
ON ( cord_call_center_id = cc_call_center_id
75+
AND cc_rec_end_date IS NULL )
76+
LEFT OUTER JOIN ship_mode
77+
ON ( cord_ship_mode_id = sm_ship_mode_id )
78+
JOIN s_catalog_order_lineitem_1
79+
ON ( cord_order_id = clin_order_id )
80+
LEFT OUTER JOIN date_dim d2
81+
ON ( CAST(clin_ship_date AS DATE) = d2.d_date )
82+
LEFT OUTER JOIN catalog_page
83+
ON ( clin_catalog_page_number = cp_catalog_page_number
84+
AND clin_catalog_number = cp_catalog_number )
85+
LEFT OUTER JOIN warehouse
86+
ON ( clin_warehouse_id = w_warehouse_id )
87+
LEFT OUTER JOIN item
88+
ON ( clin_item_id = i_item_id
89+
AND i_rec_end_date IS NULL )
90+
LEFT OUTER JOIN promotion
91+
ON ( clin_promotion_id = p_promo_id );
92+
93+
INSERT INTO catalog_sales
94+
SELECT cs_sold_date_sk,
95+
cs_sold_time_sk,
96+
cs_ship_date_sk,
97+
cs_bill_customer_sk,
98+
cs_bill_cdemo_sk,
99+
cs_bill_hdemo_sk,
100+
cs_bill_addr_sk,
101+
cs_ship_customer_sk,
102+
cs_ship_cdemo_sk,
103+
cs_ship_hdemo_sk,
104+
cs_ship_addr_sk,
105+
cs_call_center_sk,
106+
cs_catalog_page_sk,
107+
cs_ship_mode_sk,
108+
cs_warehouse_sk,
109+
cs_item_sk,
110+
cs_promo_sk,
111+
cs_order_number,
112+
cast(cs_quantity as integer),
113+
cs_wholesale_cost,
114+
cs_list_price,
115+
cs_sales_price,
116+
cast(cs_ext_discount_amt as decimal(7,2)),
117+
cast(cs_ext_sales_price as decimal(7,2)),
118+
cast(cs_ext_wholesale_cost as decimal(7,2)),
119+
cast(cs_ext_list_price as decimal(7,2)),
120+
cast(cs_ext_tax as decimal(7,2)),
121+
cs_coupon_amt,
122+
cast(cs_ext_ship_cost as decimal(7,2)),
123+
cast(cs_net_paid as decimal(7,2)),
124+
cast(cs_net_paid_inc_tax as decimal(7,2)),
125+
cast(cs_net_paid_inc_ship as decimal(7,2)),
126+
cast(cs_net_paid_inc_ship_tax as decimal(7,2)),
127+
cast(cs_net_profit as decimal(7,2))
128+
FROM csv;
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
DROP VIEW IF EXISTS iv;
2+
3+
CREATE VIEW iv
4+
AS
5+
SELECT d_date_sk inv_date_sk,
6+
i_item_sk inv_item_sk,
7+
w_warehouse_sk inv_warehouse_sk,
8+
invn_qty_on_hand inv_quantity_on_hand
9+
FROM s_inventory_1
10+
LEFT OUTER JOIN warehouse
11+
ON ( invn_warehouse_id = w_warehouse_id )
12+
LEFT OUTER JOIN item
13+
ON ( invn_item_id = i_item_id
14+
AND i_rec_end_date IS NULL )
15+
LEFT OUTER JOIN date_dim
16+
ON ( cast(d_date as varchar) = invn_date );
17+
18+
INSERT INTO inventory
19+
SELECT inv_date_sk,
20+
inv_item_sk,
21+
inv_warehouse_sk,
22+
inv_quantity_on_hand
23+
FROM iv;
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
DROP VIEW IF EXISTS srv;
2+
3+
CREATE VIEW srv
4+
AS
5+
SELECT d_date_sk sr_returned_date_sk,
6+
t_time_sk sr_return_time_sk,
7+
i_item_sk sr_item_sk,
8+
c_customer_sk sr_customer_sk,
9+
c_current_cdemo_sk sr_cdemo_sk,
10+
c_current_hdemo_sk sr_hdemo_sk,
11+
c_current_addr_sk sr_addr_sk,
12+
s_store_sk sr_store_sk,
13+
r_reason_sk sr_reason_sk,
14+
sret_ticket_number sr_ticket_number,
15+
sret_return_qty sr_return_quantity,
16+
sret_return_amt sr_return_amt,
17+
sret_return_tax sr_return_tax,
18+
sret_return_amt + sret_return_tax sr_return_amt_inc_tax,
19+
sret_return_fee sr_fee,
20+
sret_return_ship_cost sr_return_ship_cost,
21+
sret_refunded_cash sr_refunded_cash,
22+
sret_reversed_charge sr_reversed_charge,
23+
sret_store_credit sr_store_credit,
24+
sret_return_amt + sret_return_tax
25+
+ sret_return_fee
26+
- sret_refunded_cash-sret_reversed_charge-sret_store_credit
27+
sr_net_loss
28+
FROM s_store_returns_1
29+
LEFT OUTER JOIN date_dim
30+
ON ( CAST(sret_return_date AS DATE) = d_date )
31+
LEFT OUTER JOIN time_dim
32+
ON ( ( CAST(Substr(sret_return_time, 1, 2) AS INTEGER) *
33+
3600 +
34+
CAST(Substr(sret_return_time, 4
35+
,
36+
2) AS
37+
INTEGER) * 60 +
38+
CAST(Substr(sret_return_time, 7,
39+
2)
40+
AS
41+
INTEGER) ) = t_time )
42+
LEFT OUTER JOIN item
43+
ON ( sret_item_id = i_item_id )
44+
LEFT OUTER JOIN customer
45+
ON ( sret_customer_id = c_customer_id )
46+
LEFT OUTER JOIN store
47+
ON ( sret_store_id = s_store_id )
48+
LEFT OUTER JOIN reason
49+
ON ( sret_reason_id = r_reason_id )
50+
WHERE i_rec_end_date IS NULL
51+
AND s_rec_end_date IS NULL;
52+
53+
INSERT INTO store_returns
54+
SELECT sr_returned_date_sk,
55+
sr_return_time_sk,
56+
sr_item_sk,
57+
sr_customer_sk,
58+
sr_cdemo_sk,
59+
sr_hdemo_sk,
60+
sr_addr_sk,
61+
sr_store_sk,
62+
sr_reason_sk,
63+
cast(sr_ticket_number as bigint),
64+
sr_return_quantity,
65+
sr_return_amt,
66+
sr_return_tax,
67+
cast(sr_return_amt_inc_tax as decimal(7,2)),
68+
sr_fee,
69+
sr_return_ship_cost,
70+
sr_refunded_cash,
71+
sr_reversed_charge,
72+
sr_store_credit,
73+
cast(sr_net_loss as decimal(7,2))
74+
FROM srv;
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
drop view if exists ssv;
2+
3+
CREATE VIEW ssv
4+
AS SELECT d_date_sk ss_sold_date_sk,
5+
t_time_sk ss_sold_time_sk,
6+
i_item_sk ss_item_sk,
7+
c_customer_sk ss_customer_sk,
8+
c_current_cdemo_sk ss_cdemo_sk,
9+
c_current_hdemo_sk ss_hdemo_sk,
10+
c_current_addr_sk ss_addr_sk,
11+
s_store_sk ss_store_sk,
12+
p_promo_sk ss_promo_sk,
13+
purc_purchase_id ss_ticket_number,
14+
plin_quantity ss_quantity,
15+
i_wholesale_cost ss_wholesale_cost,
16+
i_current_price ss_list_price,
17+
plin_sale_price ss_sales_price,
18+
(i_current_price-plin_sale_price)*plin_quantity ss_ext_discount_amt,
19+
plin_sale_price * plin_quantity ss_ext_sales_price,
20+
i_wholesale_cost * plin_quantity ss_ext_wholesale_cost,
21+
i_current_price * plin_quantity ss_ext_list_price,
22+
i_current_price * s_tax_precentage ss_ext_tax,
23+
plin_coupon_amt ss_coupon_amt,
24+
(plin_sale_price * plin_quantity)-plin_coupon_amt ss_net_paid,
25+
((plin_sale_price * plin_quantity)-plin_coupon_amt)*(1+s_tax_precentage) ss_net_paid_inc_tax,
26+
((plin_sale_price * plin_quantity)-plin_coupon_amt)-(plin_quantity*i_wholesale_cost)
27+
ss_net_profit
28+
FROM
29+
s_purchase_1
30+
LEFT OUTER JOIN customer ON (purc_customer_id = c_customer_id)
31+
LEFT OUTER JOIN store ON (purc_store_id = s_store_id)
32+
LEFT OUTER JOIN date_dim ON (cast(purc_purchase_date as date) = d_date)
33+
LEFT OUTER JOIN time_dim ON (PURC_PURCHASE_TIME = t_time)
34+
JOIN s_purchase_lineitem_1 ON (purc_purchase_id = plin_purchase_id)
35+
LEFT OUTER JOIN promotion ON plin_promotion_id = p_promo_id
36+
LEFT OUTER JOIN item ON plin_item_id = i_item_id
37+
WHERE
38+
purc_purchase_id = plin_purchase_id
39+
AND i_rec_end_date is NULL
40+
AND s_rec_end_date is NULL;
41+
42+
insert into store_sales
43+
select ss_sold_date_sk,
44+
ss_sold_time_sk,
45+
ss_item_sk,
46+
ss_customer_sk,
47+
ss_cdemo_sk,
48+
ss_hdemo_sk,
49+
ss_addr_sk,
50+
ss_store_sk,
51+
ss_promo_sk,
52+
ss_ticket_number,
53+
cast(ss_quantity as integer),
54+
ss_wholesale_cost,
55+
ss_list_price,
56+
ss_sales_price,
57+
cast(ss_ext_discount_amt as decimal(7,2)),
58+
cast(ss_ext_sales_price as decimal(7,2)),
59+
cast(ss_ext_wholesale_cost as decimal(7,2)),
60+
cast(ss_ext_list_price as decimal(7,2)),
61+
cast(ss_ext_tax as decimal(7,2)),
62+
ss_coupon_amt,
63+
cast(ss_net_paid as decimal(7,2)),
64+
cast(ss_net_paid_inc_tax as decimal(7,2)),
65+
cast(ss_net_profit as decimal(7,2))
66+
from ssv;

0 commit comments

Comments
 (0)