暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

Halo-TPC_DS测试

冷狼 2024-09-02
125

PC_DS是一个面向决策支持的基准,它对决策支持系统的几个普遍适用的方面进行建模,包括查询和数据维护等,使大数据系统等新兴技术能够执行基准测试。

下面是使用Halo数据库进行tpc_ds测试:

一、硬件环境

硬件配置说明
CPU8核
内存30G
磁盘HDD


二、软件环境

内核版本:Linux version 4.19.90-2112.8.0.0131.oe1.x86_64 (abuild@ecs-obsworker-0009)

操作系统版本:openEuler 20.03 (LTS-SP3)

数据库版本:Halo14

JDK:openjdk version "1.8.0_342"


三、测试数据量

表名

行数

dbgen_version

1

customer_address

1000000

customer_demographics

920800

date_dim

73049

warehouse

15

ship_mode

20

time_dim

86400

reason

55

income_band

20

item

204000

store

402

call_center

30

customer

2000000

web_site

24

store_returns

28795080

household_demographics

7200

web_page

2040

promotion

1000

catalog_page

20400

inventory

399330000

web_returns

7197670

web_sales

72001237

catalog_sales

143997065

store_sales

287997024

catalog_returns

14404374


四、测试结果

查询

查询时间(s)

结果集条数

Q1

1.474371836

100

Q2

5.248865022

2513

Q3

2.823529951

100

Q4

20.43938962

100

Q5

5.722485413

100

Q6

1.965899463

52

Q7

3.080526323

100

Q8

1.219388388

10

Q9

6.505446106

1

Q10

1.770018226

100

Q11

10.19516734

100

Q12

0.627807381

100

Q13

3.386689383

1

Q14

32.10449074

100

Q15

3.497079891

100

Q16

2.737153952

1

Q17

4.514564955

43

Q18

2.296484154

100

Q19

2.381205743

100

Q20

1.051422094

100

Q21

1.039325083

100

Q22

22.65834912

100

Q23

264.9530284

1

Q24

5.850074447

13

Q25

3.588927754

13

Q26

2.19903759

100

Q27

3.75447413

100

Q28

4.9819624

1

Q29

2.705489884

27

Q30

0.620116871

100

Q31

3.72106489

275

Q32

1.09513664

1

Q33

2.766806948

100

Q34

1.487541183

39938

Q35

3.177182819

100

Q36

2.808412412

100

Q37

1.490769408

5

Q38

3.376507072

1

Q39

1.665285012

5212

Q40

2.165695476

100

Q41

0.218239598

100

Q42

1.197048006

11

Q43

1.72589322

88

Q44

2.143288197

10

Q45

0.836999237

100

Q46

2.384627812

100

Q47

12.68662432

100

Q48

2.72730093

1

Q49

4.644521382

100

Q50

2.267629625

100

Q51

11.99199352

100

Q52

1.277174474

100

Q53

1.429863936

100

Q54

2.04926817

10

Q55

1.235844824

100

Q56

2.506194958

100

Q57

4.784308094

100

Q58

2.665566539

100

Q59

8.627713045

100

Q60

2.667188642

100

Q61

0.214607842

1

Q62

0.903522766

100

Q63

1.411030413

100

Q64

10.25961121

311

Q65

5.777466328

100

Q66

2.102772477

15

Q67

58.93354591

100

Q68

5.438787386

100

Q69

2.167125926

100

Q70

2.996668056

20

Q71

3.735558356

69886

Q72

3.884010031

100

Q73

1.250841151

170

Q74

6.737521191

100

Q75

8.963137716

100

Q76

2.71223372

100

Q77

3.202710684

100

Q78

17.32437535

100

Q79

3.204982181

100

Q80

9.20944931

100

Q81

0.669349131

100

Q82

1.872621862

18

Q83

0.465300131

100

Q84

0.387935348

100

Q85

2.153715395

50

Q86

0.800680442

100

Q87

3.821555644

1

Q88

3.768383753

1

Q89

1.716424162

100

Q90

0.509178598

1

Q91

0.289546603

30

Q92

0.568539769

1

Q93

3.820629323

100

Q94

0.867012703

1

