我正在开发一个 C# 应用程序,它处理从关系数据库 (SQL Server) 检索到的数百万条记录。我的主表“位置”包含以下列:
PositionID, PortfolioCode, SecurityAccount, Custodian, Quantity
用户必须能够检索由一些预定义的列集合并的数量,例如{PortfolioCode, SecurityAccount}, {Porfolio, Custodian}
首先,我只是在我的应用程序代码中使用了动态查询,但是随着数据库的增长,查询变得越来越慢。
我想知道添加另一个包含合并数量的表格是否是个好主意。我想这取决于那些群体的分布?
另外,如何同步源表和合并表?
最佳答案
在 SQL Server 中,您可以使用索引 View 来执行此操作,它会使聚合与基础表保持同步,但会减慢对基础表的插入速度:
http://technet.microsoft.com/en-us/library/ms191432.aspx
如果它纯粹是单个表中分组行的计数,那么标准索引在这里不够用吗?有关您的结构的更多信息会很有用。
编辑:另外,这听起来有点像您将 OLTP 服务器用作报告服务器?如果是,您是否考虑过数据仓库和 ETL 过程是否合适?
关于c# - 我应该在单独的表格中保留合并金额吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18146122/