大資料量的報表如何快速分頁呈現?
在說明這個問題的處理方法前,先了解下是什麼原因導致的大資料量報表呈現慢的問題。
一般不外乎這兩種原因:
1 . 資料查詢業務,查詢條件寬泛,導致資料庫查詢後的結果集資料條數達到幾百上千萬甚至過億;
2 . 採用記憶體運算機制,即如此龐大的資料量要一次性在記憶體計算完成,後再進行呈現,使用者體驗特別不好,這個過程中很可能因為計算量大 出現記憶體溢位,無法繼續計算。
針對這種情況,我們可以採用非同步處理的方式,將取數和呈現分為兩個執行緒非同步處理,取數執行緒發出 SQL 後不斷取出資料快取到本地,由呈現執行緒從本地快取中獲取資料進行顯示。這樣,已經取出並快取的資料就能快速呈現,不再有等待感;而取數執行緒所涉及的 SQL,在資料庫中保持同一個事務,也不會有不一致的問題,前面提到的兩個問題全部得以完美解決。
同時,藉助二進位制檔案儲存格式,報表還可以按行號隨機訪問記錄,而不用每次透過遍歷查詢資料。也就是說,這種儲存格式支援跳轉到任意頁訪問,從而極大地改善了使用者體驗。不過,由於採用了非同步機制,頁面端顯示的總頁數和總記錄數會隨著取數過程不斷變化。
目前潤乾報表已經將這種處理機制產品化,只需要一個簡單的設定就可以了。
詳細設定可參考:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69900830/viewspace-2701218/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 報表連 hive,資料量比較大,怎麼分頁查詢?Hive
- 報表連 MongoDB,資料量大報表慢,怎麼做分頁?MongoDB
- 大資料量報表展現慢容易卡死,怎麼辦?大資料
- 如何快速最佳化幾千萬資料量的訂單表
- 千萬條資料,Stack Overflow 是如何實現快速分頁的?
- 怎麼檢查報表工具對大資料量報表的支援性?大資料
- React如何渲染大資料量的列表?React大資料
- 如何在分組報表中實現組內資料補空行及組內頁碼
- 資料庫中的圖片欄位怎麼在報表中呈現資料庫
- 資料量很大,分頁查詢很慢,該怎麼優化?優化
- MySQL 百萬級資料量分頁查詢方法及其最佳化MySql
- DBA福音 | 如何無視資料量快速搭建測試資料庫資料庫
- 使用Mybatis-plus進行分頁查詢,沒有分頁效果,查詢的資料量超出每頁數量設定MyBatis
- 實現報表資料分庫儲存
- 大資料量刪除的思考(一)大資料
- 大資料量刪除的思考(三)大資料
- 大資料量刪除的思考(四)大資料
- 大資料量刪除的思考(二)大資料
- mysql 表資料量大量查詢慢如何優化MySql優化
- 大屏報表中如何實現多圖表間的聯動?
- 億萬級分庫分表後如何進行跨表分頁查詢
- 如何實現報表滾動到底部進行翻頁的效果
- 資料量大了一定要分表,分庫分表元件Sharding-JDBC入門與專案實戰元件JDBC
- 匯出資料量大的報表記憶體溢位怎麼辦?記憶體溢位
- 什麼是大報表?如何解決大報表的問題?
- MYSQL下如何安全的快速刪除大表MySql
- 分庫分表後的分頁查詢
- oracle大資料量分批刪除Oracle大資料
- web 端如何像 excel 裡的多 sheet 方式呈現資料WebExcel
- 讀 CSV/TXT 的報表怎麼做分頁查詢?
- 大資料量獲取TopK的幾種方案大資料TopK
- EXCEL大資料量匯出的解決方案Excel大資料
- 近期勒索軟體呈現的5大趨勢
- 表資料量影響MySQL索引選擇MySql索引
- shell-----資料呈現方式
- 資料庫系列:巨量資料表的分頁效能問題資料庫
- Python 大資料量文字檔案高效解析方案程式碼實現Python大資料
- MySQL單表存多大的資料量比較合適MySql