API接続のトークンとエンドポイントを設定する dr.Clientメソッドのセッション管理について、ご質問させて頂きます。
dr.Client 実行後の 「APIと接続可能な状態」については、セッション管理がされておらず、dr.Client 実行後の返り値がメモリに保持されている限り、APIに接続可能な状態が続くという認識であってますでしょうか。
また、「APIと接続可能な状態」を破棄するメソッドはないという認識ですが、あってますでしょうか。
API を利用して、複数のインプットファイルに対するモデリングの実施に関するプログラムを作成しており、長時間のプログラムの実行を想定しているため、ご質問させて頂きました。
@hiwai さん
こんにちは、DataRobotの田中です。ご質問ありがとうございます。
> dr.Client 実行後の 「APIと接続可能な状態」については、セッション管理がされておらず、dr.Client 実行後の返り値がメモリに保持されている限り、APIに接続可能な状態が続くという認識であってますでしょうか。
dr.Client()はAPIトークンやendpointの情報をメモリに保存する処理を行います。SaaSやオンプレミスでご利用されているDataRobotのendpointへ接続するわけではございません。
> また、「APIと接続可能な状態」を破棄するメソッドはないという認識ですが、あってますでしょうか。
接続可能な状態というのはコネクションのことであっておりますでしょうか?
コネクションであれば、先に回答したとおりdr.Clientはコネクションを貼り続けるのではなく、通信に必要な情報をメモリにおいているだけですので接続可能な状態がそもそも存在しておりませんので、破棄するメソッドもございません。
> API を利用して、複数のインプットファイルに対するモデリングの実施に関するプログラムを作成しており、長時間のプログラムの実行を想定しているため、ご質問させて頂きました
たとえば、Pythonのプログラムが終了するなどでdr.Client()の情報が破棄されない限り、SDKを利用してモデリングや予測などが可能です。例えば、私の場合Jupyter notebookでdr.Client()でAPIトークン、エンドポイントの情報を格納してJupyter notebookをそのままにして数日後、dr.Client()を実行せずにSDKのメソッドを利用した経験はございます。
以上になりますがご質問の回答になっておりますでしょうか?
ご確認よろしくお願いいたします。
田中
早速のご返信ありがとうございました。
今後ともよろしくお願いいたします。