翻譯|使用教程|編輯:莫成敏|2019-11-18 13:13:01.097|閱讀 475 次
概述:在這篇文章中,我們將總結數據透視表控件的關鍵功能,這些功能在綁定到一百萬條原始數據記錄時將有助于其呈現性能。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
數據透視表用于顯示統計匯總,例如數據的總和和平均值。實時繪制數據透視表處理的數據非常龐大,通常接近一百萬條記錄。
數據透視表被認為在處理大量數據方面非常高效,因此,為了滿足快速處理一百萬條記錄的需求,Syncfusion創建了用于Web平臺的數據透視表控件。數據透視表控件包含在Essential Studio for JavaScript中。
點擊下載Essential Studio for JavaScript
盡管它非常高效,但是要充分利用我們的數據透視表,您需要遵循一些最佳實踐。
在這篇文章中,我們將總結數據透視表控件的關鍵功能,這些功能在綁定到一百萬條原始數據記錄時將有助于其呈現性能。
使用一百萬個數據點渲染數據透視表控件
借助虛擬滾動功能,用戶可以在Web瀏覽器中查看大量數據,而不會出現性能延遲。使用此功能,僅將來自當前頁面的信息附加到DOM,并且隨著頁面的滾動,動態檢索數據以刷新數據透視表。
向下/向上、過濾、排序、聚合和計算字段之類的基本功能可以有效地與大型數據源一起使用。
作為對鉆取功能的附加考慮,僅可見信息用于計算并與樞軸引擎合并。這樣可以避免重新計算層次結構中所有可用成員的值。
例如,考慮一個具有八列的數據透視表,其中用戶將成員擴展為一行。在這種情況下,僅可見列將用于針對擴展行進行計算。數據透視表引擎更新后,數據透視表將在DOM中自動刷新。
與向下鉆取機制一樣,其他功能(如排序、過濾、聚合等)僅涉及可見數據部分進行計算,而不是全部數據,以實現更好的數據透視表控制。瀏覽器應用程序的CPU和內存使用率也保持在最佳水平。
作為參考,請查看在GitHub上展示數據透視表性能的示例。下表列出了啟用和禁用虛擬滾動功能時的性能差異,
具有許多記錄的高性能過濾器對話框
當數據透視表控件綁定到大型數據源時,某些字段的成員計數可能會很高。在這種情況下,打開過濾器對話框將影響性能。因此,為了呈現大量成員而沒有任何性能延遲,我們提供了限制要在過濾器對話框中顯示的成員數量的措施。另外,用戶可以借助過濾器對話框中可用的搜索選項來過濾多余的成員。
在GitHub上查看成員過濾器對話框性能的樣本。請在下表中找到隨著成員數量增加而增加的處理時間,
會員數 | 查看對話框所需的時間 |
1千 | 2秒 |
2千 | 6秒 |
5千 | 35秒 |
按需刷新數據透視表
與Microsoft Excel一樣,我們的數據透視表控件也支持延遲的布局更新。這允許最終用戶在行、列、值軸和過濾器軸之間拖放字段,以在字段列表中應用排序和過濾,從而導致對數據透視表報表而不是數據透視表進行了更改。完成所有操作后,數據透視表將開始刷新上一次修改的報告。這有助于在數據透視表呈現中提供更好的性能。
如何有效處理日期類型字段
對于大型數據源,如果任何字段均為日期類型,則建議禁用排序。
原因是分配給數據透視表的原始數據將是字符串類型,并且對日期值進行排序時,將生成錯誤的結果。因此,在生成樞軸引擎期間,我們將解析值并找到它們的數據類型并對它們進行格式化。
作為參考,請查看顯示如何在GitHub上處理日期類型字段的示例。
改善數據透視表的性能時,請按日期分組
日期類型可以按其單獨的單位進行格式化和顯示,例如年,季度,月,日,小時,分鐘或秒。為此,應將源代碼中消耗的輸入日期值分隔開,并用必要的字段進行重新構架,這顯然會導致性能限制。
例如,如果字段“StartDate”在原始數據中保留值“15 / AUG / 2019 03:41 PM”,并且如果用戶希望僅顯示年份和月份,則將發生日期分組,例如“StartDate_Year” ”=“2019”和“StartDate_Month” =“AUG”,然后才開始執行樞軸引擎準備。
為解決此問題,我們建議將日期分割后的數據源傳遞到單獨的字段中,這樣可以避免源代碼中的拆分過程,并直接開始準備數據透視表引擎以顯示數據透視表。
作為參考,請查看示例,該示例顯示了GitHub上大型數據源中日期分組的替代解決方案。下表提供了遵循該技術時的性能改進數據。
結論
在此文章中,我們瀏覽了數據透視表控件的面向性能的功能和建議。您隨時可以下載我們的免費評估版,以查看我們所有的控制措施。
想要購買該產品正版授權,或了解更多產品信息請點擊
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自: