そのため、リレーショナル データベースへのオブジェクトのシリアル化に関する特定の問題について熟考していました。
N個の異なるオブジェクトがあり、すべてが特定のインターフェースを実装しているとしましょう(そのための有向グラフインターフェース。これらは getIncomingNodes() 、 getOutgoingNodes() などのメソッドを提供します)。
そのような各オブジェクトがリレーショナル データベースに対応するテーブルを持っている場合、そのような有向グラフをリレーショナル データベースにシリアル化するベスト プラクティスは何ですか?
N が小さいと仮定すると (私の場合は N=3)、別のテーブルに含まれる可能性のあるすべてのリンクを分解しました。たとえば、オブジェクト x から y に向かうリンクのテーブルは次のようになります。
tbl_links_X_Y {
int X_id
int Y_id
}
問題は、そのようなテーブルが N^2 個得られることです。あまり効率的ではなく、将来 N+1 オブジェクトに拡張するのが難しいことが判明する可能性があります。
その問題を解決するパターンはありますか?(リレーショナル データベースに関係なくても、喜んでお知らせします...)
ありがとう!