0

XML は、情報をツリー構造で編成する 1 つの方法です。ただし、ソフトウェア アプリケーションが、ツリー構造で編成された任意の情報を便利かつ効率的に格納、取得、および操作できるメカニズムを探しています。

アプリケーションが保存する必要がある情報の多くはバイナリ形式であり、明確なテキスト形式がなく、テキスト形式とバイナリ形式の間を相互に変換するオーバーヘッドが大きすぎるため、アプリケーションが情報の各要素を保存、取得、操作できるものを好みます。ネイティブ [通常はバイナリ] 形式で。

私のアプリケーションは、さまざまな方法でリアルタイムに情報の構造を操作するため、これらのプロセスは効率的でなければなりません。典型的で一般的な例: 私のアプリケーションは要素を移動し、その要素の下のすべてのサブ要素 (その「子要素」) は自動的に移動する必要があります (データが実際にメモリ内で移動されることはありません)。これは「親」を持つ各要素によって行われると思います。そのため、親の ID を変更するだけで、そのサブ階層全体がツリー構造全体のどこにあるかが変わります。または、これらの線に沿った何か。

結論: XML に代わるバイナリはありますか? 特に、バイナリ データをネイティブ形式のままにするものはありますか?

バイナリ データを XML に埋め込みたくありません。また、項目の追加、項目の削除、構造の操作、保存、読み込みなどを行うルーチンの ( C 互換) 関数ライブラリ を含むソリューションを好みます。

4

3 に答える 3

0

子参照を持つオブジェクトを追加し、それらのオブジェクトをシリアル化するデータベースを保存できる NoSQL データベース ソリューションが必要なようです。子参照をあるオブジェクトから別のオブジェクトに移動してデータベースを保存すると、効率的にシリアル化されるはずです。(メモリ内では、オブジェクト参照 (基本的にはポインター) が再割り当てされます。)

唯一の選択肢ではありませんが (「C# nosql」で検索してください)、一般的な選択肢はRavenDBです。

于 2014-01-16T06:17:08.287 に答える