簡體   English   中英

使用mysql處理大數據

[英]Handling large data with mysql

我需要從mysql中提取大量數據。 可能會達到100,000+。 我已經完成了使用索引和其他方法處理數據的優化。 我現在面臨的問題是內存溢出。 每當我嘗試將數據拉到100,000以上時,它就會顯示內存大小錯誤。 我將內存限制設置為512M,但是可能會有大數據的機會,因此我無法每次都增加內存。 是否有更好的方法來處理此問題。 我正在使用cakephp,我的系統一次需要所有數據。

您無法逃避內存有限的事實。 期。 要求很傻但是很好。 您將必須以適合可用內存的塊的形式處理數據,並將這些塊發送到客戶端或將其附加到您正在編寫的文件中。

這基本上是AJAX分頁或“無休止的加載”,只是您無需更改頁面,而是將下一頁追加到DOM樹中的上一頁,直到到達最后一頁。 當所有記錄都已加載並且DOM樹中存在數百萬個元素時,請享受一個響應速度可能慢的站點帶來的樂趣。 ;)

另一種方法是在后台作業(shell,cron任務)中創建視圖,然后像靜態頁面一樣將預先生成的文件發送給客戶端。 外殼程序還必須對數據進行分頁並將其附加以解決內存限制。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM