は次のようなデータ構造を考えてみましょう:データ構造のインデックス
structure = {
1: {"a": "xy", "b": 123},
2: {"a": "rt", "b": 222},
3: {"a": "fd", "b": 111},
}
我々はa
の与えられた値によって、この構造で行を検索するとします。
リレーショナルデータベースでは、行a
をインデックスに登録するだけで、操作が高速になります。
プログラミング言語および/またはプログラミングライブラリの「索引行」のサポートについてはどうですか(本格的なリレーショナルデータベースはサポートしていませんが、主にSQLのサポートなし)。どの言語やライブラリがこれをサポートしていますか?
私は上記のデータ構造のオブジェクトへの参照を使って追加の "マップ"データ構造を作成できますが、私の質問は手動で(どのキーでも新しいマップを作成せずに)この作業を自動化する方法は? (1つは、必要なハッシュとマップをすべて保持するオブジェクトを作成することですが、より簡単な方法はありますか?)
この例のデータ構造は小さく、検索にハッシュを必要としませんが、 。)
最終的には、インデックスを作成するすべてのフィールドに対して別々のハッシュマップ(または同等のもの)を使用することになります。あなたが言うように、あなたはそれを明示的に行うことができます。私はあなたにこのような機能を提供するプログラミング言語に慣れていませんが、リフレクションをサポートするいくつかの言語でそれほど問題なく実装できます。ただし、索引作成後に索引フィールドが変更されないように注意する必要があります。 –