execForMonetDB

This commit is contained in:
trochas
2024-12-11 12:17:32 +01:00
parent 1487434f5d
commit 09af80a82a

29
main.py
View File

@@ -11,6 +11,8 @@ requeteSelect4MonetDB = """SELECT * FROM flights WHERE "DAY" > 30;"""
requeteCreateTableMonetDB = """CREATE TABLE flights10 AS SELECT * FROM FLIGHTS WHERE "DAY" > 10;"""
requeteDeleteMonetDB = """DELETE FROM flights WHERE "DAY" > 10;"""
requeteInsertMonetDB = """INSERT INTO flights SELECT * FROM flights10;"""
requeteDropflight10MonetDB = """DROP TABLE flights10;"""
#Postgre SQL
requeteSelect1PostgreSQL = """SELECT * FROM public.flights WHERE airline = 'AA'"""
@@ -35,25 +37,38 @@ def initMonetDB():
start_time = time.time()
create_table_monetdb()
end_time = time.time()
print("[MonetDB] create table: time = ", (end_time - start_time), "s")
print("[MonetDB] create table: time = ", (end_time - start_time), "s\n")
start_time = time.time()
load_data_monetdb()
end_time = time.time()
print("[MonetDB] load data : time = ", (end_time - start_time), "s")
print("[MonetDB] load data : time = ", (end_time - start_time), "s\n")
def execMonetDB(str):
start_time = time.time()
requete_monetdb(str)
end_time = time.time()
print("[MonetDB] requete :", str , "\n time = ", (end_time - start_time), "s")
return end_time-start_time
def runMonetDB():
execMonetDB(requeteSelect1MonetDB)
execMonetDB(requeteSelect2MonetDB)
execMonetDB(requeteSelect3MonetDB)
execMonetDB(requeteSelect4MonetDB)
execForMonetDB(5,[requeteSelect1MonetDB])
execForMonetDB(5,[requeteSelect2MonetDB])
execForMonetDB(5,[requeteSelect3MonetDB])
execForMonetDB(5,[requeteSelect4MonetDB])
execForMonetDB(5,[requeteDropflight10MonetDB,requeteCreateTableMonetDB,requeteDeleteMonetDB,requeteInsertPostgreSQL])
#execute n fois les n requêtes
def execForMonetDB(n, tabReq):
t = [0] * len(tabReq)
for i in range(n) :
for j in range(len(tabReq)) :
t[j]+=execMonetDB(tabReq[j])
for j in range(len(tabReq)):
t[j] = t[j]/n
print("[MonetDB] requete (moyenne de",n,") :", tabReq[j] , "\n time = ", t[j], "s\n")
def runPostgreSQL():
reset_database_postgres()