2009-10-03 72 views
0

假設我有一張表,它可以在列字段中存儲1億條不同大小字符串的記錄,最多可以有20個字符。我需要索引這個專欄,我只有一個2GB的Ram機器,這足以執行這樣的任務嗎? mysql是否推薦用於存儲的db引擎?數據庫索引和內存使用情況

+0

你有時間限制嗎? –

+0

您的意思是足以構建索引,還是使用索引來執行查詢? – leonm

+0

@Remus:時間限制是鬆散的,不超過24小時 @leonm:我的意思是兩個 – user157195

回答

1

如果你有2 GB的主內存,那麼是的,你應該能夠毫無問題地構建索引;虛擬內存是一件很棒的事情,DBMS可能會安排將數據泄漏到磁盤中。

如果您只有2 GB的磁盤空間,則沒有足夠的空間存儲數據和索引。


要沒有人驚訝的是,這是2 GB的主內存,而不是2 GB的磁盤(該意見主要是在開玩笑 - 但這些天,如果有人說256 GB,目前尚不清楚他們是否指的是磁盤空間或主內存;它可能是)。

是的,如果DBMS不能在該約束內創建索引,那麼它不值得被稱爲DBMS。

MySQL可能可以完成這項工作。這不是我推薦的,但是作爲替代(商業)數據庫管理系統的開發人員之一,我在這方面非常偏向。我們沒有足夠的有關您的預算等信息能夠可靠地提供建議。

+0

如果你有2GB的磁盤空間,你應該可能會丟失這個盒子 - ) –

+0

2GB的主內存<我編輯了我原來的帖子; ) – user157195

3

數據庫通常設計的方式允許他們使用更多的數據,然後你有可用的RAM。給它更多的工作記憶會加快速度,但它應該能夠構建索引並在其上執行搜索。