成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

PHP與MySQL數據庫中排序的對比及使用條件詳解

數據庫 MySQL
本文我們主要介紹了PHP與MySQL數據庫中排序的相關知識的介紹,以及一些必須在PHP或者是MySQL數據庫中進行排序的實例的介紹,希望能夠對您有所幫助。

PHPMySQL數據庫中排序的對比及使用條件是本文我們主要要介紹的內容,通常來說,執行效率需要考慮CPU、內存和硬盤等的負載情況,假定MySQL服務器和PHP服務器都已經按照最適合的方式來配置,那么系統的可伸縮性(Scalability)和用戶感知性能(User-perceived Performance)是我們追求的主要目標。在實際運行中,MYSQL 中數據往往以 HASH tables、BTREE 等方式存貯于內存,操作速度很快;同時INDEX 已經進行了一些預排序;很多應用中,MySQL 排序是***。

PHP與MySQL相比具有如下優勢:

1、考慮整個網站的可伸縮性和整體性能,在應用層(PHP)中排序明顯會降低數據庫的負載,從而提升整個網站的擴展能力。而數據庫的排序,實際上成本是非常高的,消耗內存、CPU,如果并發的排序很多,DB 很容易到瓶頸。

2、如果在應用層(PHP)和MYSQL之間還存在數據中間層,合理利用,PHP會有更好的收益。

3、PHP在內存中的數據結構專門針對具體應用來設計,比數據庫更為簡潔、高效;

4、PHP不用考慮數據災難恢復問題,可以減少這部分的操作損耗;

5、PHP不存在表的鎖定問題;

6、MySQL中排序,請求和結果返回還需要通過網絡連接來進行,而PHP中排序之后就可以直接返回了,減少了網絡IO。

至于執行速度,差異應該不會很大,除非應用設計有問題,造成大量不必要的網絡IO。另外,應用層要注意PHP 的 Cache 設置,如果超出會報告內部錯誤;此時要根據應用做好評估,或者調整Cache。具體選擇,將取決于具體的應用。

列出一些PHP中執行排序更優的情況:

1、數據源不在MySQL 中,存在硬盤、內存或者來自網絡的請求等;

2、數據存在 MySQL 中,量不大,而且沒有相應的索引,此時把數據取出來用PHP排序更快;

3、數據源來自于多個MySQL 服務器,此時從多個 MySQL 中取出數據,然后在PHP中排序更快;

4、除了MySQL 之外,存在其他數據源,比如硬盤、內存或者來自網絡的請求等,此時不適合把這些數據存入MySQL 后再排序;

列出一些必須在MySQL中排序的實例:

1、MySQL中已經存在這個排序的索引;

2、MySQL中數據量較大,而結果集需要其中很小的一個子集;比如 1000000 行數據,取***0;

3、對于一次排序、多次調用的情況,比如統計聚合的情形,可以提供給不同的服務使用,那么在MySQL 中排序是***的。另外,對于數據深度挖掘,通常做法是在應用層做完排序等復雜操作,把結果存入MySQL即可,便于多次使用。

4、不論數據源來自哪里,當數據量大到一定的規模后,由于占用內存/Cache 的關系,不再適合PHP中排序了;此時把數據復制、導入或者存在MySQL ,并用INDEX 優化,是優于PHP 的。不過,用 Java,甚至 C++ 來處理這類操作會更好。 有些類似大數據集聚合或者匯總的數據,在客戶端排序得不償失。當然,也有用類似搜索引擎的思路來解決類似應用的情況。

從網站整體考慮,就必須加入人力和成本的考慮。假如網站規模和負載較小,而人力有限(人數和能力都可能有限),此時在應用層(PHP)做排序要做不少開發和調試工作,耗費時間,得不償失;不如在DB 中處理,簡單快速。對于大規模的網站,電力、服務器的費用很高,在系統架構上精打細算,可以節約大量的費用,是公司持續發展之必要;此時如果能在應用層(PHP) 進行排序并滿足業務需求,盡量在應用層進行。

關于PHP中執行排序與MySQL中執行排序的相關知識就介紹到這里了,希望本次的介紹能夠對您有所收獲!

【編輯推薦】

  1. MySQL數據庫mysqlcheck的使用方法詳解
  2. Linux cron執行MySQL失敗的問題解決方案
  3. MySQL數據庫TIMESTAMP設置默認值的靈活運用
  4. MySQL性能優化之使用Limit關鍵字來避免全表掃描
  5. MySQL數據庫TIMESTAMP設置默認值的幾個應用實例
責任編輯:趙鵬 來源: CSDN博客
相關推薦

2010-06-04 10:40:55

AJAX MySQL

2010-06-01 10:47:21

連接MySQL數據庫

2011-08-25 17:49:14

MySQLmysqlcheck

2011-09-01 15:10:22

Qt數據庫SQL

2009-09-07 15:25:24

MySQL數據庫互操作Silverlight

2021-04-27 07:42:35

數據庫MySQLSQLServer

2011-08-05 10:01:47

MySQL庫Pdo-MysqlMysqli

2009-09-03 11:42:32

2010-07-01 11:03:04

SQL Server轉

2009-07-28 14:16:31

ASP.NET與MyS

2011-08-24 15:36:30

2024-11-19 13:11:19

2011-07-26 13:55:01

MongoDB備份與恢復

2010-04-02 17:11:45

Oracle數據庫

2010-05-27 10:10:00

連接MySQL數據庫

2019-12-18 08:00:09

MySQL數據庫ORDER BY

2022-03-29 10:52:08

MySQL數據庫

2010-04-01 09:45:38

NoSQL

2024-09-10 08:00:00

PostgreSQL數據庫

2010-05-28 10:34:39

連接MySQL數據庫
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩精品久久久久久 | 1000部精品久久久久久久久 | 激情在线视频网站 | 久久国产精品网站 | 成人小视频在线观看 | 日韩国产中文字幕 | 亚洲午夜精品一区二区三区他趣 | 久久高潮| 99国产精品久久久 | 一级欧美日韩 | 日韩精品久久久久久 | 精品久久久久久久 | 日本久久综合 | 日韩精品一区二区三区免费观看 | 亚洲精品电影在线观看 | 国产激情91久久精品导航 | 免费国产一区二区 | 五月激情婷婷网 | 日韩一区二区在线免费观看 | 日韩欧美操| 精品一区精品二区 | 免费的av网站 | 一区二区三区免费网站 | 久久国内精品 | 99re热精品视频 | 国产精品一区二区不卡 | 欧美激情在线精品一区二区三区 | 精品欧美久久 | 亚洲精品久久久一区二区三区 | 国产日韩一区二区 | www.国产精品| 亚洲精品天堂 | 羞羞视频免费在线观看 | 国产精品高潮呻吟久久 | 一级毛片免费 | 日本h片在线观看 | 欧美最猛黑人xxxⅹ 粉嫩一区二区三区四区公司1 | 午夜小视频在线播放 | 日本视频免费 | 欧日韩不卡在线视频 | 国产精品乱码一区二区三区 |