1

次の形式の構造化された JSON データがあります。

{
    "id": 42,
    "name": "hand",
    "quantity": 2,
    "digits": [
        {
            "id": 43,
            "name": "thumb",
            "quantity": 1,
            "components": [
                {
                    "id": 44,
                    "name": "thumb",
                    "position": 0
                }
            ]
        },
        {
            "id": 45,
            "name": "fingers",
            "quantity": 4,
            "components": [
                {
                    "id": 46,
                    "name": "index",
                    "position": 1
                },
                {
                    "id": 47,
                    "name": "middle",
                    "position": 2
                },
                {
                    "id": 48,
                    "name": "ring",
                    "position": 3
                },
                {
                    "id": 49,
                    "name": "little",
                    "position": 4
                }
            ]
        }
    ]
}

Java を使用してこれらのデータにインデックスを付ける必要があります。これにより、後で必要な情報を取得するためのクエリを作成できるようになります。

そのためのソリューションは、バージョン 3.4 以降のネストされたドキュメントをサポートするApache Luceneを使用することです。ただし、ネストされたドキュメントを作成する方法に関するチュートリアルや簡単な例は見つかりませんでした。

構造化データ用の Lucene ドキュメントを作成する方法を説明できる人はいますか?

あるいは、構造化データのインデックス作成と検索をより適切にサポートする Lucene に似た他のライブラリはありますか?

4

1 に答える 1

1

あなたの場合の簡単な解決策は、パス列挙(「Dewey Decimal」)を使用することです。たとえば、最初の 3 つの項目は「42」、「42.43」、および「42.43.44」になり、4 番目の項目は「42.45」になります。スロットが必要な最大数のアイテムに対して十分な大きさであることを確認してください (例: "042.043.044")。

于 2013-03-29T19:00:24.423 に答える