當(dāng)前位置:工程項(xiàng)目OA系統(tǒng) > 泛普各地 > 江西OA系統(tǒng) > 鷹潭OA > 鷹潭網(wǎng)站建設(shè)公司
PHP/MYSQL 查詢大數(shù)據(jù)
申請(qǐng)免費(fèi)試用、咨詢電話:400-8352-114
鷹潭網(wǎng)站建設(shè)www.diyphp.netPHP:PHP 5.3.6 (cli) (built: Jun 15 2011 16:29:50)
MYSQL:5.1.51
若是我們有的一張表有幾百萬(wàn)或幾千萬(wàn)的記載,我們要運(yùn)用 PHP 將一切的記載都獲取過(guò)來(lái)(遍歷數(shù)據(jù)表)進(jìn)行處置。查詢句子:
SELECT * FROM largetable;
PS:為了證明上面的做法是最佳的方法,我測(cè)驗(yàn)運(yùn)用 largetable 中的一個(gè)字段做 where ,以及 LIMIT,OFFSET 。上面那種 WHERE 取得成果很慢,固然用了索引。后邊這種 LIMIT 可以讓你有一種想死的覺(jué)得(有愛好可以了解下,《分頁(yè)優(yōu)化》)。
以 MYSQL 以及PDO_MYSQL 為例,測(cè)驗(yàn)直接運(yùn)用以下代碼,必然會(huì)呈現(xiàn)超內(nèi)存的狀況:
$result = mysql_query($sql);
while ($rowset = mysql_fetch_assoc($mysql)) {
...
$stmt = $dbh->prepare($sql);
$stmt->execute();
while ($row = $stmt->fetch(PDO::FETCH_ASSOC, PDO::FETCH_ORI_NEXT)) {
...
緣由在于在查詢履行后,PHP 的MYSQL、PDO_MYSQL 將查詢成果悉數(shù)緩存到了客戶端,也就是 PHP 履行地點(diǎn)機(jī)器上。這樣若是我們要 SELECT * FROM LARGETABLE 查詢的記載在 百萬(wàn)以上的時(shí)分 ,緩存的成果就會(huì)非常大,超出 PHP 運(yùn)用內(nèi)存。所以為了防止這樣狀況就需要封閉客戶端的緩存。
這里供給二個(gè)測(cè)驗(yàn)?zāi)_本,分別為 MYSQL、PDO_MYSQL 封閉緩存后查詢樣例。點(diǎn)擊下載:mysql_query
以下是 PDO_MYSQL 在查詢 ~100W 以及 ~200W (540M)數(shù)據(jù)成果(由于我的 PHP 內(nèi)存運(yùn)用設(shè)置了1G所以沒(méi)掛:) )
可以很明顯的看出在緩存成果后占用內(nèi)存驚人…,當(dāng)我們處置千萬(wàn)數(shù)據(jù)的時(shí)分必掛。
以下是 PDO_MYSQL 封閉緩存查詢 ~200W 的數(shù)據(jù)成果。這下處置千萬(wàn)以及E級(jí)的數(shù)據(jù)的時(shí)分,對(duì)內(nèi)存表明很淡定。
PS:若是你要處置的數(shù)據(jù)就幾十萬(wàn),你仍是調(diào)大點(diǎn)內(nèi)存好了。比方 MYSQL:
mysql_unbuffered_query() 的優(yōu)點(diǎn)是有價(jià)值的:在 mysql_unbuffered_query() 回來(lái)的成果集之上不能運(yùn)用 mysql_num_rows() 和 mysql_data_seek()。此外在向 MySQL 發(fā)送一條新的 SQL 查詢之前,必須提取掉一切未緩存的 SQL 查詢所發(fā)生的成果行。
- 1JavaScript 性能提升技巧
- 2 玩具租賃商城系統(tǒng)需求2
- 3如何讓搜索引擎看到更真實(shí)的網(wǎng)頁(yè)
- 4網(wǎng)站備案所需材料
- 5企業(yè)為什么偏愛要求資深的網(wǎng)站維護(hù)單位做網(wǎng)站呢?
- 6MySql常用命令總結(jié)
- 7企業(yè)四網(wǎng)合一網(wǎng)站升級(jí)版1
- 8房地產(chǎn)行業(yè)微信營(yíng)銷方案3
- 9P2P網(wǎng)貸的營(yíng)銷戰(zhàn)略特點(diǎn)
- 10p2p網(wǎng)貸系統(tǒng)可分為三部分
- 11PhoneGap新手總是需要一些基礎(chǔ)問(wèn)題的解答
- 12網(wǎng)站制作如何設(shè)計(jì)網(wǎng)站
- 13ecshop中jQuery沖突解決
- 14如何使自己的企業(yè)網(wǎng)站和同行業(yè)的網(wǎng)站不類似沖突
- 15網(wǎng)站改版注意的問(wèn)題
- 16房地產(chǎn)行業(yè)微信營(yíng)銷方案2
- 17電子商務(wù)網(wǎng)站的下一個(gè)掘金點(diǎn)-----O2O
- 18Dreamweaver插件
- 19Linux系統(tǒng)平安Shell劇本用于Linux系統(tǒng)的平安初始化劇本
- 20考證輔導(dǎo)網(wǎng)站制作解決方案
- 21泛普軟件-U2ME網(wǎng)站設(shè)計(jì)方案計(jì)劃表
- 22PHP 5中垃圾回收算法的演化
- 23玩具租賃系統(tǒng)功能列表
- 24玩具租賃商城系統(tǒng)需求3
- 25Asia-Pacific Economic Cooperation 工商咨詢理事會(huì)亞太中小企業(yè)峰會(huì)
- 26企業(yè)信息統(tǒng)計(jì)系統(tǒng)開發(fā)方案
- 27魅妝社區(qū)項(xiàng)目開發(fā)文檔
- 28GAE上搭建PHP環(huán)境并開啟URL
- 292014年玩具租賃市場(chǎng)達(dá)8億,如何抓住這市場(chǎng)良機(jī)?
- 30網(wǎng)貸平臺(tái)主要運(yùn)營(yíng)模式主要有兩類---債權(quán)轉(zhuǎn)讓模式
成都公司:成都市成華區(qū)建設(shè)南路160號(hào)1層9號(hào)
重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