新疆水司網絡版射頻卡智能水錶收費系統數據庫優化

       總算在這個春節前搞定了,本打算把所有相關資料都拷貝到家裏利用7天假日的空閒時間,繼續琢磨SQL Server 數據庫設計視圖的優化方法,尋找最佳的解決方案,這下可以放下心來了。
       是這樣的,網絡版一卡通系統軟件是較早給西寧自來水公司設計的程序,隨着公司射頻卡只能水錶中標烏魯木齊水務集團,網絡版軟件就要部署到水務集團的各個營業網點。開始由於網絡條件等原因,客戶端創建數據連接和提供數據服務的速度較慢等問題也是花費了不少精力但都能夠順利的解決。瞭解這裏請點擊這裏,新疆自來水公司智能水錶收費系統應用總結
        隨着安裝智能射頻卡水錶的客戶逐步增加,其中數據服務器主站有兩個:新四區和沙區。沙區的客戶端應用程序在收費操作的時候變的很慢,數據量還僅僅是1000多戶收費記錄也不是很多。開始以爲是系統或網絡問題,但是把備份的數據庫回覆到正常運行的系統上,依然很慢。恢復成我的測試備份庫運行速度有正常了。
        打開開發環境進行單步調試,發現程序在訪問數據表時速度很快,但是在訪問視圖時明顯有個等待的過程。
       和水司收費員聯繫瞭解到,前段時間有一天突然變慢了。我安排新疆的客服人員發所有備份的數據庫給我,發現在2011年09月29日以後,的數據訪問開始變的很慢。我把這個查詢速度變慢前的數據庫恢復後,模擬用戶的開戶和售水收費操作。終於找到了在用戶總數量達到一定的值切收費記錄也滿足一定的數量,就突然的造成查詢視圖變慢。我想可能這是SQL Server 在不同的數據量下采用不同的查詢方法。查找了一些資料分析有以下幾種可能:1.數據庫設計視圖執行異常;2.應用程序問題;3.視圖需要優化。第一種可能,我刪除原來的視圖重新建立視圖。測試依然沒有變化。第二種可能:要是把視圖重新設計成表。重新修改應用程序,工作量太大了。這也是萬不得已的最笨的辦法,還是決定放棄了。第三種可能,SQL Server功能強大,不會是這麼點的數據量運行速度就明顯變慢的。也是最經濟的好辦法,決定在優化上想辦法取得突破。
      這裏感謝童工給予幫助,以下是數據庫優化的方法
1.升級MS SQL Server Desktop Engine 到MS SQL Server 個人版(過程略...)的是可以應用到企業管理器和查詢分析器。

 

 

2.在查詢分析器中執行創建索引的腳本

 

 3.查看建立成功的索引

 

 

        優化完成後,速度明顯提高。

 

                                                   作者:段利慶(Lee)  QQ:664340775

                                                   中國一卡通水電暖聯盟羣:16456623

                                                   一卡通智能射頻卡水錶,電錶,熱量表

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章