-
OpenMetadata uses MySQL or Postgres to store metadata from various sources, and it also uses ElasticSearch or OpenSearch to index the metadata to provide Data Discovery. |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
How OpenMetadata uses ElasticSearch/OpenSearch for data discoveryThe above architecture shows how OpenMetadata uses ElasticSearch or OpenSearch.
This method helps us keep the ElasticSearch consistent with Ingestion or User changes that are happening in OpenMetadata. However, in some cases, we may need to run a full reindex of OpenMetadata. Examples such the ElasticSearch cluster went down and lost data or there are network issues and the uptime of ElasticSearch being compromised. Fully re-index ElasticSearchThere may be cases where you would like to fully re-index ElasticSearch. OpenMetadata uses MySQL or Postgres to store the metadata and this metadata can be accessed through our REST APIs. Install OpenMetadata ElasticSearch ConnectorRun the below commands in your terminal to install the ElasticSearch connector mkdir -p openmetadata; cd openmetadata
python3 -m venv env
source env/bin/activate
pip3 install --upgrade pip setuptools
pip3 install 'openmetadata-ingestion[elasticsearch]' Create a configuration file using the below YAML template---
source:
type: metadata_elasticsearch
serviceName: openMetadata
serviceConnection:
config:
type: MetadataES
includeTables: 'true'
includeUsers: 'true'
includeTopics: 'true'
includeDashboards: 'true'
limitRecords: 10
sourceConfig:
config: {}
sink:
type: elasticsearch
config:
index_tables: 'true'
index_topics: 'true'
index_dashboards: 'true'
es_host: localhost
es_port: 9200
workflowConfig:
openMetadataServerConfig:
hostPort: http://localhost:8585/api
authProvider: no-auth copy the above contents into a file elasticsearch.yaml Run the ElasticSearch connectormetadata ingest -c elasticsearch.yaml My ElasticSearch/OpenSearch uses https and username/passwordIn case of secure ElasticSearch/OpenSearch we provide option to configure those in the yaml file ---
source:
type: metadata_elasticsearch
serviceName: openMetadata
serviceConnection:
config:
type: MetadataES
sourceConfig:
config: {}
sink:
type: elasticsearch
config:
es_host: localhost
es_port: 9200
es_username: 'username'
es_password: 'password'
use_ssl: true
workflowConfig:
openMetadataServerConfig:
hostPort: http://localhost:8585/api
authProvider: no-auth In the above config under sink we have the following configurations.
Please let us know if you have any issues with this tutorial in our slack |
Beta Was this translation helpful? Give feedback.
How OpenMetadata uses ElasticSearch/OpenSearch for data discovery
The above architecture shows how OpenMetadata uses ElasticSearch or OpenSearch.