insert_time_1 = process_time() print("Inserting 10k records took: \t\t\t", insert_time_1 - insert_time_0) # Measuring update Performance update_cols = [ [randrange(0, 100), None, None, None, None], [None, randrange(0, 100), None, None, None], [None, None, randrange(0, 100), None, None], [None, None, None, randrange(0, 100), None], [None, None, None, None, randrange(0, 100)], ] update_time_0 = process_time() for i in range(0, 10000): query.update(choice(keys), *(choice(update_cols))) update_time_1 = process_time() print("Updating 10k records took: \t\t\t", update_time_1 - update_time_0) # Measuring Select Performance select_time_0 = process_time() for i in range(0, 10000): query.select(choice(keys), 0, [1, 1, 1, 1, 1]) select_time_1 = process_time() print("Selecting 10k records took: \t\t\t", select_time_1 - select_time_0) # Measuring Aggregate Performance agg_time_0 = process_time() for i in range(0, 10000, 100): result = query.sum(i, 100, randrange(0, 5)) agg_time_1 = process_time()
loop = 1000 rec = q.select(92106429, 0, [1, 1, 1, 1, 1])[0] rec2 = q.select(92106430, 0, [1, 1, 1, 1, 1])[0] print("Original Record Contents: ") print(rec) print(rec2) print("Update Test ", loop, " times:") record = q.select(92106429, 0, [1, 1, 1, 1, 1])[0] updater = [None, None, 100, None, None] updater2 = [None, None, None, 100, None] for x in range(loop): rec3 = q.select(92106429, 0, [1, 1, 1, 1, 1])[0] q.update(92106429, *updater) #print(rec3) q.update(92106430, *updater2) rec4 = q.select(92106430, 0, [1, 1, 1, 1, 1])[0] #print(rec4) rec3 = q.select(92106429, 0, [1, 1, 1, 1, 1])[0] rec4 = q.select(92106430, 0, [1, 1, 1, 1, 1])[0] print("Rec = ", rec3) print("Rec2 = ", rec4) rec3f = q.selectFull(92106429, 0) rec4f = q.selectFull(92106430, 0) print("Rec_full = ", rec3f) print("Rec2_ full = ", rec4f) db.close()
for i, column in enumerate(record.columns): if column != records[key][i]: error = True if error: print('select error on', key, ':', record, ', correct:', records[key]) else: print('select on', key, ':', record) for key in records: updated_columns = [None, None, None, None, None] for i in range(1, grades_table.num_columns): value = randint(0, 20) updated_columns[i] = value original = records[key].copy() records[key][i] = value query.update(key, *updated_columns) record = query.select(key, 0, [1, 1, 1, 1, 1])[0] error = False for j, column in enumerate(record.columns): if column != records[key][j]: error = True if error: print('update error on', original, 'and', updated_columns, ':', record, ', correct:', records[key]) else: print('update on', original, 'and', updated_columns, ':', record) updated_columns[i] = None #grades_table.index.print_trees() """keys = sorted(list(records.keys())) for c in range(0, grades_table.num_columns):
db.open('ECS165') grades_table = db.create_table('Grades', 5, 0) query = Query(grades_table) keys = [] # Measuring Insert Performance query.insert(92106429, 93, 5, 7, 0) query.insert(92106430, 8, 7, 6, 5) rec = query.select(92106429, 0, [1,1,1,1,1])[0] rec2 = query.select(92106430, 0, [1,1,1,1,1])[0] print(rec) print(rec2) #print(rec.rid, rec.key, rec.columns) #print(rec2.rid, rec2.key, rec2.columns) # print("Update Test:") print(rec2.key) print(rec.key) record = query.select(92106429, 0, [1, 1, 1, 1, 1])[0] updater = [None,None,100,None,None] updater2 =[None,None,None,100,None] for i in range(0,5000): query.update(92106429, *updater) rec3 = query.select(92106429, 0, [1,1,1,1,1])[0] print(rec3) query.update(92106429, *updater2) rec4 = query.select(92106429, 0, [1,1,1,1,1])[0] print(rec4) db.close()