【问题标题】:Logging & Reporting Page Views - MVC - Azure记录和报告页面视图 - MVC - Azure
【发布时间】:2014-11-19 22:20:07
【问题描述】:

我有一个主要由 30 个内部用户使用的 Azure 网站。鉴于我们业务的性质,我们需要记录所有数据更改和数据视图 (HIPAA/PHI)。我正在寻找您可能称之为“最佳实践”的实施方式,以应对 2015 年用户群的显着增长 - 1000 个用户。

 `[user, datetime, controller, action, params]`

今天,我们设置了一个 ActionFilter,它在指定的控制器操作上执行,以收集用户信息以及控制器并查看并将其传递到 SQL Azure 数据库。虽然这可以异步执行,但表变得非常胖。例如,针对这些数据进行查询以显示最近的 10 个视图非常慢。

我希望我的数据库不会因为这样的事务数据而变得非常臃肿,我们最好考虑将这些数据实现到 DocumentDB 结构中吗?

我们应该如何存储这些允许我们执行以下操作的页面视图:
1. 报告用户最近的 10 次客户浏览量 2.报告用户的所有视图 3. 报告客户的所有浏览量

【问题讨论】:

    标签: c# asp.net-mvc azure logging azure-sql-database


    【解决方案1】:

    这里的答案取决于您查询的数据量。

    您可能已经知道这一点......但请确保您在查询的字段(查看日期、用户、客户)上有索引。分析您的查询以确保您获得的是索引搜索而不是表扫描。

    如果您的数据和使用量超出单个 Azure SQL 数据库,您可以通过跨多个 Azure SQL 数据库对数据进行分区/分片来横向扩展。围绕数据分片的讨论可能会变得相当复杂……但 Azure SQL 的 Elastic Sc​​ale 可能会使分片过程更容易:http://azure.microsoft.com/en-us/documentation/articles/sql-database-elastic-scale-introduction/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多