vectordb-bench 0.0.1__py3-none-any.whl → 0.0.3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. vectordb_bench/__init__.py +14 -3
  2. vectordb_bench/backend/assembler.py +2 -2
  3. vectordb_bench/backend/cases.py +146 -57
  4. vectordb_bench/backend/clients/__init__.py +6 -1
  5. vectordb_bench/backend/clients/api.py +23 -11
  6. vectordb_bench/backend/clients/elastic_cloud/config.py +5 -5
  7. vectordb_bench/backend/clients/elastic_cloud/elastic_cloud.py +11 -9
  8. vectordb_bench/backend/clients/milvus/config.py +2 -3
  9. vectordb_bench/backend/clients/milvus/milvus.py +32 -19
  10. vectordb_bench/backend/clients/pgvector/config.py +49 -0
  11. vectordb_bench/backend/clients/pgvector/pgvector.py +171 -0
  12. vectordb_bench/backend/clients/pinecone/config.py +3 -3
  13. vectordb_bench/backend/clients/pinecone/pinecone.py +19 -13
  14. vectordb_bench/backend/clients/qdrant_cloud/config.py +23 -6
  15. vectordb_bench/backend/clients/qdrant_cloud/qdrant_cloud.py +12 -13
  16. vectordb_bench/backend/clients/weaviate_cloud/config.py +3 -3
  17. vectordb_bench/backend/clients/weaviate_cloud/weaviate_cloud.py +9 -8
  18. vectordb_bench/backend/clients/zilliz_cloud/config.py +5 -4
  19. vectordb_bench/backend/clients/zilliz_cloud/zilliz_cloud.py +3 -1
  20. vectordb_bench/backend/dataset.py +100 -162
  21. vectordb_bench/backend/result_collector.py +2 -2
  22. vectordb_bench/backend/runner/mp_runner.py +29 -13
  23. vectordb_bench/backend/runner/serial_runner.py +98 -36
  24. vectordb_bench/backend/task_runner.py +43 -48
  25. vectordb_bench/frontend/components/check_results/charts.py +10 -21
  26. vectordb_bench/frontend/components/check_results/data.py +31 -15
  27. vectordb_bench/frontend/components/check_results/expanderStyle.py +37 -0
  28. vectordb_bench/frontend/components/check_results/filters.py +61 -33
  29. vectordb_bench/frontend/components/check_results/footer.py +8 -0
  30. vectordb_bench/frontend/components/check_results/headerIcon.py +8 -4
  31. vectordb_bench/frontend/components/check_results/nav.py +7 -6
  32. vectordb_bench/frontend/components/check_results/priceTable.py +3 -2
  33. vectordb_bench/frontend/components/check_results/stPageConfig.py +18 -0
  34. vectordb_bench/frontend/components/get_results/saveAsImage.py +50 -0
  35. vectordb_bench/frontend/components/run_test/autoRefresh.py +1 -1
  36. vectordb_bench/frontend/components/run_test/caseSelector.py +19 -16
  37. vectordb_bench/frontend/components/run_test/dbConfigSetting.py +20 -7
  38. vectordb_bench/frontend/components/run_test/dbSelector.py +5 -5
  39. vectordb_bench/frontend/components/run_test/hideSidebar.py +4 -6
  40. vectordb_bench/frontend/components/run_test/submitTask.py +16 -10
  41. vectordb_bench/frontend/const/dbCaseConfigs.py +291 -0
  42. vectordb_bench/frontend/const/dbPrices.py +6 -0
  43. vectordb_bench/frontend/const/styles.py +58 -0
  44. vectordb_bench/frontend/pages/{qps_with_price.py → quries_per_dollar.py} +24 -17
  45. vectordb_bench/frontend/pages/run_test.py +17 -11
  46. vectordb_bench/frontend/vdb_benchmark.py +19 -12
  47. vectordb_bench/metric.py +19 -10
  48. vectordb_bench/models.py +14 -40
  49. vectordb_bench/results/dbPrices.json +32 -0
  50. vectordb_bench/results/getLeaderboardData.py +52 -0
  51. vectordb_bench/results/leaderboard.json +1 -0
  52. vectordb_bench/results/{result_20230609_standard.json → result_20230705_standard.json} +1910 -897
  53. {vectordb_bench-0.0.1.dist-info → vectordb_bench-0.0.3.dist-info}/METADATA +107 -27
  54. vectordb_bench-0.0.3.dist-info/RECORD +67 -0
  55. vectordb_bench/frontend/const.py +0 -391
  56. vectordb_bench-0.0.1.dist-info/RECORD +0 -56
  57. {vectordb_bench-0.0.1.dist-info → vectordb_bench-0.0.3.dist-info}/LICENSE +0 -0
  58. {vectordb_bench-0.0.1.dist-info → vectordb_bench-0.0.3.dist-info}/WHEEL +0 -0
  59. {vectordb_bench-0.0.1.dist-info → vectordb_bench-0.0.3.dist-info}/entry_points.txt +0 -0
  60. {vectordb_bench-0.0.1.dist-info → vectordb_bench-0.0.3.dist-info}/top_level.txt +0 -0
@@ -4,19 +4,17 @@ from vectordb_bench.frontend.components.run_test.caseSelector import caseSelecto
4
4
  from vectordb_bench.frontend.components.run_test.dbConfigSetting import dbConfigSettings
