Skip to main content
net10.0

Shared core for Koan search-engine vector connectors (Elasticsearch / OpenSearch, both built on Apache Lucene): the shared SearchEngineVectorRepository behind a 3-member ISearchEngineDialect seam, plus the single source of truth for translating the unified Filter AST into the search-engine query DSL.

Published
Jul 22, 2026
3mo ago
Total Downloads
631
631

Install

dotnet add package Sylin.Koan.Data.SearchEngine --version 0.20.1
ProductVersions
.NET
net10.0

README

Sylin.Koan.Data.SearchEngine

Shared runtime mechanics for Koan's Elasticsearch and OpenSearch vector connectors. Application developers reference one of those connector packages; it brings this implementation dependency transitively. This package is not a third provider and requires no direct application registration.

  • Target framework: net10.0
  • License: Apache-2.0

Install

Do not install this package directly in an application. Choose the provider that owns your data:

dotnet add package Sylin.Koan.Data.Connector.ElasticSearch
# or
dotnet add package Sylin.Koan.Data.Connector.OpenSearch

Provider authors extending the shared mechanism can reference it directly:

dotnet add package Sylin.Koan.Data.SearchEngine

Maturity: Supported 0.20 implementation dependency for the Elasticsearch and OpenSearch vector providers. Applications should still install one of those provider packages rather than this mechanism directly.

What it adds

  • one REST repository for index ensure, upsert, bulk operations, deletion, count, scroll export, and kNN search;
  • one filter translator for the unified Koan Filter AST and Lucene query DSL;
  • one configuration, discovery, authentication, health-participation, naming, and startup-reporting path;
  • a three-member dialect seam for the Elasticsearch and OpenSearch request shapes that genuinely differ.

Provider packages keep only their identity, orchestration metadata, discovery vocabulary, and native dialect. Applications continue to use the Vector<TEntity> facade and do not depend on these mechanics.

Boundaries

  • This is a vector-search implementation, not a general Elasticsearch/OpenSearch document repository.
  • One configured cluster endpoint serves all sources; source and partition isolation are expressed through generated index names. Per-source cluster endpoints are not supported.
  • An explicit IndexName pins every context to one index and can defeat source, tenant, or partition isolation; Koan reports that conflict rather than silently rewriting the user's name.
  • Automatic discovery probes unauthenticated endpoints. Secured clusters should use exact configuration.
  • Provider-native dialect differences remain in their connector assemblies; they are not hidden behind a claim that both products accept identical kNN or mapping requests.

References

Changes from Previous Version

No structural changes between v0.20.0 and v0.20.1.

Adoption Assessment

Assess this package against its supported frameworks, license, maintenance signals and dependency graph before making it a project standard.

Compatibility metadata lists 1 target framework; confirm the exact target used by your application.

Related Guides & Workflows

Learn how to evaluate, integrate, or audit this package in your .NET project.