def analyze_lucene_index(self):
results = IndexCharacteristics("Lucene", self.ingestion_thread_count, self.thread_counts)
results.index_type = "Lucene"
# Don't know how to determine bits per posting for Lucene.
results.bits_per_posting = math.nan
with open(self.lucene_build_index_log, 'r') as myfile:
build_index_log = myfile.read()
results.total_ingestion_time = \
float(re.findall("Ingested \d+ chunk files in (\d+\.?\d+) seconds.", build_index_log)[0])
for i, threads in enumerate(self.thread_counts):
run_queries_log = self.lucene_run_queries_log[i]
with open(run_queries_log, 'r') as myfile:
data = myfile.read()
results.append_float_field("qps", "QPS:", data)
results.append_float_field("mps", "MPS:", data)
results.append_float_field("mpq", "MPQ:", data)
results.append_float_field("mean_query_latency", "Mean query latency:", data)
results.append_float_field("planning_overhead", r"Planning overhead:", data)
# Lucene false positive rate is always zero.
results.false_positive_rate = 0;
results.false_negative_rate = 0;
return results
###########################################################################
#
# MG4J
#
###########################################################################
评论列表
文章目录