Skip to content

Elasticsearch workflow

The Elasticsearch workflow connects terminology governance with a real search index. It is the main bridge between “we manage a dictionary” and “runtime search uses domain-aware signals”.

Profile → Binding → Enrichment job → Runtime snapshot → Search Playground / API

A binding is the key object: it connects one terminology profile to one Elasticsearch index, alias, or scoped collection.

To run the local platform stack first, follow the Docker beta quickstart.

1. Create bindingChoose profile, index/alias, text fields, target field, and optional discriminator.
2. Run dry-runPreview matched aliases and canonical values without writing to Elasticsearch.
3. Run enrichmentWrite canonical attributes or execute the selected rollout strategy.
4. Audit snapshotConfirm which runtime version is pinned to the binding.
5. Test searchUse Search Playground to inspect canonical query, aliases, snapshot, and hits.

After Search Playground confirms the expected behavior, connect your application through the runtime API:

{
"binding_id": 42,
"query": "k8s pg timeout",
"size": 10,
"canonical_boost": 3.0
}

Use the API integration guide to wire the binding-aware search pattern into an existing backend, search UI, or RAG service.

FieldMeaning
ProfileThe terminology dictionary used for canonicalization and enrichment.
Index / aliasThe Elasticsearch collection where documents are read or written.
Text fieldsSource fields used during matching and enrichment.
Target fieldField where SkeinRank enrichment output is written.
DiscriminatorOptional field/value used when one index contains multiple domains.
Time windowOptional timestamp filter for bounded enrichment jobs.
Write strategyControls whether enrichment writes in place, writes to a target index, or prepares a rollout pattern.

When a company stores multiple domains in the same index, model it with multiple bindings.

binding #1: profile infra → index company_docs → team=infra
binding #2: profile legal → index company_docs → team=legal
binding #3: profile support → index company_docs → team=support

This is why the Integrations graph view is useful: it shows profiles, bindings, shared indexes, and snapshots as a topology rather than isolated rows.

The Enrichment jobs panel is meant for operational work:

  • see active, failed, and succeeded jobs;
  • run default jobs for bindings;
  • cancel active jobs;
  • inspect recent job history;
  • move from binding configuration to rollout operations without hunting through forms.
Elasticsearch enrichment is available as a preview workflow for testing terminology evidence, binding setup, dry-runs, enrichment jobs, and runtime snapshot audit.
Production deployment guidance is documented separately from the platform model.