配置好的机器,买很多内存要讲究做INDEX,仔细研究用户搜索习惯而加以优化

解决方案 »

  1.   

    请问,如果 我的系统中需要经常性的进行上百万的数据和一些很复杂的查询和操作,我用什么样的数据处理策略为最佳方案ADO.NET在这方面怎么操作效率最高(硬件条件不考虑)
      

  2.   

    SQL语名要进行查询优化,常用的数据可以考虑cache在硬盘使用。
      

  3.   

    我想,可以采用.net的高速缓存,然后设置为依据查询参数更新。这样当用户采用相同的查询参数对数据库进行查询的时候,就可以从缓存中得到数据了。
    另外如果数据更新不是非常频繁的话,可以尝试把数据导入一个利于查询的表中,例如合并两个表到一个表中,然后建立适当的聚集和非聚集索引,可以大幅度的提高查询效率。
    还有一种方法是可以采取sql server的分布式视图,把一个表分割后放到多个服务器中,具体信息可以查询sql server自带的说明
      

  4.   

    用分页方法嘛。
    你一页就从数据库中取出并显示几十,几百条记录。上下翻页时,再从数据库中取另一页的数据。我做的系统就是这样。速度很快的。VB.Net例子:        Dim cn As New OleDb.OleDbConnection()
            cn.ConnectionString = strConn
            cn.Open()        Dim strSql As String
            strSql = "Select * From Table1 "
     
            Dim oCMD As New OleDb.OleDbCommand(strSql, cn)
            Dim oDS As New OleDb.OleDbDataAdapter()
            Dim ds As New System.Data.DataSet()
            oDS.SelectCommand = oCMD
     
            Dim StartIndex As Integer
            StartIndex = CurrentPage * PageSize 'CurrentPage 为当前页,PageSize为每页显示记录数
            oDS.Fill(ds, StartIndex, PageSize, "tBl")
            
            ...