2010-05-15 77 views
0

我有一個關於表索引的增益與每個月大小不斷增長的查詢和索引。有關數據庫中插入和更新獲取索引的問題

情況是,我有兩張表,表1表2。每張桌子每個月增長緩慢但有規律(對於表1表2有大約100個新行)。

我的具體問題是是否有索引或放棄它。我做了一些測量,表2覆蓋索引提高我的SELECT查詢和一些相當多,但再次,我要考慮利弊,但有一個非常困難的時間來決定。

對於表1它可能不是需要有一個索引,因爲SELECT查詢有沒有那麼普遍。

我會很感激任何建議,提示或只是很好的建議,以什麼是一個很好的解決方案。 順便說一句,我使用的是IBM DB2版本9.7作爲我的數據庫系統

真誠

Mestika

回答

2

任何額外的指數將讓你插入慢,你的查詢速度更快。

爲了做出明智的決定,您將不得不精確測量您希望看到的數據量。如果您有多個客戶端同時訪問數據庫,則可以編寫一個小型多線程應用程序來模擬插入和查詢的最大負載。

您的結果將取決於您的數據的性質以及您正在運行的硬件。如果您想知道您的用例的最佳答案,則無法準確測試您的數據和硬件。

那麼你將不得不問自己:

我需要哪種查詢性能?
如果無論如何查詢性能足夠好,很容易:不要添加索引!

我需要哪種插入性能?
可以通過額外的索引降低到所需限制以下嗎?如果不是,很容易:添加索引!

如果您發現絕對需要查詢性能的索引,並且無法通過索引獲得所需的插入性能,則可能需要購買更好的硬件。固態盤可以爲數據庫服務器創造奇蹟,而且它們的價格也很實惠。

如果您的系統無論如何都適合所有人,請放心,讓它按原樣運行。