//Create a in-memory table n=80000 symbols=symbol(string(1..500)) dates=date(datetimeAdd(2020.01.01,0..366,'d')) years=date(datetimeAdd(2020.01M,0..30*12,'M')) date=dates[0] time=rand(timestamp(date)+0..(1000*60*60*23),n*500) syms=take(symbols,n*500) price=randNormal(100,5,n*500) volume=randNormal(1000,5,n*500) side=`B`B side=symbol(side) side=take(side,n*500) sources=`tp`tp sources=symbol(sources) sources=take(sources,n*500) tmp=table(time, syms as symbol,price, volume,side,sources as source) dbPath="dfs://testdb" dbPathTSDB="dfs://testdb_tsdb" login(`admin,`123456) dates=date(datetimeAdd(2012.01.01,0..1000,'d')) if(existsDatabase(dbPath)){ dropDatabase(dbPath) } if(existsDatabase(dbPathTSDB)){ dropDatabase(dbPathTSDB) } dbSource = database("",VALUE,["tp"]) dbTime = database("",VALUE,2012.01.01..2021.12.31) dbSym = database("",HASH,[SYMBOL, 5]) db=database(dbPath,COMPO,[dbSym,dbSource,dbTime]) dbTSDB=database(dbPathTSDB,COMPO,[dbSym,dbSource,dbTime],,'TSDB') //Build partitioned tables in testdb and testdb_tsdb t=table(100:0, `time`symbol`price`volume`side`source, [TIMESTAMP,SYMBOL,FLOAT,FLOAT,SYMBOL,SYMBOL]) db.createPartitionedTable(t,`quotes,`symbol`source`time) db.createPartitionedTable(t,`quotes_2,`symbol`source`time) dbTSDB.createPartitionedTable(t,`quotes_tsdb,`symbol`source`time, ,`symbol`time) //Functions to write data in testdb and testdb_tsdb def load_one_day_data (date,db_path,table_name,input_table){ db_table = loadTable(database=db_path, tableName=table_name) tmpt=copy(input_table) s=date-2020.01.01 update tmpt set time=time.temporalAdd(s,'d') db_table.append!(tmpt) } smallDates=dates[0:100] def load_data(dates, db_path, table_name,tmp_table) { for (date in dates) { job_name = "load_data_" + table_name + "_" + year(date)+"_" + monthOfYear(date)+"_"+dayOfMonth(date) job_desc = "TO: " + db_path submitJob(job_name,job_desc,load_one_day_data,date,db_path,table_name,tmp_table) print(job_name + " is submitted...") } } load_data(smallDates,dbPath,`quotes,tmp) load_data(smallDates,dbPath,`quotes_2,tmp) load_data(smallDates,dbPathTSDB,`quotes_tsdb,tmp)