add osvectors.yaml

This commit is contained in:
perfteam
2024-02-09 00:12:50 +00:00
parent da9e1e326a
commit ea79948848

View File

@@ -10,21 +10,20 @@ params:
instrument: true
scenarios:
schema: run driver=opensearch tags=block:create threads===1 cycles===undef
query: run driver=opensearch tags=block:query threads=TEMPLATE(search_threads,10) cycles===undef
# schema: run tags=block:schema threads===1 cycles===undef
# rampup: run tags=block:rampup threads=auto cycles=TEMPLATE(rampup_cycles,10)
vectors:
drop: run tags='block:drop' labels='target:opensearch' threads===1 cycles===UNDEF
schema: run tags='block:schema' labels='target:astra' threads===1 cycles===UNDEF
rampup: run tags='block:rampup' labels='target:astra' threads=1 cycles=TEMPLATE(trainsize)
# threads=auto
# errors=counter,warn,log
# search_and_index: >-
# run alias=search_and_index tags='block:search_and_index,optype=select' labels='target:astra'
# cycles=TEMPLATE(testsize) errors=count,retry rate=100
# errors=counter,warn threads=auto
schema: run tags='block:schema' labels='target:opensearch' threads===1 cycles===UNDEF
rampup: >-
run tags='block:rampup' labels='target:opensearch'
threads=TEMPLATE(rampup_threads,10) cycles=TEMPLATE(trainsize)
errors=count,warn
# search: run tags='block:search' labels='target:opensearch' threads=TEMPLATE(search_threads,10) cycles=TEMPLATE(testsize)
search_and_verify: >-
run tags='block:search_and_verify' labels='target:opensearch'
threads=TEMPLATE(search_threads,10) cycles=TEMPLATE(testsize)
errors=count,warn
# errors=counter,warn,log
bindings:
id: ToString()
@@ -32,7 +31,6 @@ bindings:
relevant_indices: HdfFileToIntArray("testdata/TEMPLATE(dataset).hdf5", "/neighbors")
distance_floatlist: HdfFileToFloatList("testdata/TEMPLATE(dataset).hdf5", "/distance")
train_floatlist: HdfFileToFloatList("testdata/TEMPLATE(dataset).hdf5", "/train");
synthetic_vectors: HashedFloatVectors(TEMPLATE(dimensions));
blocks:
drop:
@@ -46,19 +44,40 @@ blocks:
create_index: TEMPLATE(indexname)
mappings:
m1: v1
query:
search:
ops:
search:
knn_search: TEMPLATE(indexname,vectors_index)
k: 100
vector: [1f,2f,3f,4f,5f,6f,7f,8f,9f,10f,11f,12f,13f,14f,15f,16f,17f,18f,19f,20f,21f,22f,23f,24f,25f]
vector: "{test_floatlist}"
field: value
search_and_verify:
ops:
select_ann_limit_TEMPLATE(k,100):
knn_search: TEMPLATE(indexname,vectors_index)
k: 100
vector: "{test_floatlist}"
field: value
verifier-init: |
relevancy=new io.nosqlbench.nb.api.engine.metrics.wrappers.RelevancyMeasures(_parsed_op)
for (int k in List.of(100)) {
relevancy.addFunction(io.nosqlbench.engine.extensions.computefunctions.RelevancyFunctions.recall("recall",k));
relevancy.addFunction(io.nosqlbench.engine.extensions.computefunctions.RelevancyFunctions.precision("precision",k));
relevancy.addFunction(io.nosqlbench.engine.extensions.computefunctions.RelevancyFunctions.F1("F1",k));
relevancy.addFunction(io.nosqlbench.engine.extensions.computefunctions.RelevancyFunctions.reciprocal_rank("RR",k));
relevancy.addFunction(io.nosqlbench.engine.extensions.computefunctions.RelevancyFunctions.average_precision("AP",k));
}
verifier: |
// driver-specific function
actual_indices=io.nosqlbench.adapter.opensearch.Utils.DocHitsToIntIndicesArray(result)
// driver-agnostic function
relevancy.accept({relevant_indices},actual_indices);
return true;
bulkrampup:
ops:
bulk_index:
bulk_index:
- '{"key":"{id}","value":"{train_floatlist}"'
-
rampup:
ops:
@@ -67,11 +86,3 @@ blocks:
document:
key: "{id}"
value: "{train_floatlist}"
# document: |
# {
# "key": "{id}",
# "value": {train_floatlist}
# }