Skip to content

docs: add Elasticsearch and OpenSearch sink guides - #38025

Open
sjwiesman wants to merge 1 commit into
MaterializeInc:mainfrom
sjwiesman:elasticsearch-opensearch-docs
Open

docs: add Elasticsearch and OpenSearch sink guides#38025
sjwiesman wants to merge 1 commit into
MaterializeInc:mainfrom
sjwiesman:elasticsearch-opensearch-docs

Conversation

@sjwiesman

Copy link
Copy Markdown
Contributor

Summary

  • Adds a guide for sinking Materialize results to Elasticsearch via the Kafka sink, Kafka Connect, and the perfect-embedding transform.
  • Adds the equivalent guide for OpenSearch.
  • Adds shared setup/prerequisite content used by both guides.
  • Lists both systems in the sink external-systems table.

Test plan

  • Render the two pages locally and check links/formatting.
  • Walk through each guide end to end against a real Elasticsearch/OpenSearch cluster.

Adds guides for sinking Materialize results to Elasticsearch and
OpenSearch via the Kafka sink and Kafka Connect, using the
perfect-embedding transform to keep vector embeddings fresh.
@sjwiesman
sjwiesman requested a review from a team as a code owner August 3, 2026 21:42
[Kafka sink](/sql/create-sink/kafka/) writes the results to a Kafka topic.
Kafka Connect reads that topic and writes the documents to Elasticsearch.

The [`perfect-embedding`](https://github.com/MaterializeInc/perfect-embedding)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@claude: Minor note, but I'd include 1-2 lines about this transform. Something like: "in this guide, we'll also use perfect-embedding, a Kafka Connect SMT (single message transform) that we developed. Perfect-embedding runs ...`

Do the same on the other page as well

weight: 20
---

This guide shows how to send results from Materialize to Elasticsearch. A

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@claude let's include one line here about how you can use this to keep search indexes in Elasticsearch up to date - leverage the copy we wrote on our website here: https://materialize.com/solutions/ai-native-search/

@@ -0,0 +1,60 @@
The examples in this guide build a search document for an article catalog tracking its content and page views.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh ... we don't use shared-content anymore. Instead, we use headless content (which is better because when you're running locally, and you modify headless content, it renders your changes whereas with shared content ... you actually have to restart hugo).

{{% include-headless "/headless/blah" %}}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants