4D v16SPベースの読み込み (例題) |
||
|
4D v16
SPベースの読み込み (例題)
SPベースの読み込み (例題)
次の例は、クライアント/サーバアーキテクチャにおいて、データの読み込みを飛躍的に高速化する方法を示しています。Regular Importメソッドでは、クライアント側でIMPORT TEXTコマンドを使用して、レコードの読み込みに要する時間を調べています: ` Regular Importプロジェクトメソッド 通常のデータ読み込みでは、4Dはテキストファイルを解析した後、各レコードに対して新しいレコードを作成し、読み込んだデータをフィールドに入力し、レコードをサーバマシンに送信してデータベースに追加します。そのため、大量の要求がネットワーク上でやり取りされることになります。この操作を最適化する方法の1 つとして、ストアドプロシージャを使用し、サーバマシンでローカルにこの作業を実行するやり方があります。クライアントマシンではドキュメントファイルをBLOB にロードした後、ストアドプロシージャを開始し、引数としてこのBLOB を渡します。ストアドプロシージャではこのBLOB をサーバマシンのディスク内のドキュメントファイルに保存し、このドキュメントファイルをローカルに読み込みます。ネットワーク要求がほとんどなくなるため、データ読み込みはローカルに (ローカルバージョンの4Dと比較可能な速度で) 処理されます。 次に示すのは、CLIENT IMPORTプロジェクトメソッドです。このプロジェクトメソッドはクライアントマシンで実行され、後述のSERVER IMPORTストアドプロシージャを呼び出します: ` CLIENT IMPORT Project Method 以下はストアドプロシージャとして実行されるSERVER IMPORTプロジェクトメソッドです: ` SERVER IMPORT Project Method Note: On Windows プロジェクトメソッドは4D Language ReferenceマニュアルのC_TEXTシステムドキュメントで紹介しています。 これら2 つのプロジェクトメソッドがデータベースに実装された後で、例えば次のように、“ストアドプロシージャベース”のデータ読み込みを実行できます: CLIENT IMPORT(->[Table1];"Import") ベンチマークテストを何度か行うと、このメソッドを使用した場合には、通常のデータ読み込みの場合と比べて最高で60倍も速くレコードを読み込めることがわかります。
参照
|
プロパティ
プロダクト: 4D
履歴
ARTICLE USAGE
4D Server ( 4D v16) |