最新回答 / hasty
如果寫入數據比較大,的確不用普通索引(非主鍵)更好。非主鍵索引是和數據行單獨存儲的,每次寫入數據時,除了更新數據行(包括了主鍵),還要額外更新非主鍵索引,會降低寫處理的性能,因此如果寫入數據量很大,不宜使用非主鍵索引。此情況下,通過將數據緩存在redis、mongo、memcached等nosql中,實現查詢的優化。以及通過各種代碼緩存分布式(分庫分表分片)等策略、包括業務邏輯,最終使得查詢性能也能得到較好的保證,或者將各種查詢轉化為依賴數據主鍵的查詢都能保證查詢也有較好的性能。
2015-02-09
已采納回答 / hasty
PHP-MYSQL中間 插入一層:C或者java寫的中間數據服務層,這樣不會直接讀寫數據庫,有很多好處:(1)數據邏輯與服務邏輯分離,對數據安全有很大好處。(2)同時,也便于數據層的擴展,底層的數據存儲可以隨時根據需要切換到其它數據存儲上,mysql、oracle、redis、mongo,而不影響前面的php服務邏輯。(3)從性能上來說,mysql水平擴展并沒有在數據讀寫邏輯層擴展容易。分隔開php與mysql,是大訪問量系統降低耦合、提升可擴展性的需要。
2015-02-09