我工作的公司正在运行一个 C# 项目,该项目从大约 100 个网站爬取数据,将其保存到数据库并对该数据运行一些程序和计算。
这 100 个网站中的每一个都有大约 10,000 个事件,每个事件都保存到数据库中。
之后,正在生成保存的数据并将其聚合到 1 个大 xml 文件中,因此保存的这 10,000 个事件中的每一个现在都以 XML 文件的形式呈现在数据库中。
这个设计看起来像这样:
1) crawling 100 websites to collects the data and save it the DB.
2) collect the data that was saved to the DB and generate XML files for each event
3) XML files are saved to the DB
这篇文章的主要问题是选择保存的 XML 文件。
每个 XML 大约 1MB,考虑到大约有 10,000 个事件,我不确定 SQL Server 2008 R2 是否是正确的选择。
我尝试使用 Redis,并且保存效果很好(而且速度很快!),但是获取这些 XML 的查询工作速度很慢(即使是在本地,所以网络流量不会成为问题)。
我想知道你的想法是什么?请考虑到它是一个实时系统,因此这里不能选择缓存。
任何想法都会受到欢迎。
谢谢。