大量(2万行)エクセルデータの取り扱いについて
- このフォーラムに新しいトピックを立てることはできません
- このフォーラムではゲスト投稿が禁止されています
hitachijoho
投稿数: 53
![常連 常連](../../uploads/rank3dbf8e9e7d88d.gif)
いつもお世話になっております。
今、エクセルファイルからMSSQLSERVERへのデータ移行ツールをJBOLTを使って作成しています。
一部のエクセルファイルが2万行のデータを持ってますが、
この場合、JBOLTで作成した移行ツールは半時間が経っても、反応がありません。
JBOLTでは大量(2万行)エクセルファイルデータの取り扱いについては、どのようにやりますでしょうか?
※エクセルファイルのデータを減らして300行ぐらいだったら、旨く導入されました。
お手数ですが、ご教示のほど、よろしくお願い致します。
今、エクセルファイルからMSSQLSERVERへのデータ移行ツールをJBOLTを使って作成しています。
一部のエクセルファイルが2万行のデータを持ってますが、
この場合、JBOLTで作成した移行ツールは半時間が経っても、反応がありません。
JBOLTでは大量(2万行)エクセルファイルデータの取り扱いについては、どのようにやりますでしょうか?
※エクセルファイルのデータを減らして300行ぐらいだったら、旨く導入されました。
お手数ですが、ご教示のほど、よろしくお願い致します。
投票数:0
平均点:0.00
Jiro123
投稿数: 271
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
2万行のデータを扱う際のロジック(メソッド)は何をどのように使っていますか。
経験的に、Vector関係のメソッドは、大量データを扱うととても遅くて、実運用レベルでの使用は厳しいと判断しています。
私のところでは、Cellメソッドで、1行文の全セルを変数にセットしてから、行単位でInsertを行うようにしています。
CellメソッドのGetValueアクションで、行パラメータには、行を示す変数(行変数)をセットしておきます。
そして、フローのステップにて、Gotoコマンドを使って、行ループをフロー内で実装して、繰り返し処理を実現しています。
Gotoコマンドで上位のステップに戻して、そこで、行変数をインクリメントします。
2万も行があるならば、恐らくこちらの実装方法のが速いと思います。
経験的に、Vector関係のメソッドは、大量データを扱うととても遅くて、実運用レベルでの使用は厳しいと判断しています。
私のところでは、Cellメソッドで、1行文の全セルを変数にセットしてから、行単位でInsertを行うようにしています。
CellメソッドのGetValueアクションで、行パラメータには、行を示す変数(行変数)をセットしておきます。
そして、フローのステップにて、Gotoコマンドを使って、行ループをフロー内で実装して、繰り返し処理を実現しています。
Gotoコマンドで上位のステップに戻して、そこで、行変数をインクリメントします。
2万も行があるならば、恐らくこちらの実装方法のが速いと思います。
投票数:0
平均点:0.00
hitachijoho
投稿数: 53
![常連 常連](../../uploads/rank3dbf8e9e7d88d.gif)
Jiro123さま
ご回答、ありがとうございました。
こちらの現在の実装方法はJiro123さまが仰った実装方法と同じですが、お手数ですが、Jiro123さまの方は2万行ぐらいのデータを作成して頂いてこの現象は再現できるかどうかを一度ご確認をお願いできますでしょうか?
以上、よろしくお願いします。
ご回答、ありがとうございました。
こちらの現在の実装方法はJiro123さまが仰った実装方法と同じですが、お手数ですが、Jiro123さまの方は2万行ぐらいのデータを作成して頂いてこの現象は再現できるかどうかを一度ご確認をお願いできますでしょうか?
以上、よろしくお願いします。
投票数:0
平均点:0.00
Jiro123
投稿数: 271
![長老 長老](../../uploads/rank3dbf8eb1a72e7.gif)
すみません。
今は、ちょっとそこまでの余裕はないです。
今は、ちょっとそこまでの余裕はないです。
投票数:0
平均点:0.00
jBOLTer
投稿数: 82
![一人前 一人前](../../uploads/rank3dbf8ea81e642.gif)
こんにちは。
Jiro123さんのやり方で、2万1千件作ってみましたが、問題なくできました。
>この場合、JBOLTで作成した移行ツールは半時間が経っても、反応がありません。
反応がないというのは、1件もDBテーブルに作成されないということですか?フローが動いている間、SQLServerのテーブルにはどんどんレコードは登録されているはずです。反応がないとすると、それは何か別の問題ではないでしょうか。
Jiro123さんのやり方で、2万1千件作ってみましたが、問題なくできました。
>この場合、JBOLTで作成した移行ツールは半時間が経っても、反応がありません。
反応がないというのは、1件もDBテーブルに作成されないということですか?フローが動いている間、SQLServerのテーブルにはどんどんレコードは登録されているはずです。反応がないとすると、それは何か別の問題ではないでしょうか。
投票数:0
平均点:0.00
hitachijoho
投稿数: 53
![常連 常連](../../uploads/rank3dbf8e9e7d88d.gif)
jBOLTerさま
ご確認、誠にありがとうございました。
>反応がないというのは、1件もDBテーブルに作成されないということですか?
⇒はい、1件もDBテーブルに作成されないんです。
>反応がないとすると、それは何か別の問題ではないでしょうか。
⇒実ですね、此方の処理流れはDBテーブルにinsertする前に、
エクセルファイルに何件データがあるかという計算処理もありますが、これから、Logicを簡単にしてからやって見ます。
ご対応、ありがとうございました。
ご確認、誠にありがとうございました。
>反応がないというのは、1件もDBテーブルに作成されないということですか?
⇒はい、1件もDBテーブルに作成されないんです。
>反応がないとすると、それは何か別の問題ではないでしょうか。
⇒実ですね、此方の処理流れはDBテーブルにinsertする前に、
エクセルファイルに何件データがあるかという計算処理もありますが、これから、Logicを簡単にしてからやって見ます。
ご対応、ありがとうございました。
投票数:0
平均点:0.00
hitachijoho
投稿数: 53
![常連 常連](../../uploads/rank3dbf8e9e7d88d.gif)
>エクセルファイルに何件データがあるかという計算処理もありま>すが、これから、Logicを簡単にしてからやって見ます。
⇒今、エクセルファイルに何件データがあるかという計算処理を省略してから、やってみた所、フローが動いている間、SQLServerのテーブルにはどんどんレコードは登録されていますので、これから、エクセルファイルに何件データがあるかという計算処理を改善致します。
⇒今、エクセルファイルに何件データがあるかという計算処理を省略してから、やってみた所、フローが動いている間、SQLServerのテーブルにはどんどんレコードは登録されていますので、これから、エクセルファイルに何件データがあるかという計算処理を改善致します。
投票数:0
平均点:0.00
hitachijoho
投稿数: 53
![常連 常連](../../uploads/rank3dbf8e9e7d88d.gif)
本件、解決されましたので、ご連絡します。
ありがとうございました。
ありがとうございました。
投票数:0
平均点:0.00