リモート分析実行ファイルの起動

AE登録には3つのタイプがある:
  • ローカルAE:ローカルAEの場合、NPSはAEプロセスを起動する。
  • リモート AE:リモート AE の場合、Netezzaシステムは AE プロセスを起動せず、特定のリモート AE 接続ポイントアドレスでリッスンしている、以前に実行されたインスタンスを探します。 リモート AE のキーとなるregister_ae の設定は--remote である。
  • リモートAE起動:第 3 の登録タイプは、リモート AE を起動するためのものである。 ローンチ登録は、ローカル登録とリモート登録の両方の要素を持っている。 ローカル登録と同様に、実行するプログラムを指定しなければならない。 リモート登録と同様に、接続ポイントの設定を指定する必要があります。 リモート・ローンチ登録のキーとなるregister_aeの設定は-launchである

AE を起動するための登録は、必ず引数シグネチャが bigint で、return TABLE(aeresult varchar(255))を持つテーブル関数でなければならない。

リモートAE起動の例

launch関数が呼ばれると、Linuxのデーモンと同様にリモートAEを起動する。 リモートAEはリクエストに対応できる。

$NZ_EXPORT_DIR/ae/utilities/bin/register_ae --language java --template udtf \
 --version 3 
--sig "apply_launch_v1(bigint)" 
--return "TABLE(aeresult varchar(255))" 
--define java_class=org.netezza.education.ApplyDriverV4 
--launch 
--rname apply 
--level 1

ホスト上で起動する:

SELECT aeresult FROM TABLE WITH FINAL(apply_launch_v1(0));

SPUで起動する:

SELECT aeresult FROM _v_dual_dslice, TABLE WITH FINAL(apply_launch_v1(dsid));

戻り値のカラムaeresultには、起動されたリモート AE に関する情報(リモート AE プロセス ID など)が含まれ、トラブルシューティングに役立ちます。 起動に失敗した場合、この関数は例外をスローする。

SELECT * FROM TABLE WITH FINAL(apply_launch_v1(0));
AERESULT 
---------------------------------------------------------------------------------
------------------
tran: 2704 session: 17646 DATA slc: 0 hardware: 0 machine: hostname process:
24320 thread: 24321

リモートAE起動機能の登録については、 分析実行可能ファイルの登録を参照してください。 実行中のリモート AE の制御については、次項「実行中のリモート AE の制御」を参照してください。