首页 文章

将事务记录到Azure表,然后在SQL Azure数据库中汇总以进行报告

提问于
浏览
0

我有一个使用SQL Azure(业务层)进行数据存储的应用程序 . 它本质上是24/7记录事务,目前每天处理8-10,000个事务 . 记录时会对每个事务进行规范化,并且需要创建潜在的新密钥以支持规范化 . 我们最终每次交易需要1-2秒才能登录 .

每隔30分钟左右,我们总结了按小时,天,周和月分组的许多报告的交易数据 . 此操作需要2-4分钟 .

我们现在基本上在合理的水平上执行,但是负载会增加,我们正在考虑处理增加的一些选项 . 早期的测试表明,我们不会用我们当前的架构来处理增加的负载(10x) .

我们正在考虑更改为事务日志记录的NoSQL数据解决方案,可能是Azure表存储 . 这部分似乎比较紧张 .

一旦进入表存储(或其他NoSQL存储),总结数据并进入我们的SQL Azure数据库进行报告的最佳方法是什么?目前,所有摘要逻辑都是基于规范化事务在存储过程中内置到数据库中的 .

有没有办法以批处理模式将数据从表存储加载到Azure,然后我们可以总结一下?我们是否应该将摘要逻辑移动到将从事务日志中读取的.NET服务/应用程序,汇总数据,然后将其写入我们的SQL Azure数据库?

我们没有找到任何将Table Storage和SQL Azure结合使用的好例子,一切似乎都是两者的比较 .

基本上我们正在寻找类似场景的一些指导或示例 . 谢谢你的任何建议 .

1 回答

  • 0

    如果我理解正确,您已经有一些基于SQL Azure构建的报告基础结构,您希望重用它们 . 在这种情况下,构建从Azure表读取原始数据,聚合数据并将结果插入SQL Azure的应用程序的解决方案似乎是合适的解决方案 .

    分区键(pk)和行键(rk)选择可以显着影响对Azure表的读/写操作的性能 . PK,RK和其他表属性的选择取决于您将如何使用数据,主导查询和应用程序行为 . 存储团队blob(http://blogs.msdn.com/b/windowsazurestorage/archive/2010/11/06/how-to-get-most-out-of-windows-azure-tables.aspx)针对常见方案提供了相关指导

    注意:您可能已经知道这一点,但是您可以使用除.NET之外的其他语言的Azure SDK . 如果可能,您可能还希望将应用程序部署在与Azure表和SQL Azure相同的数据中心中,以获得更好的性能

相关问题