目前我们正在开发一个相当大的应用程序,它必须处理大量的记录。
这个想法是必须存储电子邮件(带有附件),并且通过 web-api 用户应该能够在他们存储的电子邮件中搜索。用户应该能够搜索(在他们自己已导出到数据库/存储中的消息中)至少以下项目:
- 从
- 到
- 学科
- 日期范围)
- 附件(仅限名称和类型)
- 消息内容
- (可选)邮箱/文件夹结构
该应用程序应该能够处理大量用户和大量电子邮件(很容易从数百万增长到数十亿)。用户应该能够下载整个原始消息(带有附件),以便他们可以将其导入他们的电子邮件客户端。
我正在考虑将电子邮件索引到数据库中,并将带有唯一键的附件的完整电子邮件package
存储到单独的存储中。通过这种方式,我应该尽可能降低数据库负载,从而尽可能快地搜索。
我发现了几种用于处理此类电子邮件的数据库模式。我找不到任何能够处理数亿甚至数十亿记录(电子邮件)的数据库。
这是保持简单、高效和快速的最有效方法,还是我忘记了什么?
// 编辑的想法是在亚马逊云上运行它(也许有任何相关的建议?)