Elasticsearch utils for the curator core project.
INSTALLED_APPS = [
...
'core_elasticsearch_app',
]The package should be placed above core_explore_keyword_app in the INSTALLED_APPS to enable autocomplete powered by elasticsearch.
re_path(r'^elasticsearch/', include('core_elasticsearch_app.urls')),Recommended version: 7.14.1 See https://github.com/usnistgov/cdcs-docker#elasticsearch for help with Elasticsearch deployment.
It is recommended to configure the mapping between the CDCS templates and the Elasticsearch indices before starting to insert data, so that data can be indexed as soon as they are published in the CDCS. For that, set the following setting:
ELASTICSEARCH_AUTO_INDEX = TrueThen, configure the mapping between the XSD templates and the Elasticsearch indices. Documents stored in Elasticsearch have a common structure. They are composed of a data_id, a title and a description field. A mapping can be defined to tell where in the XML data the values for the title and for the description of a resource can be found. Below is an example to set this mapping via REST, for a given template:
import requests
payload = {
"template": "5f43ba192b8fd5c092e30e62",
"title_path": "Resource/identity/title",
"description_paths": ["Resource/content/description", "Resource/content/subject"],
}
requests.post(
SERVER_URI + "/elasticsearch/rest/elasticsearch_template/", data=payload, auth=(USER, PASSWORD)
)