所以,在我看來,對於具有10k條記錄的表的查詢和對具有10條記錄的表的查詢幾乎同樣快,如果它們都獲取大致相同數量的記錄並充分利用簡單索引(auto增量,記錄id類型索引字段)。有效索引能夠在多大程度上克服非常大的表的性能問題?
我的問題是,這將延伸到與接近4條十億記錄的表,如果它是正確索引,數據庫是建立在這樣一種方式,查詢始終有效地利用這些指標?
此外,我知道將新記錄插入到一個非常大的索引表中可能會非常緩慢,因爲如果我只將新記錄添加到表的末尾,所有索引都必須重新計算,那麼我可以避免這種減速,還是不行,因爲索引是一棵二叉樹,並且樹的大塊仍然需要重新計算?
最後,我四處張望了一下大約有非常大的表工作一個常見問題/警告,但未能真正找到一個,所以如果有人的類似的東西都知道,鏈接,將不勝感激。
PostgreSQL的性能取決於不止多少條記錄。但是一般來說,如果你有數十億條記錄,那麼數據庫將會變慢,即使有很多RAM。雖然RAM速度很快,但您仍然需要查找/讀取/讀取數據,然後對數據執行計算。請記住,「較慢」是一個相對術語。沒有Hadoop之類的東西,數據庫一直在增強內存和CPU以提高性能。 – vol7ron 2010-10-14 04:02:26
如果你打算使用非常大的表格,你可能想要考慮類似NoSQL的數據庫,比如Hadoop;使用map reduce來分配服務器節點的工作。 – vol7ron 2010-10-14 04:04:45
「如果你打算使用非常大的表格」定義非常大的表格。 – Kuberchaun 2010-10-14 14:13:01