Numbers | Equality, Range | B-tree, Hash, GiST, BRIN, Expression, Skip, Zone Map | PostgreSQL, MySQL, MSSQL, SQLite, ClickHouse, ScyllaDB, CockroachDB, Redshift, MariaDB, Snowflake, Oracle, RocksDB |
Fixed Length String | Equality, Range, Prefix search | B-tree, Hash, Partial, Expression, Clustered, Non-clustered | PostgreSQL, MySQL, MSSQL, MongoDB, SQLite, Couchbase, Oracle, MariaDB, DynamoDB |
Category/Dimensions | Equality, Membership | Hash, B-tree, Partial, Multikey, TSI, TTL | PostgreSQL, MongoDB, Couchbase, InfluxDB, TimescaleDB, ScyllaDB, Aerospike |
Feature Vectors | Similarity search | GiST, SP-GiST, BKD Tree | PostgreSQL, ScyllaDB, Elasticsearch |
Sequences of DNA | Sequence matching, Alignment | GiST, SP-GiST | PostgreSQL, ScyllaDB, Couchbase, MongoDB |
Geo Info - Location and Coordinates | Proximity search, Range | R-tree, GiST, SP-GiST, Geospatial, BKD Tree | PostgreSQL, MongoDB, MSSQL, Neo4j, Oracle, MySQL, Couchbase, ScyllaDB, Druid, Snowflake |
Geometrical Figures | Spatial queries | R-tree, GiST, SP-GiST, Geospatial | PostgreSQL, MySQL, MongoDB, Neo4j, Oracle |
Time Series Data | Range, Aggregation, Time-ordered search | TSI, BRIN, Skip, Zone Map, Interleaved Sort Key, Expression, B-tree | TimescaleDB, InfluxDB, CockroachDB, PostgreSQL, ScyllaDB, Druid, Redshift, ClickHouse, Snowflake, MongoDB, RocksDB, Aerospike |
Geo Info (Time-based Data) | Spatiotemporal queries | Geospatial, R-tree, BRIN, GiST | PostgreSQL, TimescaleDB, ScyllaDB, MongoDB, ClickHouse, Druid |
Sparse Data | Range, Missing values | Sparse, Skip, Zone Map, BRIN | MongoDB, PostgreSQL, Couchbase, ClickHouse |
Time-to-Live Data | Time-based expiration queries | TTL Index | MongoDB, Couchbase, ScyllaDB, Redis, InfluxDB |
Temporal Data (Event-based Time Series) | Event-based queries, Time windowing, Range aggregation | TSI, BRIN, Zone Map, B-tree | TimescaleDB, InfluxDB, Druid, ClickHouse, ScyllaDB |
Array Data | Membership, Containment, Exact match | GIN, Multikey, Partial Index, B-tree | PostgreSQL, MongoDB, Couchbase, Oracle |
Set Data | Membership, Overlap, Intersection | GIN, Partial, Multikey Index, Hash | PostgreSQL, MongoDB, Neo4j, Oracle |
Time-partitioned Data | Time-based partitioning for large datasets | Time-based Partitioning, BRIN, Range Index, Zone Map | TimescaleDB, ClickHouse, Druid, Redshift, InfluxDB |
Wildcard Queries | Prefix, Pattern matching | Wildcard Index, Full-text, Hash, B-tree | PostgreSQL, MongoDB, Elasticsearch, MySQL |
Approximate Search | Similarity, Approximate Matching | GiST, BKD, Vector Index, HNSW | PostgreSQL, ScyllaDB, Elasticsearch |
Aggregation Queries | Aggregation, Window functions | Covering Index, Expression Index, TSI, BRIN, Zone Map | PostgreSQL, Redshift, ClickHouse, Snowflake, TimescaleDB |
Metadata Queries | Querying metadata, properties of files and blobs | Hash, B-tree, Partial Index, GIN, Multikey Index | MongoDB, PostgreSQL, Couchbase, Oracle |