我有一个脚本,可以对Web服务进行http调用,捕获响应并解析它。
对于每个事务,我想在关系数据库中保存以下数据。
我很难看到架构。 我最初的想法是创建2个表。
Table 'Transactions':
1. transaction id (not null, not unique)
2. timestamp (not null)
3. type (response or request) (not null)
3. headers (null)
4. content (null)
5. response code (null)
'transaction id'将是通过将时间戳与标题文本组合而得到的某种校验和。
我计算此事务ID的原因是具有唯一ID,可以区分2个事务,但同时用于将请求与响应链接。
这张表用于什么? 该脚本将每5分钟运行一次,并将所有这些记录到数据库中。此外,每次运行时,脚本都会检查上次成功完成交易的时间。此外,在一天结束时,该脚本会生成当天所有交易的摘要并通过电子邮件发送。
关于如何改进此设计的任何想法?我应该将哪种规范化和/或优化技术应用于此模式?我应该把它分成两个或更多的表吗?
答案 0 :(得分:0)
我决定使用NoSQL方法来实现这个目标。使用MongDB。它提供的文档结构的灵活性,而不必具有固定数量的属性确实有帮助。 可能不是问题的最佳解决方案,但我能够使用复合索引优化性能。