5
5
  from vectordb_bench.frontend.components.run_test.dbSelector import dbSelector
6
6
  from vectordb_bench.frontend.components.run_test.generateTasks import generate_tasks
7
- from vectordb_bench.frontend.components.check_results.headerIcon import drawHeaderIcon
8
7
  from vectordb_bench.frontend.components.run_test.hideSidebar import hideSidebar
9
- from vectordb_bench.frontend.components.check_results.nav import NavToResults
10
8
  from vectordb_bench.frontend.components.run_test.submitTask import submitTask
9
+ from vectordb_bench.frontend.components.check_results.nav import NavToResults
10
+ from vectordb_bench.frontend.components.check_results.headerIcon import drawHeaderIcon
11
+ from vectordb_bench.frontend.components.check_results.stPageConfig import initRunTestPageConfig
11
12
 
12
13
 
13
14
  def main():
14
- st.set_page_config(
15
- page_title="VectorDB Benchmark",
16
- page_icon="https://assets.zilliz.com/favicon_f7f922fe27.png",
17
- # layout="wide",
18
- initial_sidebar_state="collapsed",
19
- )
15
+ # set page config
16
+ initRunTestPageConfig(st)
17
+
20
18
  # header
21
19
  drawHeaderIcon(st)
22
20
 
@@ -36,20 +34,28 @@ def main():
36
34
 
37
35
  # db config setting
38
36
  dbConfigs = {}
37
+ isAllValid = True
39
38
  if len(activedDbList) > 0:
40
39
  dbConfigContainer = st.container()
41
- dbConfigs = dbConfigSettings(dbConfigContainer, activedDbList)
40
+ dbConfigs, isAllValid = dbConfigSettings(dbConfigContainer, activedDbList)
42
41
 
43
42
  # select case and set db_case_config
44
43
  caseSelectorContainer = st.container()
45
44
  activedCaseList, allCaseConfigs = caseSelector(caseSelectorContainer, activedDbList)
46
45
 
47
46
  # generate tasks
48
- tasks = generate_tasks(activedDbList, dbConfigs, activedCaseList, allCaseConfigs)
47
+ tasks = (
48
+ generate_tasks(activedDbList, dbConfigs, activedCaseList, allCaseConfigs)
49
+ if isAllValid
50
+ else []
51
+ )
49
52
 
50
53
  # submit
51
54
  submitContainer = st.container()
52
- submitTask(submitContainer, tasks)
55
+ submitTask(submitContainer, tasks, isAllValid)
56
+
57
+ # nav to results
58
+ NavToResults(st, key="footer-nav-to-results")
53
59
 
54
60
  # autofresh
55
61
  autoRefresh()
@@ -1,19 +1,18 @@
1
1
  import streamlit as st
2
- from vectordb_bench.frontend.const import *
2
+ from vectordb_bench.frontend.components.check_results.footer import footer
3
+ from vectordb_bench.frontend.components.check_results.stPageConfig import initResultsPageConfig
3
4
  from vectordb_bench.frontend.components.check_results.headerIcon import drawHeaderIcon
4
- from vectordb_bench.frontend.components.check_results.nav import NavToQPSWithPrice, NavToRunTest
5
+ from vectordb_bench.frontend.components.check_results.nav import NavToQuriesPerDollar, NavToRunTest
5
6
  from vectordb_bench.frontend.components.check_results.charts import drawCharts
6
7
  from vectordb_bench.frontend.components.check_results.filters import getshownData
8
+ from vectordb_bench.frontend.components.get_results.saveAsImage import getResults
9
+ from vectordb_bench.frontend.const.styles import *
7
10
  from vectordb_bench.interface import benchMarkRunner
8
11
 
9
12
 
10
13
  def main():
11
- st.set_page_config(
12
- page_title="VectorDB Benchmark",
13
- page_icon="https://assets.zilliz.com/favicon_f7f922fe27.png",
14
- # layout="wide",
15
- # initial_sidebar_state="collapsed",
16
- )
14
+ # set page config
15
+ initResultsPageConfig(st)
17
16
 
18
17
  # header
19
18
  drawHeaderIcon(st)
@@ -21,22 +20,30 @@ def main():
21
20
  allResults = benchMarkRunner.get_results()
22
21
 
23
22
  st.title("Vector Database Benchmark")
24
- # st.write("description [todo]")
25
23
 
26
- # results selector
24
+ # results selector and filter
27
25
  resultSelectorContainer = st.sidebar.container()
28
- shownData, failedTasks, showCases = getshownData(allResults, resultSelectorContainer)
26
+ shownData, failedTasks, showCases = getshownData(
27
+ allResults, resultSelectorContainer
28
+ )
29
29
 
30
30
  resultSelectorContainer.divider()
31
31
 
32
32
  # nav
33
33
  navContainer = st.sidebar.container()
34
34
  NavToRunTest(navContainer)
35
- NavToQPSWithPrice(navContainer)
35
+ NavToQuriesPerDollar(navContainer)
36
+
37
+ # save or share
38
+ resultesContainer = st.sidebar.container()
39
+ getResults(resultesContainer, "vectordb_bench")
36
40
 
37
41
  # charts
38
42
  drawCharts(st, shownData, failedTasks, showCases)
39
43
 
44
+ # footer
45
+ footer(st.container())
46
+
40
47
 
41
48
  if __name__ == "__main__":
42
49
  main()
