JavascriptとCSVを使い、データバインドで商品検索を行うページを立ち上げましたが、5.80MBのCSVを読込むのに60~90秒かかることがあります。
JavascriptでCSVデータを早く読込むための記述はどのようにしたら良いでしょうか?
「一行で IE の JavaScript を高速化する方法 - IT戦記」も
参考にしてテストしてみたのですが、Javascript自体を高速にするものであってデータ読み込みは高速にならず、悩んでいます。
なお、URLやサイト名などは「おしえてBP! 利用規約」で個人情報漏洩の恐れがあるため、質問文章中には記載出来ないことになっているので、割愛させて頂きます。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
データの転送を早くするには、いくつか方法が考えられます。
古典的(?)にはデータを圧縮する方法。
CSVのデータを何らかの方法で圧縮し、JavaScript内で展開するなど。
次に考えられるのは、Ajaxを用いて遅延読み込みする方法。
5.8Mものテキストデータをいっぺんに必要とすることがなかなか想像
できないですが、Flashなどをもちいて、Webページの部分的な更新を
検討したほうがいい気がします。
No.2
- 回答日時:
JavaScriptうんぬんは関係無しに、Webサイトで、5.8MBのファイルをダウンロードするのにどれだけ時間がかかるだろうか? どんなデータであれ、「それをダウンロードするのにかかる時間」より読み込みを短くすることはできない、ということはわかるのでは。
それだけのデータを、サーバから送ってもらわないといけないのだから、どんなテクニックを使おうが「送るのにかかる時間」より短くはできない。普通に考えれば、サーバ側にデータファイルから必要なデータだけをピックアップして送り返すようなプログラムを用意しておき、JavaScriptからは検索に必要な情報を送って、その結果だけを送り返してもらう、というように作るのが筋ではないかと。サーバ側は、PHPでもPerlでも何でもいいだろう。5.8MBとなると、それでも数秒(サーバ環境によっては十数秒?)はかかるような気がするけれど、まぁ我慢できない速度はないはず。
更にいえば、CSVで5.8MBというサイズを考えた時点で、普通はデータベースの導入を考えると思う。
No.1
- 回答日時:
テキストデータの5.8Mって結構なデータですよ
これをクライアント側の処理に任せるのは、いささか無責任かと。
データのフィルタや集計はサーバー側で行い、結果のみを
クライアントに表示する以外、抜本的な高速化はないでしょう。
一応、ボトルネックになりそうなところは・・・
・ダウンロードに時間がかかる
・CSVのファイルを可視化するための変換に時間がかかる
・変換されたデータを表示するのに時間がかかる
どれをとってもクライアント側の環境に大きく依存します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) PowerQueryに詳しい方教えてください(Office365) 1 2022/07/24 21:11
- Excel(エクセル) Excel Powerクエリーの質問、行数指定は可能でしょうか? 2 2022/08/22 12:54
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- JavaScript Q&Aの掲示板を作成していてヤフー知恵袋やgoo質問のように質問ごとにURLを生成したい 5 2023/08/04 01:22
- Excel(エクセル) csvに別のExcelの文章を差し込む 2 2023/04/01 16:06
- Excel(エクセル) CSVファイルがカンマ区切りにならない。対処法を教えていただきたいです。 仕事でSMS一斉送信ができ 2 2022/07/01 21:24
- その他(プログラミング・Web制作) Sikulix2.0.5(Jython2.7.3)でcsvを読込WEB検索条件にpasteで文字化け 1 2023/03/31 11:02
- Visual Basic(VBA) マクロを教えてください。 7 2023/06/01 19:47
- PHP htmlで複数の個数入力欄を表示させるには 1 2022/09/20 03:11
- Visual Basic(VBA) VBA 毎日取得するデータを順番に反映していく方法 6 2023/08/26 16:22
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
教えて下さい
-
VBA 空白セルを削除ではない方...
-
メモ帳(テキストデータ)をExc...
-
Excelのマクロでワードのテキス...
-
【エクセル】測定時間がバラバ...
-
PDOオブジェクトは使い回し可能?
-
Delphiからエクセルを設定
-
C# ソケット通信でデータ受信時...
-
エクセルで2つの時系列のデー...
-
javaでDBからデータを取ってき...
-
配列でデータが入っている要素...
-
LoadPictureしたイメージデータ...
-
この行は既に別のテーブルに属...
-
Accessで該当データにフラグを...
-
ポケコン PC-E650 の...
-
charからの型変換
-
0が含まれる幾何平均が「#NUM!」
-
[C言語] コメント文字列を無視...
-
家計簿プログラム
-
子ダイアログのデータを親ダイ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
教えて下さい
-
【エクセル】測定時間がバラバ...
-
配列でデータが入っている要素...
-
多量のSUMIF式を軽くしたい
-
エクセルで2つの時系列のデー...
-
Excelのマクロでワードのテキス...
-
メモ帳(テキストデータ)をExc...
-
VBA 空白セルを削除ではない方...
-
VBAを使ってOutlookメール本文...
-
Accessで該当データにフラグを...
-
合計3TBのデータのハッシュ値を...
-
シーケンサにパソコンからアク...
-
S9タイプからXタイプにデータ...
-
カンマからスラッシュに
-
VBA 毎日取得するデータを順番...
-
VBAでシートからコンボボックス...
-
ビットシフトについて
-
ユーザーフォームのテキストボ...
-
EXCELVBAでSQLserverからデータ...
-
特定のデータの抽出方法を教え...
おすすめ情報