現在、膨大な量のレコードを処理する必要がある非常に大きなアプリケーションを開発しています。
アイデアは、電子メールを (添付ファイルと共に) 保存する必要があり、Web API を介してユーザーが保存された電子メールを検索できるようにする必要があるというものです。ユーザーは、(データベース/ストレージにエクスポートした自分のメッセージ内で) 少なくとも次の項目を検索できる必要があります。
- から
- に
- 主題
- 日付 (範囲)
- 添付ファイル (名前と種類のみ)
- メッセージ内容
- (オプション) メールボックス / フォルダ構造
アプリケーションは、多数のユーザーと膨大な数の電子メール (数百万から数十億に容易に増加) に対応できる必要があります。ユーザーは、メール クライアントにインポートできるように、元のメッセージ全体 (添付ファイル付き) をダウンロードできる必要があります。
私は、電子メールをデータベースにインデックス付けし、一意のキーを使用して添付ファイル付きの完全な電子メールを別のpackage
ストレージに保存することを考えていました。このようにして、データベースの負荷を可能な限り低く保ち、検索を可能な限り高速に保つ必要があります。
このような電子メールを処理するためのデータベース スキーマがいくつか見つかりました。数億、場合によっては数十億のレコード (電子メール) を処理できるデータベースを見つけることができませんでした。
これは、シンプルで効率的かつ高速に保つための最も効率的な方法ですか、それとも何か忘れていますか?
// 編集 これを amazon クラウドで実行するという考えです (おそらくそれに関連する提案はありますか?)