patch 4.0
This commit is contained in:
@ -0,0 +1,76 @@
|
||||
#!/bin/env python
|
||||
__author__ = 'dongyun.zdy'
|
||||
import subprocess as sp
|
||||
import os
|
||||
|
||||
schema_file = 'rowstore.schema'
|
||||
outfile = 'rowstore.result'
|
||||
|
||||
|
||||
def remove_schema():
|
||||
global schema_file
|
||||
if os.path.exists(schema_file):
|
||||
os.remove(schema_file)
|
||||
|
||||
def write_schema(s):
|
||||
global schema_file
|
||||
of = open(schema_file, 'w')
|
||||
of.write(s)
|
||||
of.close()
|
||||
|
||||
|
||||
def make_seq(t, cnt):
|
||||
types = [t]
|
||||
types *= cnt
|
||||
return types
|
||||
|
||||
|
||||
def make_schema(types):
|
||||
global schema_file
|
||||
remove_schema()
|
||||
col_id = 1
|
||||
s = "create table t1 ("
|
||||
for t in types:
|
||||
s += "c%d %s, " % (col_id, t)
|
||||
col_id += 1
|
||||
s = s[:-2]
|
||||
s += ', primary key (c1))'
|
||||
print s
|
||||
write_schema(s)
|
||||
|
||||
|
||||
cmdform = 'LD_LIBRARY_PATH=.:$LD_LIBRARY_PATH ./cost_model_util -RBGK -t material -s rowstore.schema -r 10 -i1'.split()
|
||||
|
||||
|
||||
types_to_test = {'bigint':'bigint', 'double':'double', 'float':'float', 'timestamp':'timestamp', 'number':'number(20,3)', 'v32':'varchar(32)', 'v64':'varchar(64)', 'v128':'varchar(128)'}
|
||||
row_counts = [1000, 2000, 3000, 4000, 5000, 6000, 7000, 8000, 9000, 10000, 20000, 50000]
|
||||
col_nums = [1, 3, 20, 50]
|
||||
case_run_time = 7
|
||||
|
||||
total_case_count = len(types_to_test) * len(row_counts) * len(col_nums)
|
||||
case_count = 0
|
||||
|
||||
if os.path.exists(outfile):
|
||||
os.remove(outfile)
|
||||
|
||||
# for t in types_to_test:
|
||||
# outfile = 'rowstore.result.' + t
|
||||
# if os.path.exists(outfile):
|
||||
# os.remove(outfile)
|
||||
# for n in col_nums:
|
||||
# make_schema(make_seq(types_to_test[t], n))
|
||||
# for rc in row_counts:
|
||||
# cmdform[8] = str(rc)
|
||||
# case_count += 1
|
||||
# prompt = "# %d / %d %s col_cnt = %d rc = %d \n# %s" % (case_count, total_case_count, t, n, rc, ' '.join(cmdform))
|
||||
# print prompt
|
||||
# sp.check_call('echo "%s" >> ' % prompt + outfile, shell=True)
|
||||
# for times in xrange(0, case_run_time):
|
||||
# print times
|
||||
# sp.check_call("echo -n '%s,' >> " % str(rc) + outfile, shell=True)
|
||||
# sp.check_call("echo -n '%s,' >> " % str(n) + outfile, shell=True)
|
||||
# sp.check_call(" ".join(cmdform) + ' >> ' + outfile, shell=True)
|
||||
|
||||
make_schema(make_seq('bigint', 50))
|
||||
|
||||
|
Reference in New Issue
Block a user