私は現在、ユーザー トランザクションをログに記録するためのさまざまなオプションについて少し調査しています。現在、トランザクションが XML メッセージの形式で送信される設計になっています。SQL をデータベースとして使用し、各 XML メッセージ/トランザクションは 4 つのフィールド (GUID を使用する主キー、トランザクションの種類、トランザクションが発生したときのタイムスタンプ、および XML 全体を含むフィールド) を持つテーブルに格納されます。トランザクション中にエラーが発生した場合、元の XML メッセージは、トランザクションのタイプとエラーが発生したタイミングに基づいて取得され、XML メッセージで送信されたデータを評価できます。
ただし、この設計を使用すると、データベースのクエリに非常に長い時間がかかることがわかります。毎日ログに記録されるトランザクションの数が原因であるかどうかはわかりません (数十万のトランザクションになる可能性があります)。したがって、私は自分の状況でより効率的な他の種類のデータベース アプリケーションがあるかどうかを調査してきました。選択肢はたくさんありますが、どこから始めればよいかわかりませんでした。mongodb についてはかなりの数の議論がありましたが、それが私がやろうとしていることに当てはまるかどうかはわかりません。私が調査できるデータベース オプションの種類について、どなたかご提案いただけますか?