Sonic
Search indexsonic
Schema-less identifier index on RocksDB, queried over the Sonic Channel protocol.
- Provider
- default
- Kind
- Search index
- Category
- Data
- Official docs
- https://github.com/valeriansaliou/sonic
| property | type | values | required | kind default | this component |
|---|---|---|---|---|---|
| geoScheme | enum | none | s2 | h3 | geohash | quadtree | no | none | inherited |
| indexing | enum | sync | async | batch | no | async | ▸ async |
| managed | boolean | — | no | false | ▸ false |
| protocol | enum | sonic-channel | no | sonic-channel | inherited |
| rebuildCadenceHours | integer | — | no | — | inherited |
| replicas | integer | — | no | — | inherited |
| shardingStrategy | enum | none | hash | geo | time | prefix-range | no | none | ▸ none |
| storageEngine | enum | rocksdb | no | rocksdb | inherited |
| storesDocuments | boolean | — | no | false | inherited |
| structure | enum | inverted | trie | vector | geo-cell | no | inverted | ▸ inverted |
Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.
derived-store-without-cdc-or-rebuild
A search index is derived data and needs an asynchronous feed from a stream, change data capture or an indexing worker. Without one it is written inline on the request path, and it can never be rebuilt after it drifts.
- — this does not hold:
- — the node has at least one asynchronous incoming edge from a stream, change-data-capture or worker
nodes:
- { id: "sonic", component: "sonic" }Alibaba Cloud Elasticsearchalibaba-elasticsearchOpenSearchalibaba-open-searchAmazon Bedrock Knowledge Basesaws-bedrock-knowledge-baseAmazon CloudSearchaws-cloudsearchAmazon Kendraaws-kendraAmazon OpenSearch Serviceaws-opensearchAzure AI Searchazure-ai-searchFoundry IQazure-foundry-iqAI Searchcloudflare-ai-searchAlgoliaalgoliaCoveocoveoElastic Cloudelastic-cloudElasticsearchelasticsearchGeo cell indexgeo-cell-indexManticore SearchmanticoreMeilisearchmeilisearchOpenSearchopensearchQuickwitquickwitGeneric search indexsearch-indexApache SolrsolrSphinxsphinxTrie indextrie-indexTypesensetypesenseVespavespaCloud Talent Solutiongoogle-cloud-talent-solutionVertex AI Searchgoogle-vertex-ai-searchAI Commerce Searchgoogle-vertex-ai-search-commerceVision API Product Searchgoogle-vision-product-searchIBM Cloud Databases for Elasticsearchibm-databases-for-elasticsearchIBM Watson Discoveryibm-watson-discoveryOCI Search with OpenSearchoci-opensearch
# yaml-language-server: $schema=../../schema/component.schema.json # Sonic: schema-less identifier index on RocksDB, reached over the Sonic Channel TCP # protocol. Per the project README it stores no documents and returns object IDs, runs as a # single node with no replication or sharding, and suggestions appear after a consolidate cycle. schemaVersion: "1" type: "component" id: "sonic" kind: "search-index" provider: "default" docs: "https://github.com/valeriansaliou/sonic" defaults: structure: "inverted" shardingStrategy: "none" indexing: "async" managed: false properties: storesDocuments: type: "boolean" default: false protocol: type: "enum" values: ["sonic-channel"] default: "sonic-channel" storageEngine: type: "enum" values: ["rocksdb"] default: "rocksdb"