2010-03-22 42 views
1

我有一個相當大量的數據(100 MB左右),我想呈現給用戶。該數據的格式是類似於以下...用於過濾/排序大量數據的插件或模塊?

日期                           位置           日誌文件                   鏈接
2010年3月21日     聖地亞哥      some_log.txt       http://somelink.com

我的問題是,我想有用戶過濾掉一些好的/華而不實的方式信息。不幸的是,因爲有這麼多,jQuery Table Filter插件不起作用(崩潰瀏覽器)。我想知道是否有一個很好的解決方案,或者如果我只需要在服務器端進行過濾併爲客戶端提供平淡的下拉菜單/選擇框接口即可。

+0

假設每一行是100字節長(你的有60),將會有100萬。桌子的行。你確定一個用戶一次都需要它們嗎? – user187291 2010-03-22 21:18:00

+0

可能不是,但我沒有用例,也沒有辦法知道用戶將要或不需要用來比較/對比不同的鏈接(我顯示的表格大大簡化了)。 – 2010-03-22 21:24:56

回答

1

100MB非常大。您不希望在一次請求中將所有數據一次傳輸到客戶端,然後在那裏執行分頁/過濾/排序操作。這需要很長時間才能完成,它會吃掉客戶的所有記憶。而是在每個使用SQL功能的請求上完全在服務器端完成。 SQL可以比Java/JavaScript更高效。我在here之前發佈了一個類似的答案,其中包含更多技術細節和代碼示例。

+0

這是在內部網上,所以100MB可能看起來很多,但它下載速度很快。真正的問題是瀏覽器一次處理(顯然)是有點太多了。另一個問題是這些信息並不駐留在數據庫中!否則,我將能夠很好地使用你的SQL解決方案。 – 2010-03-22 21:40:44

+0

然後我會考慮將其存儲在具有SQL能力的數據存儲中。這幾乎是在這類工作中表現出色的唯一。 – BalusC 2010-03-22 21:50:25

0

使用分頁。 (也許有點ajax)。

0

如果瀏覽器爲其DB API安裝了Google Gears或者支持HTML5的Web SQL Database(例如Opera 10.5+),則可以將所有數據導入到客戶端SQL數據庫並使用SQL執行排序+分頁查詢。