| PostgreSQL 7.4 文檔 | ||||
|---|---|---|---|---|
| Prev | Fast Backward | Chapter 12. 並發控制 | Fast Forward | Next |
盡管 PostgreSQL 提供對表數據訪問的非阻塞的讀/寫,但並非所有 PostgreSQL 裡實現的索引訪問模式都能夠進行非阻塞讀/寫。 不同的索引類型按照下面方法操作︰
短期的共享/排他的頁面級的銷用于讀/寫訪問。 銷在索引行被插入/抓取後立即釋放。 B-tree 索引提供了無死鎖條件的最高級的並行性。
共享/排他的頁面級鎖用于讀/寫訪問。鎖在命令處理完成後釋放。
共享/排他的頁面級鎖用于讀/寫訪問。鎖在頁面處理完成後釋放。 頁面級鎖比索引級的鎖提供了更好的並行性但是容易產生死鎖。
簡單說,B-tree 索引是我們推薦的用于並行應用的索引類型; 因為它們還有比散列索引更多的特性,在那些需要對標量數據進行索引的應用中,我們建議使用這種索引類型。 在處理非標量類型數據的時候,顯然不能使用 B-tree;在這種環境下, 應用開發人員應該清醒意識到 GiST 和 R-tree 索引的相對弱的並發性能。