ElasticsearchDocumentStore

Use the Elasticsearch database as your document store.

Basic Information

Overview

For details, see ElasticsearchDocumentStore in Haystack documentation.

Authorization

You need an Elasticsearch account and cloud_id and api_key to use this document store in Elastic Cloud. You can create a secret for it and then pass it its name in the api_key parameter of the document store. To learn more about secrets, see Add Secrets to Connect to Third Party Providers.

Usage

For instructions on how to create a secret to connect to the document store, write documents, and then retrieve them, see Connect to external database.

Example Configuration

In an Indexing Pipeline

To write the preprocesses files into the document store:

  1. Add DocumentWriter to your pipeline.
  2. On the component card, click Configure under the document_store parameters. This opens a YAML editor.

In a Query Pipeline

To retrieve files from the document store:

  1. Add an Elasticsearch retriever to your pipeline.
  2. On the retriever's card, click Configure under the document_store parameter. This opens a YAML editor.

Example

This is where you can access the configuration:

The Configure button under the document_store parameter on a component card ElasticsearchDocumentStore YAML configuration

This is a YAML example of the ElasticsearchDocumentStore configuration:

type: haystack_integrations.document_stores.elasticsearch.document_store.ElasticsearchDocumentStore
init_parameters:
  cloud_id: <cloud-id>
  api_key: <api-key>


Init Parameters

To check the parameters you can customize for this document store, see ElasticsearchDocumentStore API reference in Haystack documentation.