vectordb_bench/metric.py CHANGED
@@ -20,23 +20,32 @@ class Metric:
20
20
  serial_latency_p99: float = 0.0
21
21
  recall: float = 0.0
22
22
 
23
+
24
+ QURIES_PER_DOLLAR_METRIC = "QP$ (Quries per Dollar)"
25
+ LOAD_DURATION_METRIC = "load_duration"
26
+ SERIAL_LATENCY_P99_METRIC = "serial_latency_p99"
27
+ MAX_LOAD_COUNT_METRIC = "max_load_count"
28
+ QPS_METRIC = "qps"
29
+ RECALL_METRIC = "recall"
30
+
23
31
  metricUnitMap = {
24
- 'load_duration': 's',
25
- 'serial_latency_p99': 'ms',
26
- 'max_load_count': 'K'
32
+ LOAD_DURATION_METRIC: "s",
33
+ SERIAL_LATENCY_P99_METRIC: "ms",
34
+ MAX_LOAD_COUNT_METRIC: "K",
35
+ QURIES_PER_DOLLAR_METRIC: "K",
27
36
  }
28
37
 
29
38
  lowerIsBetterMetricList = [
30
- "load_duration",
31
- "serial_latency_p99",
39
+ LOAD_DURATION_METRIC,
40
+ SERIAL_LATENCY_P99_METRIC,
32
41
  ]
33
42
 
34
43
  metricOrder = [
35
- "qps",
36
- "recall",
37
- "load_duration",
38
- "serial_latency_p99",
39
- "max_load_count",
44
+ QPS_METRIC,
45
+ RECALL_METRIC,
46
+ LOAD_DURATION_METRIC,
47
+ SERIAL_LATENCY_P99_METRIC,
48
+ MAX_LOAD_COUNT_METRIC,
40
49
  ]
41
50
 
42
51
 
vectordb_bench/models.py CHANGED
@@ -12,6 +12,7 @@ from .backend.clients import (
12
12
  DBCaseConfig,
13
13
  IndexType,
14
14
  )
15
+ from .backend.cases import CaseType
15
16
  from .base import BaseModel
16
17
  from . import config
17
18
  from .metric import Metric
@@ -27,38 +28,6 @@ class PerformanceTimeoutError(TimeoutError):
27
28
  pass
28
29
 
29
30
 
30
- class CaseType(Enum):
31
- """
32
- Value will be displayed in UI
33
- """
34
-
35
- CapacitySDim = "Capacity Test (Large-dim)"
36
- CapacityLDim = "Capacity Test (Small-dim)"
37
-
38
- Performance100M = "Search Performance Test (XLarge Dataset)"
39
- PerformanceLZero = "Search Performance Test (Large Dataset)"
40
- PerformanceMZero = "Search Performance Test (Medium Dataset)"
41
- PerformanceSZero = "Search Performance Test (Small Dataset)"
42
-
43
- PerformanceLLow = (
44
- "Filtering Search Performance Test (Large Dataset, Low Filtering Rate)"
45
- )
46
- PerformanceMLow = (
47
- "Filtering Search Performance Test (Medium Dataset, Low Filtering Rate)"
48
- )
49
- PerformanceSLow = (
50
- "Filtering Search Performance Test (Small Dataset, Low Filtering Rate)"
51
- )
52
- PerformanceLHigh = (
53
- "Filtering Search Performance Test (Large Dataset, High Filtering Rate)"
54
- )
55
- PerformanceMHigh = (
56
- "Filtering Search Performance Test (Medium Dataset, High Filtering Rate)"
57
- )
58
- PerformanceSHigh = (
59
- "Filtering Search Performance Test (Small Dataset, High Filtering Rate)"
60
- )
61
-
62
31
 
63
32
  class CaseConfigParamType(Enum):
64
33
  """
@@ -74,6 +43,8 @@ class CaseConfigParamType(Enum):
74
43
  Nprobe = "nprobe"
75
44
  MaxConnections = "maxConnections"
76
45
  numCandidates = "num_candidates"
46
+ lists = "lists"
47
+ probes = "probes"
77
48
 
78
49
 
79
50
  class CustomizedCase(BaseModel):
@@ -151,6 +122,7 @@ class TestResult(BaseModel):
151
122
  task_config = case_result.get("task_config")
152
123
  db = DB(task_config.get("db"))
153
124
  dbcls = db.init_cls
125
+
154
126
  task_config["db_config"] = dbcls.config_cls()(
155
127
  **task_config["db_config"]
156
128
  )
@@ -197,20 +169,21 @@ class TestResult(BaseModel):
197
169
  max_qps = max(map(len, [str(f.metrics.qps) for f in filtered_results])) + 3
198
170
  max_recall = max(map(len, [str(f.metrics.recall) for f in filtered_results])) + 3
199
171
 
200
- max_db_labels = 8 if max_db_labels == 0 else max_db_labels
201
- max_load_dur = 11 if max_load_dur == 0 else max_load_dur + 3
202
- max_qps = 10 if max_qps == 0 else max_load_dur + 3
203
- max_recall = 13 if max_recall == 0 else max_recall + 3
172
+ max_db_labels = 8 if max_db_labels < 8 else max_db_labels
173
+ max_load_dur = 11 if max_load_dur < 11 else max_load_dur
174
+ max_qps = 10 if max_qps < 10 else max_qps
175
+ max_recall = 13 if max_recall < 13 else max_recall
204
176
 
205
- LENGTH = (max_db, max_db_labels, max_case, len(self.task_label), max_load_dur, max_qps, 15, max_recall, 14)
177
+ LENGTH = (max_db, max_db_labels, max_case, len(self.task_label), max_load_dur, max_qps, 15, max_recall, 14, 5)
206
178
 
207
179
  DATA_FORMAT = (
208
- f"%-{max_db}s | %-{max_db_labels}s %-{max_case}s %-{len(self.task_label)}s "
209
- f"| %-{max_load_dur}s %-{max_qps}s %-15s %-{max_recall}s %-14s"
180
+ f"%-{max_db}s | %-{max_db_labels}s %-{max_case}s %-{len(self.task_label)}s"
181
+ f" | %-{max_load_dur}s %-{max_qps}s %-15s %-{max_recall}s %-14s"
182
+ f" | %-5s"
210
183
  )
211
184
 
212
185
  TITLE = DATA_FORMAT % (
213
- "DB", "db_label", "case", "label", "load_dur", "qps", "latency(p99)", "recall", "max_load_count")
186
+ "DB", "db_label", "case", "label", "load_dur", "qps", "latency(p99)", "recall", "max_load_count", "label")
214
187
  SPLIT = DATA_FORMAT%tuple(map(lambda x:"-"*x, LENGTH))
215
188
  SUMMERY_FORMAT = ("Task summery: run_id=%s, task_label=%s") % (self.run_id[:5], self.task_label)
216
189
  fmt = [SUMMERY_FORMAT, TITLE, SPLIT]
@@ -227,6 +200,7 @@ class TestResult(BaseModel):
227
200
  f.metrics.serial_latency_p99,
228
201
  f.metrics.recall,
229
202
  f.metrics.max_load_count,
203
+ f.label.value,
230
204
  ))
231
205
 
232
206
  tmp_logger = logging.getLogger("no_color")
@@ -0,0 +1,32 @@
1
+ {
2
+ "Milvus": {},
3
+ "ZillizCloud": {
4
+ "1cu-perf": 0.159,
5
+ "8cu-perf": 1.272,
6
+ "1cu-cap": 0.159,
7
+ "2cu-cap": 0.318
8
+ },
9
+ "WeaviateCloud": {
10
+ "standard": 10.1,
11
+ "bus_crit": 32.6
12
+ },
13
+ "ElasticCloud": {
14
+ "upTo2.5c8g": 0.4793
15
+ },
16
+ "QdrantCloud": {
17
+ "0.5c4g-1node": 0.052,
18
+ "2c8g-1node": 0.166,
19
+ "4c16g-1node": 0.2852,
20
+ "4c16g-5node": 1.426
21
+ },
22
+ "Pinecone": {
23
+ "s1.x1": 0.0973,
24
+ "s1.x2": 0.194,
25
+ "p1.x1": 0.0973,
26
+ "p2.x1": 0.146,
27
+ "p2.x1-8node": 1.168,
28
+ "p1.x1-8node": 0.779,
29
+ "s1.x1-2node": 0.195
30
+ },
31
+ "PgVector": {}
32
+ }
@@ -0,0 +1,52 @@
1
+ from vectordb_bench import config
2
+ import ujson
3
+ import pathlib
4
+ from vectordb_bench.backend.cases import CaseType
5
+ from vectordb_bench.frontend.const.dbPrices import DB_DBLABEL_TO_PRICE
6
+ from vectordb_bench.interface import benchMarkRunner
7
+ from vectordb_bench.models import CaseResult, ResultLabel, TestResult
8
+
9
+ taskLabelToCode = {
10
+ ResultLabel.FAILED: -1,
11
+ ResultLabel.OUTOFRANGE: -2,
12
+ ResultLabel.NORMAL: 1,
13
+ }
14
+
15
+
16
+ def main():
17
+ allResults: list[TestResult] = benchMarkRunner.get_results()
18
+ results: list[CaseResult] = []
19
+ for result in allResults:
20
+ if result.task_label == "standard":
21
+ results += result.results
22
+
23
+ if allResults is not None:
24
+ data = [
25
+ {
26
+ "db": d.task_config.db.value,
27
+ "db_label": d.task_config.db_config.db_label,
28
+ "db_name": d.task_config.db_name,
29
+ "case": d.task_config.case_config.case_id.case_name,
30
+ "qps": d.metrics.qps,
31
+ "latency": d.metrics.serial_latency_p99,
32
+ "label": taskLabelToCode[d.label],
33
+ }
34
+ for d in results
35
+ if d.task_config.case_config.case_id != CaseType.CapacityDim128
36
+ and d.task_config.case_config.case_id != CaseType.CapacityDim960
37
+ ]
38
+
39
+ # compute qp$
40
+ for d in data:
41
+ db = d["db"]
42
+ db_label = d["db_label"]
43
+ qps = d["qps"]
44
+ price = DB_DBLABEL_TO_PRICE.get(db, {}).get(db_label, 0)
45
+ d["qp$"] = qps / price if price > 0 else 0.0
46
+
47
+ with open(pathlib.Path(config.RESULTS_LOCAL_DIR, "leaderboard.json"), "w") as f:
48
+ ujson.dump(data, f)
49
+
50
+
51
+ if __name__ == "__main__":
52
+ main()
@@ -0,0 +1 @@
1
+ [{"db":"ElasticCloud","db_label":"upTo2.5c8g","db_name":"ElasticCloud-upTo2.5c8g","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":15.2269,"latency":861.8,"label":1,"qp$":31.76903818068016},{"db":"ElasticCloud","db_label":"upTo2.5c8g","db_name":"ElasticCloud-upTo2.5c8g","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":15.1749,"latency":774.3,"label":1,"qp$":31.660546630502814},{"db":"ElasticCloud","db_label":"upTo2.5c8g","db_name":"ElasticCloud-upTo2.5c8g","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":27.6181,"latency":305.5,"label":1,"qp$":57.621740037554765},{"db":"ElasticCloud","db_label":"upTo2.5c8g","db_name":"ElasticCloud-upTo2.5c8g","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":0.0,"latency":0.0,"label":-2,"qp$":0.0},{"db":"ElasticCloud","db_label":"upTo2.5c8g","db_name":"ElasticCloud-upTo2.5c8g","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":0.0,"latency":0.0,"label":-2,"qp$":0.0},{"db":"ElasticCloud","db_label":"upTo2.5c8g","db_name":"ElasticCloud-upTo2.5c8g","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":0.0,"latency":0.0,"label":-2,"qp$":0.0},{"db":"Milvus","db_label":"2c8g-disk","db_name":"Milvus-2c8g-disk","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":100.6667,"latency":21.1,"label":1,"qp$":0.0},{"db":"Milvus","db_label":"2c8g-disk","db_name":"Milvus-2c8g-disk","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":101.1399,"latency":19.7,"label":1,"qp$":0.0},{"db":"Milvus","db_label":"2c8g-disk","db_name":"Milvus-2c8g-disk","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":52.2606,"latency":18.3,"label":1,"qp$":0.0},{"db":"Milvus","db_label":"2c8g-disk","db_name":"Milvus-2c8g-disk","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"Milvus","db_label":"2c8g-disk","db_name":"Milvus-2c8g-disk","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"Milvus","db_label":"2c8g-disk","db_name":"Milvus-2c8g-disk","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"Milvus","db_label":"4c16g-disk","db_name":"Milvus-4c16g-disk","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":61.0661,"latency":49.8,"label":1,"qp$":0.0},{"db":"Milvus","db_label":"4c16g-disk","db_name":"Milvus-4c16g-disk","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":58.9326,"latency":44.6,"label":1,"qp$":0.0},{"db":"Milvus","db_label":"4c16g-disk","db_name":"Milvus-4c16g-disk","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":42.5977,"latency":54.9,"label":1,"qp$":0.0},{"db":"Milvus","db_label":"4c16g-disk","db_name":"Milvus-4c16g-disk","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":536.0726,"latency":8.200000000000001,"label":1,"qp$":0.0},{"db":"Milvus","db_label":"4c16g-disk","db_name":"Milvus-4c16g-disk","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":467.179,"latency":7.0,"label":1,"qp$":0.0},{"db":"Milvus","db_label":"4c16g-disk","db_name":"Milvus-4c16g-disk","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":431.7512,"latency":8.3,"label":1,"qp$":0.0},{"db":"ZillizCloud","db_label":"1cu-cap","db_name":"ZillizCloud-1cu-cap","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":330.0144,"latency":9.0,"label":1,"qp$":2075.5622641509435},{"db":"ZillizCloud","db_label":"1cu-cap","db_name":"ZillizCloud-1cu-cap","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":271.6585,"latency":10.1,"label":1,"qp$":1708.5440251572327},{"db":"ZillizCloud","db_label":"1cu-cap","db_name":"ZillizCloud-1cu-cap","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":216.5226,"latency":12.9,"label":1,"qp$":1361.777358490566},{"db":"ZillizCloud","db_label":"1cu-cap","db_name":"ZillizCloud-1cu-cap","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"ZillizCloud","db_label":"1cu-cap","db_name":"ZillizCloud-1cu-cap","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"ZillizCloud","db_label":"1cu-cap","db_name":"ZillizCloud-1cu-cap","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"ZillizCloud","db_label":"2cu-cap","db_name":"ZillizCloud-2cu-cap","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":123.9553,"latency":23.0,"label":1,"qp$":389.79654088050313},{"db":"ZillizCloud","db_label":"2cu-cap","db_name":"ZillizCloud-2cu-cap","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":59.1479,"latency":44.5,"label":1,"qp$":185.99968553459118},{"db":"ZillizCloud","db_label":"2cu-cap","db_name":"ZillizCloud-2cu-cap","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":40.999,"latency":55.300000000000004,"label":1,"qp$":128.92767295597486},{"db":"ZillizCloud","db_label":"2cu-cap","db_name":"ZillizCloud-2cu-cap","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":579.9416,"latency":9.4,"label":1,"qp$":1823.71572327044},{"db":"ZillizCloud","db_label":"2cu-cap","db_name":"ZillizCloud-2cu-cap","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":425.2529,"latency":11.299999999999999,"label":1,"qp$":1337.2732704402515},{"db":"ZillizCloud","db_label":"2cu-cap","db_name":"ZillizCloud-2cu-cap","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":397.0539,"latency":13.799999999999999,"label":1,"qp$":1248.5971698113208},{"db":"WeaviateCloud","db_label":"bus_crit","db_name":"WeaviateCloud-bus_crit","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"WeaviateCloud","db_label":"bus_crit","db_name":"WeaviateCloud-bus_crit","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"WeaviateCloud","db_label":"bus_crit","db_name":"WeaviateCloud-bus_crit","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"WeaviateCloud","db_label":"bus_crit","db_name":"WeaviateCloud-bus_crit","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":67.9121,"latency":179.5,"label":1,"qp$":2.083193251533742},{"db":"WeaviateCloud","db_label":"bus_crit","db_name":"WeaviateCloud-bus_crit","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":0.7636,"latency":1921.3,"label":1,"qp$":0.02342331288343558},{"db":"WeaviateCloud","db_label":"bus_crit","db_name":"WeaviateCloud-bus_crit","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":32.0,"latency":124.5,"label":1,"qp$":0.9815950920245399},{"db":"WeaviateCloud","db_label":"sandbox","db_name":"WeaviateCloud-sandbox","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"WeaviateCloud","db_label":"sandbox","db_name":"WeaviateCloud-sandbox","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"WeaviateCloud","db_label":"sandbox","db_name":"WeaviateCloud-sandbox","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"WeaviateCloud","db_label":"sandbox","db_name":"WeaviateCloud-sandbox","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"WeaviateCloud","db_label":"sandbox","db_name":"WeaviateCloud-sandbox","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"WeaviateCloud","db_label":"sandbox","db_name":"WeaviateCloud-sandbox","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"WeaviateCloud","db_label":"standard","db_name":"WeaviateCloud-standard","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":63.1365,"latency":145.7,"label":1,"qp$":6.251138613861386},{"db":"WeaviateCloud","db_label":"standard","db_name":"WeaviateCloud-standard","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":0.7512,"latency":1983.8,"label":1,"qp$":0.07437623762376237},{"db":"WeaviateCloud","db_label":"standard","db_name":"WeaviateCloud-standard","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":30.1358,"latency":129.8,"label":1,"qp$":2.983742574257426},{"db":"WeaviateCloud","db_label":"standard","db_name":"WeaviateCloud-standard","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"WeaviateCloud","db_label":"standard","db_name":"WeaviateCloud-standard","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"WeaviateCloud","db_label":"standard","db_name":"WeaviateCloud-standard","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"ZillizCloud","db_label":"1cu-perf","db_name":"ZillizCloud-1cu-perf","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":516.27,"latency":7.0,"label":1,"qp$":3246.9811320754716},{"db":"ZillizCloud","db_label":"1cu-perf","db_name":"ZillizCloud-1cu-perf","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":354.8416,"latency":10.0,"label":1,"qp$":2231.708176100629},{"db":"ZillizCloud","db_label":"1cu-perf","db_name":"ZillizCloud-1cu-perf","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":427.5229,"latency":8.7,"label":1,"qp$":2688.8232704402517},{"db":"ZillizCloud","db_label":"1cu-perf","db_name":"ZillizCloud-1cu-perf","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"ZillizCloud","db_label":"1cu-perf","db_name":"ZillizCloud-1cu-perf","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"ZillizCloud","db_label":"1cu-perf","db_name":"ZillizCloud-1cu-perf","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"ZillizCloud","db_label":"8cu-perf","db_name":"ZillizCloud-8cu-perf","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":2884.689,"latency":5.3,"label":1,"qp$":2267.837264150943},{"db":"ZillizCloud","db_label":"8cu-perf","db_name":"ZillizCloud-8cu-perf","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":1689.5799,"latency":6.6,"label":1,"qp$":1328.2860849056603},{"db":"ZillizCloud","db_label":"8cu-perf","db_name":"ZillizCloud-8cu-perf","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":1517.6792,"latency":10.0,"label":1,"qp$":1193.1440251572328},{"db":"ZillizCloud","db_label":"8cu-perf","db_name":"ZillizCloud-8cu-perf","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":822.5318,"latency":5.6,"label":1,"qp$":646.6444968553459},{"db":"ZillizCloud","db_label":"8cu-perf","db_name":"ZillizCloud-8cu-perf","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":378.9146,"latency":10.3,"label":1,"qp$":297.8888364779874},{"db":"ZillizCloud","db_label":"8cu-perf","db_name":"ZillizCloud-8cu-perf","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":218.6854,"latency":16.2,"label":1,"qp$":171.92248427672953},{"db":"Milvus","db_label":"2c8g-hnsw","db_name":"Milvus-2c8g-hnsw","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":274.5407,"latency":4.8999999999999995,"label":1,"qp$":0.0},{"db":"Milvus","db_label":"2c8g-hnsw","db_name":"Milvus-2c8g-hnsw","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":236.5672,"latency":10.3,"label":1,"qp$":0.0},{"db":"Milvus","db_label":"2c8g-hnsw","db_name":"Milvus-2c8g-hnsw","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":309.4833,"latency":4.3,"label":1,"qp$":0.0},{"db":"Milvus","db_label":"2c8g-hnsw","db_name":"Milvus-2c8g-hnsw","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"Milvus","db_label":"2c8g-hnsw","db_name":"Milvus-2c8g-hnsw","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"Milvus","db_label":"2c8g-hnsw","db_name":"Milvus-2c8g-hnsw","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"Milvus","db_label":"16c64g-hnsw","db_name":"Milvus-16c64g-hnsw","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":178.6585,"latency":13.700000000000001,"label":1,"qp$":0.0},{"db":"Milvus","db_label":"16c64g-hnsw","db_name":"Milvus-16c64g-hnsw","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":178.3732,"latency":15.0,"label":1,"qp$":0.0},{"db":"Milvus","db_label":"16c64g-hnsw","db_name":"Milvus-16c64g-hnsw","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":229.3526,"latency":12.5,"label":1,"qp$":0.0},{"db":"Milvus","db_label":"16c64g-hnsw","db_name":"Milvus-16c64g-hnsw","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":1258.7043,"latency":4.8999999999999995,"label":1,"qp$":0.0},{"db":"Milvus","db_label":"16c64g-hnsw","db_name":"Milvus-16c64g-hnsw","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":1075.8776,"latency":5.3,"label":1,"qp$":0.0},{"db":"Milvus","db_label":"16c64g-hnsw","db_name":"Milvus-16c64g-hnsw","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":1494.8493,"latency":4.7,"label":1,"qp$":0.0},{"db":"QdrantCloud","db_label":"2c8g-1node","db_name":"QdrantCloud-2c8g-1node","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"QdrantCloud","db_label":"2c8g-1node","db_name":"QdrantCloud-2c8g-1node","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"QdrantCloud","db_label":"2c8g-1node","db_name":"QdrantCloud-2c8g-1node","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"QdrantCloud","db_label":"2c8g-1node","db_name":"QdrantCloud-2c8g-1node","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"QdrantCloud","db_label":"2c8g-1node","db_name":"QdrantCloud-2c8g-1node","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"QdrantCloud","db_label":"2c8g-1node","db_name":"QdrantCloud-2c8g-1node","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"QdrantCloud","db_label":"4c16g-5node","db_name":"QdrantCloud-4c16g-5node","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":537.4975,"latency":18.9,"label":1,"qp$":376.9267180925666},{"db":"QdrantCloud","db_label":"4c16g-5node","db_name":"QdrantCloud-4c16g-5node","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":372.0466,"latency":17.8,"label":1,"qp$":260.9022440392707},{"db":"QdrantCloud","db_label":"4c16g-5node","db_name":"QdrantCloud-4c16g-5node","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":1156.2898,"latency":14.4,"label":1,"qp$":810.8624123422161},{"db":"QdrantCloud","db_label":"4c16g-5node","db_name":"QdrantCloud-4c16g-5node","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":110.248,"latency":69.0,"label":1,"qp$":77.31276297335204},{"db":"QdrantCloud","db_label":"4c16g-5node","db_name":"QdrantCloud-4c16g-5node","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":87.2601,"latency":27.799999999999997,"label":1,"qp$":61.1922159887798},{"db":"QdrantCloud","db_label":"4c16g-5node","db_name":"QdrantCloud-4c16g-5node","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":125.7846,"latency":23.099999999999998,"label":1,"qp$":88.20799438990183},{"db":"QdrantCloud","db_label":"4c16g-1node","db_name":"QdrantCloud-4c16g-1node","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":240.7209,"latency":17.4,"label":1,"qp$":844.0424263674614},{"db":"QdrantCloud","db_label":"4c16g-1node","db_name":"QdrantCloud-4c16g-1node","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":189.4399,"latency":17.5,"label":1,"qp$":664.2352734922861},{"db":"QdrantCloud","db_label":"4c16g-1node","db_name":"QdrantCloud-4c16g-1node","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":313.5116,"latency":16.1,"label":1,"qp$":1099.2692847124824},{"db":"QdrantCloud","db_label":"4c16g-1node","db_name":"QdrantCloud-4c16g-1node","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"QdrantCloud","db_label":"4c16g-1node","db_name":"QdrantCloud-4c16g-1node","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"QdrantCloud","db_label":"4c16g-1node","db_name":"QdrantCloud-4c16g-1node","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"Pinecone","db_label":"s1.x1","db_name":"Pinecone-s1.x1","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":18.7634,"latency":153.70000000000002,"label":1,"qp$":192.84069886947586},{"db":"Pinecone","db_label":"s1.x1","db_name":"Pinecone-s1.x1","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":18.3619,"latency":79.8,"label":1,"qp$":188.7142857142857},{"db":"Pinecone","db_label":"s1.x1","db_name":"Pinecone-s1.x1","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":25.2744,"latency":61.199999999999996,"label":1,"qp$":259.7574511819116},{"db":"Pinecone","db_label":"s1.x1","db_name":"Pinecone-s1.x1","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"Pinecone","db_label":"s1.x1","db_name":"Pinecone-s1.x1","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"Pinecone","db_label":"s1.x1","db_name":"Pinecone-s1.x1","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"Pinecone","db_label":"p2.x1","db_name":"Pinecone-p2.x1","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":261.798,"latency":23.099999999999998,"label":1,"qp$":1793.13698630137},{"db":"Pinecone","db_label":"p2.x1","db_name":"Pinecone-p2.x1","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":166.1851,"latency":23.900000000000002,"label":1,"qp$":1138.2541095890413},{"db":"Pinecone","db_label":"p2.x1","db_name":"Pinecone-p2.x1","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":121.7169,"latency":29.0,"label":1,"qp$":833.677397260274},{"db":"Pinecone","db_label":"p2.x1","db_name":"Pinecone-p2.x1","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"Pinecone","db_label":"p2.x1","db_name":"Pinecone-p2.x1","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"Pinecone","db_label":"p2.x1","db_name":"Pinecone-p2.x1","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"Pinecone","db_label":"p1.x1","db_name":"Pinecone-p1.x1","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":46.6189,"latency":43.1,"label":1,"qp$":479.1253854059609},{"db":"Pinecone","db_label":"p1.x1","db_name":"Pinecone-p1.x1","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":42.4856,"latency":44.0,"label":1,"qp$":436.6454265159301},{"db":"Pinecone","db_label":"p1.x1","db_name":"Pinecone-p1.x1","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":138.9479,"latency":26.200000000000003,"label":1,"qp$":1428.0359712230218},{"db":"Pinecone","db_label":"p1.x1","db_name":"Pinecone-p1.x1","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"Pinecone","db_label":"p1.x1","db_name":"Pinecone-p1.x1","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"Pinecone","db_label":"p1.x1","db_name":"Pinecone-p1.x1","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"Pinecone","db_label":"s1.x1-2node","db_name":"Pinecone-s1.x1-2node","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":20.7437,"latency":75.80000000000001,"label":1,"qp$":106.37794871794871},{"db":"Pinecone","db_label":"s1.x1-2node","db_name":"Pinecone-s1.x1-2node","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":20.2993,"latency":76.5,"label":1,"qp$":104.09897435897435},{"db":"Pinecone","db_label":"s1.x1-2node","db_name":"Pinecone-s1.x1-2node","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":26.4719,"latency":67.0,"label":1,"qp$":135.75333333333333},{"db":"Pinecone","db_label":"s1.x1-2node","db_name":"Pinecone-s1.x1-2node","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":8.6675,"latency":180.2,"label":1,"qp$":44.44871794871795},{"db":"Pinecone","db_label":"s1.x1-2node","db_name":"Pinecone-s1.x1-2node","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":7.8121,"latency":167.7,"label":1,"qp$":40.06205128205128},{"db":"Pinecone","db_label":"s1.x1-2node","db_name":"Pinecone-s1.x1-2node","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":16.869,"latency":87.8,"label":1,"qp$":86.50769230769231},{"db":"Pinecone","db_label":"p2.x1-8node","db_name":"Pinecone-p2.x1-8node","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":365.0835,"latency":23.599999999999998,"label":1,"qp$":312.57148972602744},{"db":"Pinecone","db_label":"p2.x1-8node","db_name":"Pinecone-p2.x1-8node","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":325.5271,"latency":25.1,"label":1,"qp$":278.7047089041096},{"db":"Pinecone","db_label":"p2.x1-8node","db_name":"Pinecone-p2.x1-8node","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":596.7942,"latency":24.2,"label":1,"qp$":510.95393835616443},{"db":"Pinecone","db_label":"p2.x1-8node","db_name":"Pinecone-p2.x1-8node","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":303.2044,"latency":27.400000000000002,"label":1,"qp$":259.5928082191781},{"db":"Pinecone","db_label":"p2.x1-8node","db_name":"Pinecone-p2.x1-8node","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":136.0345,"latency":31.9,"label":1,"qp$":116.46789383561645},{"db":"Pinecone","db_label":"p2.x1-8node","db_name":"Pinecone-p2.x1-8node","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":66.7221,"latency":42.1,"label":1,"qp$":57.125085616438355},{"db":"Pinecone","db_label":"p1.x1-8node","db_name":"Pinecone-p1.x1-8node","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":131.2549,"latency":30.200000000000003,"label":1,"qp$":168.49152759948652},{"db":"Pinecone","db_label":"p1.x1-8node","db_name":"Pinecone-p1.x1-8node","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":127.9337,"latency":30.099999999999998,"label":1,"qp$":164.2281129653402},{"db":"Pinecone","db_label":"p1.x1-8node","db_name":"Pinecone-p1.x1-8node","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":595.8462,"latency":23.400000000000002,"label":1,"qp$":764.8860077021822},{"db":"Pinecone","db_label":"p1.x1-8node","db_name":"Pinecone-p1.x1-8node","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"Pinecone","db_label":"p1.x1-8node","db_name":"Pinecone-p1.x1-8node","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"Pinecone","db_label":"p1.x1-8node","db_name":"Pinecone-p1.x1-8node","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"PgVector","db_label":"2c8g-1node","db_name":"PgVector-2c8g-1node","case":"Search Performance Test (1M Dataset, 768 Dim)","qps":10.6271,"latency":730.7,"label":1,"qp$":0.0},{"db":"PgVector","db_label":"2c8g-1node","db_name":"PgVector-2c8g-1node","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 1%)","qps":10.8507,"latency":733.1999999999999,"label":1,"qp$":0.0},{"db":"PgVector","db_label":"2c8g-1node","db_name":"PgVector-2c8g-1node","case":"Filtering Search Performance Test (1M Dataset, 768 Dim, Filter 99%)","qps":75.7055,"latency":121.2,"label":1,"qp$":0.0},{"db":"PgVector","db_label":"2c8g-1node","db_name":"PgVector-2c8g-1node","case":"Search Performance Test (10M Dataset, 768 Dim)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"PgVector","db_label":"2c8g-1node","db_name":"PgVector-2c8g-1node","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 1%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0},{"db":"PgVector","db_label":"2c8g-1node","db_name":"PgVector-2c8g-1node","case":"Filtering Search Performance Test (10M Dataset, 768 Dim, Filter 99%)","qps":0.0,"latency":0.0,"label":-1,"qp$":0.0}]