【问题标题】:Indexing a JSON file with multiple documents in elastic search在弹性搜索中索引具有多个文档的 JSON 文件
【发布时间】:2021-04-05 01:57:36
【问题描述】:

我是 elasticsearch 新手,我想索引一个 JSON 文件并从 elasticsearch 执行搜索查询

如果我将参数传递为“field3.innerfield”:“someval”,我如何索引这个 json 并执行查询以获取值

我尝试使用 helpers.bulk 索引此文件并进行搜索,但它返回所有字段而不是选定字段。

以下是 JSON 示例

[
    {
        "id": "someid",
        "metadata": {
            "docType": "value",
            "otherfield": " ",
            morefields
            .
            .
        },
        "field1":"value1",
        "field2":"value2,
        "field3": [
            {
                "innerfield": "someval",
                "innerfield1":[
                    "kind of a paragraph"
                ]
            }
        ],
        "field4": [
            {
                "innerfield": "someval",
                "innerfield1": "kind of a paragraph"
            }
        ],
    },
    { again the format repeats with different id but same fields
    },
    {
    }

]

【问题讨论】:

    标签: python-3.x elasticsearch elasticsearch-5


    【解决方案1】:

    您的问题不清楚,但是我的理解是您想从嵌套 json 的键中获取值。您可以通过以下方式执行此操作,如下所示。 多次解析并根据需要进行所需的更改。

    import json
    data = data.apply(lambda x: json.loads(json.loads(x).get("metadata","{}")).get("doctype") if x else None)
    

    【讨论】:

    • 感谢您的回复。我的错,我没有在elasticSearch中指定我想要的。我正在寻找弹性搜索索引和相同的搜索查询。
    猜你喜欢
    • 2015-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-05
    • 1970-01-01
    • 2017-07-07
    • 2015-06-01
    • 2016-03-28
    相关资源
    最近更新 更多