OpenSearch is a distributed, free and open search and analytics engine for all types of data, including textual, numerical, geospatial, structured, and unstructured.
Supported syncing
Sync Type | Description | Supported Sync Modes |
---|---|---|
Index documents | Sync data from any source to an OpenSearch index or index alias | Upsert, Update |
Connect to OpenSearch
Go to the Destinations overview page and click the Add destination button. Select OpenSearch and click Continue. You can then authenticate Hightouch to OpenSearch by entering your:
- Host: The hostname or IP address of your OpenSearch server. Don't include
https://
as part of the hostname. - Port: The port number of your OpenSearch server's HTTP API. The default is 3306, but yours may be different.
- Username: This can be your personal OpenSearch login or a dedicated user for Hightouch.
- Password: The password for the user specified above.
Once you've entered these fields, click Continue. Give your destination a descriptive name and Finish the destination connection setup.
Sync configuration
Once you've set up your OpenSearch destination and have a model to pull data from, you can set up your sync configuration to begin syncing data. Go to the Syncs overview page and click the Add sync button to begin. Then, select the relevant model and the OpenSearch destination you want to sync to.
Syncing to an index
An OpenSearch index is the place where the data used by a search engine is stored. You can use Hightouch to update individual documents in an index.
You can also sync your document data via index aliases.
Index aliases will only be displayed if the is_write_index
option is configured.
Record matching
To match rows from your model to documents in OpenSearch, you need to select a model column and corresponding OpenSearch field. You can match on any OpenSearch field.
Field mapping
You can sync data to both existing fields and fields that don't yet exist in OpenSearch. If you send data to a field that doesn't exist yet, Hightouch adds the field and automatically detects its type.
Delete behavior
The delete behavior you select dictates what to do when a row no longer appears in your model's query results. You have the following options:
Behavior | Description |
---|---|
Do nothing | Keep the document in OpenSearch |
Clear | Keep the document in OpenSearch, but set mapped fields to empty |
Delete | Remove the document from OpenSearch |
Advanced configuration
You can configure how many rows you'd like to send per batch and how many batches you'd like to send in parallel.
If your sync is rejecting all or most rows in your model with vague error messages, try decreasing the batch size.
Tips and troubleshooting
Common errors
If you encounter an error or question not listed below and need assistance, don't hesitate to . We're here to help.
Failed to connect to your OpenSearch client. Check your credentials.
This error can occur if your credentials are incorrect.
Ensure your hostname doesn't include https://
and that your port is correct.
Live debugger
Hightouch provides complete visibility into the API calls made during each of your sync runs. We recommend reading our article on debugging tips and tricks to learn more.
Sync alerts
Hightouch can alert you of sync issues via Slack, PagerDuty, SMS, or email. For details, please visit our article on alerting.