問題の説明: 私のアプリケーションでは、データ パケットの内容を特定の形式で提示する必要があります。例:
例 任意のパックされたバイナリ データ。たとえば、4 バイトのヘッダー、4 バイトの型 (定義済みの意味を持つ型コード)、送信元アドレス、宛先アドレスなど。
以前は、データをバイナリ ファイルに格納する家庭料理の実装を作成しました (固定レコード長により高速検索が可能)。たとえば、非常に大きなデータ ファイル用に独自の効率的なバイナリ ストレージ フォーマットを実装しています。また、一部のフィールドで検索を迅速に実行するために、独自のインデックス作成も実装しています。本当の DB (単純な SQLite でさえも) は、このようなことを透過的に単純化できると思います。
質問 #1: DB はそのようなデータの保存に役立ちますか? また、どのように行う必要がありますか? ここには 1 対多、多対多のマッピングやその他の高度なものがないことに注意してください。これは、特定の内部構造を持つ単純なパケットのシーケンスであり、ユーザーに表示して対話させます (つまり、検索特定の分野によって)。
質問 #2:ここで、ユーザー自身が自分のパケットのフォーマット、つまり構成ファイルで指定できるとします: 各フィールドの長さ、そのタイプ、その値の意味 (列挙の場合) など。このために DB を利用した実装を拡張するにはどうすればよいですか? ユーザーが DB スキーマを定義する必要がありますか? 構成ファイルをこのスキーマに自動変換する必要がありますか? ORM?
質問 #3:さらに高度な. データ パッケージの長さと内容が異なる場合があるとします。つまり、タイプ #2 のパッケージにはいくつかのフィールドがあり、タイプ #3 にはいくつかの他のフィールドなどがあります。しかし、アプリでそれを処理して、すべてを適切に表示し、ユーザーが構成ファイルで形式を指定できるようにしたいと考えています。それはどのように行われますか?
前もって感謝します。