Add tag-based query filtering for IoTDB table model - #557
Draft
JackieTien97 wants to merge 1 commit into
Draft
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
ENABLE_QUERY_TAG_FILTER,QUERY_TAG_INDEX, andQUERY_TAG_VALUE_NUMconfiguration options with documented defaults and validation.REAL_INSERT_RATE;QUERY_TAG_VALUE_NUM=0selects all actual values in that table, while positive values sample without replacement.device_idpredicate with a TAGIN (...)predicate for Q1–Q12 in the IoTDB 2.0 table model, while keeping device and verification queries exact.Why
The benchmark previously filtered query workloads only by
device_id, so it could not exercise TAG-based filtering in the IoTDB table model. This change makes TAG filtering configurable and guarantees that generatedINvalues belong to the benchmark-configured value set for the selected query table.Configuration
ENABLE_QUERY_TAG_FILTER=false: enables TAG filtering for IoTDB 2.0 table-model queries.QUERY_TAG_INDEX=0: zero-based TAG column index used by the filter.QUERY_TAG_VALUE_NUM=0: number of distinct values in theINlist; zero means all actual distinct values for the selected TAG in the target table.Invalid combinations fail fast, including unsupported database/dialect modes and requested counts larger than the available per-table cardinality.
Validation
mvn -B spotless:checkmvn -B test -pl iotdb-2.0 -am