本文整理汇总了Python中elasticsearch_dsl.Index.get_mapping方法的典型用法代码示例。如果您正苦于以下问题:Python Index.get_mapping方法的具体用法?Python Index.get_mapping怎么用?Python Index.get_mapping使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类elasticsearch_dsl.Index
的用法示例。
在下文中一共展示了Index.get_mapping方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: get_index_metadata
# 需要导入模块: from elasticsearch_dsl import Index [as 别名]
# 或者: from elasticsearch_dsl.Index import get_mapping [as 别名]
def get_index_metadata(index_name, client):
index = Index(index_name, using=client)
try:
mappings = index.get_mapping(doc_type=[VARIANT_DOC_TYPE])
except Exception as e:
raise InvalidIndexException('Error accessing index "{}": {}'.format(
index_name, e.error if hasattr(e, 'error') else e.message))
index_metadata = {}
for index_name, mapping in mappings.items():
variant_mapping = mapping['mappings'].get(VARIANT_DOC_TYPE, {})
# TODO remove this check once all projects are migrated
if not variant_mapping['properties'].get('samples_num_alt_1'):
raise InvalidIndexException('Index "{}" does not have a valid schema'.format(index_name))
index_metadata[index_name] = variant_mapping.get('_meta', {})
index_metadata[index_name]['fields'] = variant_mapping['properties'].keys()
return index_metadata