Q95

11.16765821

1

Q96

0.987290046

1

Q97

3.913152662

1

Q98

1.961875002

30573

Q99

1.542928235

100


710.928197

155110


五、环境准备

5.1 安装依赖包

    yum install -y gcc make flex bison byacc git


    5.2 解压TPC-DS安装包

      unzip TPC-DS_tool_3.2.0rc1.zip


      cd /root/DSGen-software-code-3.2.0rc1/tools


      make


      5.3 建数据生成目录

        mkdir -p data/data_test


        mkdir -p data/data_test/log


        chown -R halo:halo data/data_test


        cp root/createtable.sql data/data_test


        unzip root/query.zip -d data/data_test/


        mkdir -p/data/data_test/query/log


        5.4 数据库参数修改

        (1)兼容模式改成:

          postgresql


          (2)设置以下c2存储引擎相关参数

            enable_c2=on


            c2_max_memory=5GB # 根据实际内存大小设置,可以设置为内存的50%左右,对于TPCDS 100GB数据量,至少设置为5GB,否则某些语句会报内存不够


            c2_concurrency=8 #根据实际CPU数量设置


            c2_date_format = '%Y-%m-%d'


            alter database tpcds set enable_nestloop=off;


            alter database tpcds set enable_mergejoin=off;


            alter database tpcds set hash_mem_multiplier=2;


            (3)创建tpcds数据库

              create database tpcds;


              (4)创建columnar扩展

                \c tpcds


                create extension columnar;


                (5) 使用c2存储引擎创建tpcds表

                  create table dbgen_version


                  (


                  dv_version varchar(16) ,


                  dv_create_date date ,


                  dv_create_time time ,


                  dv_cmdline_args varchar(200)


                  ) using c2;


                  create table customer_address


                  (


                  ca_address_sk integer not null,


                  ca_address_id char(16) not null,


                  ca_street_number char(10) ,


                  ca_street_name varchar(60) ,


                  ca_street_type char(15) ,


                  ca_suite_number char(10) ,


                  ca_city varchar(60) ,


                  ca_county varchar(30) ,


                  ca_state char(2) ,


                  ca_zip char(10) ,


                  ca_country varchar(20) ,


                  ca_gmt_offset decimal(5,2) ,


                  ca_location_type char(20)


                  ) using c2;


                  create table customer_demographics


                  (


                  cd_demo_sk integer not null,


                  cd_gender char(1) ,


                  cd_marital_status char(1) ,


                  cd_education_status char(20) ,


                  cd_purchase_estimate integer ,


                  cd_credit_rating char(10) ,


                  cd_dep_count integer ,


                  cd_dep_employed_count integer ,


                  cd_dep_college_count integer


                  ) using c2;


                  create table date_dim


                  (


                  d_date_sk integer not null,


                  d_date_id char(16) not null,


                  d_date date ,


                  d_month_seq integer ,


                  d_week_seq integer ,


                  d_quarter_seq integer ,


                  d_year integer ,


                  d_dow integer ,


                  d_moy integer ,


                  d_dom integer ,


                  d_qoy integer ,


                  d_fy_year integer ,


                  d_fy_quarter_seq integer ,


                  d_fy_week_seq integer ,


                  d_day_name char(9) ,


                  d_quarter_name char(6) ,


                  d_holiday char(1) ,


                  d_weekend char(1) ,


                  d_following_holiday char(1) ,


                  d_first_dom integer ,


                  d_last_dom integer ,


                  d_same_day_ly integer ,


                  d_same_day_lq integer ,


                  d_current_day char(1) ,


                  d_current_week char(1) ,


                  d_current_month char(1) ,


                  d_current_quarter char(1) ,


                  d_current_year char(1)


                  ) using c2;


                  create table warehouse


                  (


                  w_warehouse_sk integer not null,


                  w_warehouse_id char(16) not null,


                  w_warehouse_name varchar(20) ,


                  w_warehouse_sq_ft integer ,


                  w_street_number char(10) ,


                  w_street_name varchar(60) ,


                  w_street_type char(15) ,


                  w_suite_number char(10) ,


                  w_city varchar(60) ,


                  w_county varchar(30) ,


                  w_state char(2) ,


                  w_zip char(10) ,


                  w_country varchar(20) ,


                  w_gmt_offset decimal(5,2)


                  ) using c2;


                  create table ship_mode


                  (


                  sm_ship_mode_sk integer not null,


                  sm_ship_mode_id char(16) not null,


                  sm_type char(30) ,


                  sm_code char(10) ,


                  sm_carrier char(20) ,


                  sm_contract char(20)


                  ) using c2;


                  create table time_dim


                  (


                  t_time_sk integer not null,


                  t_time_id char(16) not null,


                  t_time integer ,


                  t_hour integer ,


                  t_minute integer ,


                  t_second integer ,


                  t_am_pm char(2) ,


                  t_shift char(20) ,


                  t_sub_shift char(20) ,


                  t_meal_time char(20)


                  ) using c2;


                  create table reason


                  (


                  r_reason_sk integer not null,


                  r_reason_id char(16) not null,


                  r_reason_desc char(100)


                  ) using c2;


                  create table income_band


                  (


                  ib_income_band_sk integer not null,


                  ib_lower_bound integer ,


                  ib_upper_bound integer


                  ) using c2;


                  create table item


                  (


                  i_item_sk integer not null,


                  i_item_id char(16) not null,


                  i_rec_start_date date ,


                  i_rec_end_date date ,


                  i_item_desc varchar(200) ,


                  i_current_price decimal(7,2) ,


                  i_wholesale_cost decimal(7,2) ,


                  i_brand_id integer ,


                  i_brand char(50) ,


                  i_class_id integer ,


                  i_class char(50) ,


                  i_category_id integer ,


                  i_category char(50) ,


                  i_manufact_id integer ,


                  i_manufact char(50) ,


                  i_size char(20) ,


                  i_formulation char(20) ,


                  i_color char(20) ,


                  i_units char(10) ,


                  i_container char(10) ,


                  i_manager_id integer ,


                  i_product_name char(50)


                  ) using c2;


                  create table store


                  (


                  s_store_sk integer not null,


                  s_store_id char(16) not null,


                  s_rec_start_date date ,


                  s_rec_end_date date ,


                  s_closed_date_sk integer ,


                  s_store_name varchar(50) ,


                  s_number_employees integer ,


                  s_floor_space integer ,


                  s_hours char(20) ,


                  s_manager varchar(40) ,


                  s_market_id integer ,


                  s_geography_class varchar(100) ,


                  s_market_desc varchar(100) ,


                  s_market_manager varchar(40) ,


                  s_division_id integer ,


                  s_division_name varchar(50) ,


                  s_company_id integer ,


                  s_company_name varchar(50) ,


                  s_street_number varchar(10) ,


                  s_street_name varchar(60) ,


                  s_street_type char(15) ,


                  s_suite_number char(10) ,


                  s_city varchar(60) ,


                  s_county varchar(30) ,


                  s_state char(2) ,


                  s_zip char(10) ,


                  s_country varchar(20) ,


                  s_gmt_offset decimal(5,2) ,


                  s_tax_precentage decimal(5,2)


                  ) using c2;


                  create table call_center


                  (


                  cc_call_center_sk integer not null,


                  cc_call_center_id char(16) not null,


                  cc_rec_start_date date ,


                  cc_rec_end_date date ,


                  cc_closed_date_sk integer ,


                  cc_open_date_sk integer ,


                  cc_name varchar(50) ,


                  cc_class varchar(50) ,


                  cc_employees integer ,


                  cc_sq_ft integer ,


                  cc_hours char(20) ,


                  cc_manager varchar(40) ,


                  cc_mkt_id integer ,


                  cc_mkt_class char(50) ,


                  cc_mkt_desc varchar(100) ,


                  cc_market_manager varchar(40) ,


                  cc_division integer ,


                  cc_division_name varchar(50) ,


                  cc_company integer ,


                  cc_company_name char(50) ,


                  cc_street_number char(10) ,


                  cc_street_name varchar(60) ,


                  cc_street_type char(15) ,


                  cc_suite_number char(10) ,


                  cc_city varchar(60) ,


                  cc_county varchar(30) ,


                  cc_state char(2) ,


                  cc_zip char(10) ,


                  cc_country varchar(20) ,


                  cc_gmt_offset decimal(5,2) ,


                  cc_tax_percentage decimal(5,2)


                  ) using c2;


                  create table customer


                  (


                  c_customer_sk integer not null,


                  c_customer_id char(16) not null,


                  c_current_cdemo_sk integer ,


                  c_current_hdemo_sk integer ,


                  c_current_addr_sk integer ,


                  c_first_shipto_date_sk integer ,


                  c_first_sales_date_sk integer ,


                  c_salutation char(10) ,


                  c_first_name char(20) ,


                  c_last_name char(30) ,


                  c_preferred_cust_flag char(1) ,


                  c_birth_day integer ,


                  c_birth_month integer ,


                  c_birth_year integer ,


                  c_birth_country varchar(20) ,


                  c_login char(13) ,


                  c_email_address char(50) ,


                  c_last_review_date char(10)


                  ) using c2;


                  create table web_site


                  (


                  web_site_sk integer not null,


                  web_site_id char(16) not null,


                  web_rec_start_date date ,


                  web_rec_end_date date ,


                  web_name varchar(50) ,


                  web_open_date_sk integer ,


                  web_close_date_sk integer ,


                  web_class varchar(50) ,


                  web_manager varchar(40) ,


                  web_mkt_id integer ,


                  web_mkt_class varchar(50) ,


                  web_mkt_desc varchar(100) ,


                  web_market_manager varchar(40) ,


                  web_company_id integer ,


                  web_company_name char(50) ,


                  web_street_number char(10) ,


                  web_street_name varchar(60) ,


                  web_street_type char(15) ,


                  web_suite_number char(10) ,


                  web_city varchar(60) ,


                  web_county varchar(30) ,


                  web_state char(2) ,


                  web_zip char(10) ,


                  web_country varchar(20) ,


                  web_gmt_offset decimal(5,2) ,


                  web_tax_percentage decimal(5,2)


                  ) using c2;


                  create table store_returns


                  (


                  sr_returned_date_sk integer ,


                  sr_return_time_sk integer ,


                  sr_item_sk integer not null,


                  sr_customer_sk integer ,


                  sr_cdemo_sk integer ,


                  sr_hdemo_sk integer ,


                  sr_addr_sk integer ,


                  sr_store_sk integer ,


                  sr_reason_sk integer ,


                  sr_ticket_number bigint not null,


                  sr_return_quantity integer ,


                  sr_return_amt decimal(7,2) ,


                  sr_return_tax decimal(7,2) ,


                  sr_return_amt_inc_tax decimal(7,2) ,


                  sr_fee decimal(7,2) ,


                  sr_return_ship_cost decimal(7,2) ,


                  sr_refunded_cash decimal(7,2) ,


                  sr_reversed_charge decimal(7,2) ,


                  sr_store_credit decimal(7,2) ,


                  sr_net_loss decimal(7,2)


                  ) using c2;


                  create table household_demographics


                  (


                  hd_demo_sk integer not null,


                  hd_income_band_sk integer ,


                  hd_buy_potential char(15) ,


                  hd_dep_count integer ,


                  hd_vehicle_count integer


                  ) using c2;


                  create table web_page


                  (


                  wp_web_page_sk integer not null,


                  wp_web_page_id char(16) not null,


                  wp_rec_start_date date ,


                  wp_rec_end_date date ,


                  wp_creation_date_sk integer ,


                  wp_access_date_sk integer ,


                  wp_autogen_flag char(1) ,


                  wp_customer_sk integer ,


                  wp_url varchar(100) ,


                  wp_type char(50) ,


                  wp_char_count integer ,


                  wp_link_count integer ,


                  wp_image_count integer ,


                  wp_max_ad_count integer


                  ) using c2;


                  create table promotion


                  (


                  p_promo_sk integer not null,


                  p_promo_id char(16) not null,


                  p_start_date_sk integer ,


                  p_end_date_sk integer ,


                  p_item_sk integer ,


                  p_cost decimal(15,2) ,


                  p_response_target integer ,


                  p_promo_name char(50) ,


                  p_channel_dmail char(1) ,


                  p_channel_email char(1) ,


                  p_channel_catalog char(1) ,


                  p_channel_tv char(1) ,


                  p_channel_radio char(1) ,


                  p_channel_press char(1) ,


                  p_channel_event char(1) ,


                  p_channel_demo char(1) ,


                  p_channel_details varchar(100) ,


                  p_purpose char(15) ,


                  p_discount_active char(1)


                  ) using c2;


                  create table catalog_page


                  (


                  cp_catalog_page_sk integer not null,


                  cp_catalog_page_id char(16) not null,


                  cp_start_date_sk integer ,


                  cp_end_date_sk integer ,


                  cp_department varchar(50) ,


                  cp_catalog_number integer ,


                  cp_catalog_page_number integer ,


                  cp_description varchar(100) ,


                  cp_type varchar(100)


                  ) using c2;


                  create table inventory


                  (


                  inv_date_sk integer not null,


                  inv_item_sk integer not null,


                  inv_warehouse_sk integer not null,


                  inv_quantity_on_hand integer


                  ) using c2;


                  create table catalog_returns


                  (


                  cr_returned_date_sk integer ,


                  cr_returned_time_sk integer ,


                  cr_item_sk integer not null,


                  cr_refunded_customer_sk integer ,


                  cr_refunded_cdemo_sk integer ,


                  cr_refunded_hdemo_sk integer ,


                  cr_refunded_addr_sk integer ,


                  cr_returning_customer_sk integer ,


                  cr_returning_cdemo_sk integer ,


                  cr_returning_hdemo_sk integer ,


                  cr_returning_addr_sk integer ,


                  cr_call_center_sk integer ,


                  cr_catalog_page_sk integer ,


                  cr_ship_mode_sk integer ,


                  cr_warehouse_sk integer ,


                  cr_reason_sk integer ,


                  cr_order_number bigint not null,


                  cr_return_quantity integer ,


                  cr_return_amount decimal(7,2) ,


                  cr_return_tax decimal(7,2) ,


                  cr_return_amt_inc_tax decimal(7,2) ,


                  cr_fee decimal(7,2) ,


                  cr_return_ship_cost decimal(7,2) ,


                  cr_refunded_cash decimal(7,2) ,


                  cr_reversed_charge decimal(7,2) ,


                  cr_store_credit decimal(7,2) ,


                  cr_net_loss decimal(7,2)


                  ) using c2;


                  create table web_returns


                  (


                  wr_returned_date_sk integer ,


                  wr_returned_time_sk integer ,


                  wr_item_sk integer not null,


                  wr_refunded_customer_sk integer ,


                  wr_refunded_cdemo_sk integer ,


                  wr_refunded_hdemo_sk integer ,


                  wr_refunded_addr_sk integer ,


                  wr_returning_customer_sk integer ,


                  wr_returning_cdemo_sk integer ,


                  wr_returning_hdemo_sk integer ,


                  wr_returning_addr_sk integer ,


                  wr_web_page_sk integer ,


                  wr_reason_sk integer ,


                  wr_order_number bigint not null,


                  wr_return_quantity integer ,


                  wr_return_amt decimal(7,2) ,


                  wr_return_tax decimal(7,2) ,


                  wr_return_amt_inc_tax decimal(7,2) ,


                  wr_fee decimal(7,2) ,


                  wr_return_ship_cost decimal(7,2) ,


                  wr_refunded_cash decimal(7,2) ,


                  wr_reversed_charge decimal(7,2) ,


                  wr_account_credit decimal(7,2) ,


                  wr_net_loss decimal(7,2)


                  ) using c2;


                  create table web_sales


                  (


                  ws_sold_date_sk integer ,


                  ws_sold_time_sk integer ,


                  ws_ship_date_sk integer ,


                  ws_item_sk integer not null,


                  ws_bill_customer_sk integer ,


                  ws_bill_cdemo_sk integer ,


                  ws_bill_hdemo_sk integer ,


                  ws_bill_addr_sk integer ,


                  ws_ship_customer_sk integer ,


                  ws_ship_cdemo_sk integer ,


                  ws_ship_hdemo_sk integer ,


                  ws_ship_addr_sk integer ,


                  ws_web_page_sk integer ,


                  ws_web_site_sk integer ,


                  ws_ship_mode_sk integer ,


                  ws_warehouse_sk integer ,


                  ws_promo_sk integer ,


                  ws_order_number bigint not null,


                  ws_quantity integer ,


                  ws_wholesale_cost decimal(7,2) ,


                  ws_list_price decimal(7,2) ,


                  ws_sales_price decimal(7,2) ,


                  ws_ext_discount_amt decimal(7,2) ,


                  ws_ext_sales_price decimal(7,2) ,


                  ws_ext_wholesale_cost decimal(7,2) ,


                  ws_ext_list_price decimal(7,2) ,


                  ws_ext_tax decimal(7,2) ,


                  ws_coupon_amt decimal(7,2) ,


                  ws_ext_ship_cost decimal(7,2) ,


                  ws_net_paid decimal(7,2) ,


                  ws_net_paid_inc_tax decimal(7,2) ,


                  ws_net_paid_inc_ship decimal(7,2) ,


                  ws_net_paid_inc_ship_tax decimal(7,2) ,


                  ws_net_profit decimal(7,2)


                  ) using c2;


                  create table catalog_sales


                  (


                  cs_sold_date_sk integer ,


                  cs_sold_time_sk integer ,


                  cs_ship_date_sk integer ,


                  cs_bill_customer_sk integer ,


                  cs_bill_cdemo_sk integer ,


                  cs_bill_hdemo_sk integer ,


                  cs_bill_addr_sk integer ,


                  cs_ship_customer_sk integer ,


                  cs_ship_cdemo_sk integer ,


                  cs_ship_hdemo_sk integer ,


                  cs_ship_addr_sk integer ,


                  cs_call_center_sk integer ,


                  cs_catalog_page_sk integer ,


                  cs_ship_mode_sk integer ,


                  cs_warehouse_sk integer ,


                  cs_item_sk integer not null,


                  cs_promo_sk integer ,


                  cs_order_number bigint not null,


                  cs_quantity integer ,


                  cs_wholesale_cost decimal(7,2) ,


                  cs_list_price decimal(7,2) ,


                  cs_sales_price decimal(7,2) ,


                  cs_ext_discount_amt decimal(7,2) ,


                  cs_ext_sales_price decimal(7,2) ,


                  cs_ext_wholesale_cost decimal(7,2) ,


                  cs_ext_list_price decimal(7,2) ,


                  cs_ext_tax decimal(7,2) ,


                  cs_coupon_amt decimal(7,2) ,


                  cs_ext_ship_cost decimal(7,2) ,


                  cs_net_paid decimal(7,2) ,


                  cs_net_paid_inc_tax decimal(7,2) ,


                  cs_net_paid_inc_ship decimal(7,2) ,


                  cs_net_paid_inc_ship_tax decimal(7,2) ,


                  cs_net_profit decimal(7,2)


                  ) using c2;


                  create table store_sales


                  (


                  ss_sold_date_sk integer ,


                  ss_sold_time_sk integer ,


                  ss_item_sk integer not null,


                  ss_customer_sk integer ,


                  ss_cdemo_sk integer ,


                  ss_hdemo_sk integer ,


                  ss_addr_sk integer ,


                  ss_store_sk integer ,


                  ss_promo_sk integer ,


                  ss_ticket_number bigint not null,


                  ss_quantity integer ,


                  ss_wholesale_cost decimal(7,2) ,


                  ss_list_price decimal(7,2) ,


                  ss_sales_price decimal(7,2) ,


                  ss_ext_discount_amt decimal(7,2) ,


                  ss_ext_sales_price decimal(7,2) ,


                  ss_ext_wholesale_cost decimal(7,2) ,


                  ss_ext_list_price decimal(7,2) ,


                  ss_ext_tax decimal(7,2) ,


                  ss_coupon_amt decimal(7,2) ,


                  ss_net_paid decimal(7,2) ,


                  ss_net_paid_inc_tax decimal(7,2) ,


                  ss_net_profit decimal(7,2)


                  ) using c2;


                  六、导入数据

                    COPYdbgen_version from '/data/data_test/dbgen_version.dat' with DELIMITER '|' NULL '' ;


                    COPYcustomer_address from '/data/data_test/customer_address.dat' with DELIMITER '|' NULL '' ;


                    COPYcustomer_demographics from '/data/data_test/customer_demographics.dat' with DELIMITER '|' NULL '' ;


                    COPYdate_dim from '/data/data_test/date_dim.dat' with DELIMITER '|' NULL '' ;


                    COPYwarehouse from '/data/data_test/warehouse.dat' with DELIMITER '|' NULL '' ;


                    COPYship_mode from '/data/data_test/ship_mode.dat' with DELIMITER '|' NULL '' ;


                    COPYtime_dim from '/data/data_test/time_dim.dat' with DELIMITER '|' NULL '' ;


                    COPYreason from '/data/data_test/reason.dat' with DELIMITER '|' NULL '' ;


                    COPYincome_band from '/data/data_test/income_band.dat' with DELIMITER '|' NULL '' ;


                    COPYitem from '/data/data_test/item.dat' with DELIMITER '|' NULL '' ;


                    COPYstore from '/data/data_test/store.dat' with DELIMITER '|' NULL '' ;


                    COPYcall_center from '/data/data_test/call_center.dat' with DELIMITER '|' NULL '' ;


                    COPYcustomer from '/data/data_test/tcustomer.dat' with DELIMITER '|' NULL '' ;


                    COPYweb_site from '/data/data_test/web_site.dat' with DELIMITER '|' NULL '' ;


                    COPYstore_returns from '/data/data_test/store_returns.dat' with DELIMITER '|' NULL '' ;


                    COPYhousehold_demographics from '/data/data_test/household_demographics.dat' with DELIMITER '|' NULL '' ;


                    COPYweb_page from '/data/data_test/web_page.dat' with DELIMITER '|' NULL '' ;


                    COPYpromotion from '/data/data_test/promotion.dat' with DELIMITER '|' NULL '' ;


                    COPYcatalog_page from '/data/data_test/catalog_page.dat' with DELIMITER '|' NULL '' ;


                    COPYinventory from '/data/data_test/inventory.dat' with DELIMITER '|' NULL '' ;


                    COPYcatalog_returns from '/data/data_test/catalog_returns.dat' with DELIMITER '|' NULL '' ;


                    COPYweb_returns from '/data/data_test/web_returns.dat' with DELIMITER '|' NULL '' ;


                    COPYweb_sales from '/data/data_test/web_sales.dat' with DELIMITER '|' NULL '' ;


                    COPYcatalog_sales from '/data/data_test/catalog_sales.dat' with DELIMITER '|' NULL '' ;


                    COPYstore_sales from '/data/data_test/store_sales.dat' with DELIMITER '|' NULL '' ;



                    七、执行tpcds测试语句,并记录时间

                      begin_time=`date +%s.%N`


                      nohup bash -x root/query_exec.sh > data/data_test/query/log/query_exec.log 2>&1


                      ############脚本内容###############################################


                      # query_path='/data/data_test/query'


                      # total_cost=0


                      # for i in {1..99}


                      # do


                      #echo "begin run Q${i}, ${query_path}/Query${i}.sql , `date`"


                      #begin_time=`date +%s.%N`


                      #su - halo -c " psql -d oracle -f ${query_path}/Query${i}.sql > ${query_path}/log/log_query${i}_`date`.out "




                      #rc=$?


                      #end_time=`date +%s.%N`


                      #cost=`echo "$end_time-$begin_time"|bc`


                      #total_cost=`echo "$total_cost+$cost"|bc`


                      #if [ $rc -ne 0 ] ; then


                      # printf "run Q%s fail, cost: %.2f, totalCost: %.2f, `date`\n" $i $cost $total_cost


                      #else


                      # printf "run Q%s succ, cost: %.2f, totalCost: %.2f, `date`\n" $i $cost $total_cost


                      #fi


                      # done


                      ###############################################################################################################


                      end_time=`date +%s.%N`
                      「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
                      关注作者
                      【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                      评论