Skip to content

Commit 71f4c7c

Browse files
include number of edges and size of response in results
1 parent 73608e9 commit 71f4c7c

1 file changed

Lines changed: 11 additions & 4 deletions

File tree

deploy/performance.py

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,12 @@ def run_performance_analysis(deployments_to_validate=None, performance_spec=None
4040
for performance_query in quick_jsonl_file_iterator(f'./{q_file}'):
4141
if not performance_query:
4242
continue
43-
query_name = performance_query.pop('name')
43+
query_name = performance_query.pop('query_name')
4444
if queries and query_name not in queries:
4545
continue
4646
plater_performance_results[plater][deployment_env][query_name] = {'success_duration': [],
47+
'num_results': [],
48+
'response_size_bytes': [],
4749
'errors': []}
4850
for i in range(iterations):
4951
print(f'Sending query {query_name} to {deployment_env}: {plater}, iteration {i+1}')
@@ -55,18 +57,22 @@ def run_performance_analysis(deployments_to_validate=None, performance_spec=None
5557
profile=False,
5658
validate=False)
5759
num_results = len(trapi_response['message']['results'])
60+
response_size = len(json.dumps(trapi_response, separators=(',', ':')).encode('utf-8'))
5861
elif query_details["query_type"] == "cypher":
5962
cypher_query = performance_query["cypher_query"]
6063
cypher_response = send_cypher_query(url,
6164
cypher_query)
6265
# print(cypher_response)
6366
num_results = 1
67+
response_size = len(json.dumps(cypher_response, separators=(',', ':')).encode('utf-8'))
6468
else:
6569
print("huh")
6670
# print(trapi_response)
6771
duration = time.time() - start_time
68-
print(f'Got back {num_results} in {duration}.')
72+
print(f'Got back {num_results} results ({response_size} bytes) in {duration}s.')
6973
plater_performance_results[plater][deployment_env][query_name]['success_duration'].append(duration)
74+
plater_performance_results[plater][deployment_env][query_name]['num_results'].append(num_results)
75+
plater_performance_results[plater][deployment_env][query_name]['response_size_bytes'].append(response_size)
7076
except requests.exceptions.HTTPError as e:
7177
duration = time.time() - start_time
7278
print(f'Error occured after {duration} seconds: {e}.')
@@ -75,6 +81,7 @@ def run_performance_analysis(deployments_to_validate=None, performance_spec=None
7581
success_durations = plater_performance_results[plater][deployment_env][query_name]['success_duration']
7682
average = sum(success_durations) / len(success_durations) if success_durations else "N/A"
7783
print(f'Average time for {query_name} to {deployment_env}, {plater}: {average}')
84+
os.makedirs('./performance_results', exist_ok=True)
7885
with open(f'./performance_results/performance_analysis_results_{random.randrange(100000)}.json', 'w') as p_out:
7986
p_out.write(json.dumps(plater_performance_results, indent=4))
8087

@@ -88,8 +95,8 @@ def run_performance_analysis(deployments_to_validate=None, performance_spec=None
8895
#"robokopkg": {"files": ["./performance_queries/robokopkg_performance_trapi.jsonl"],
8996
# "queries": ["gene_to_chemical_qualifier_1"],
9097
# "query_type": "trapi"},
91-
"robokopkg": {"files": ["./performance_queries/robokopkg_performance_cypher.jsonl"],
92-
"queries": ["gene_to_chemical_1"],
98+
"robokopkg": {"files": ["./performance_queries/robokopkg_neo4j_cypher.jsonl"],
99+
"queries": ["gene_to_chemical_1", "gene_to_chemical_1_no_labels_call"],
93100
"query_type": "cypher"}
94101
# "hmdb": {"files": ["./performance_queries/hmdb_performance_queries.jsonl"]}
95102
}

0 commit comments

Comments
 (0)