MENU

米IBMが、IBM iとAIの統合で取り組む5つ技術 ~「AI with IBM i アーキテクト」ジェシー・ゴジンスキー氏がブログで紹介

IBM iのオープンソースのビジネスアーキテクトを長らく務めてきたジェシー・ゴジンスキー氏が「AI with IBM iのアーキテクト」としてブログを公開している。AI with IBM i アーキテクトのタイトルは「15カ月ほど前」からだという。

ゴジンスキー氏はその中で、「IBM iプラットフォームはこの1年、AIとの統合において大きな前進を遂げました」として、5つの成果を挙げている。米IBM i開発陣の動きがうかがえる興味深い情報なので紹介してみよう。次の5つの成果である。

❶ watsonx.aiやwatsonx.dataなどとのシームレスな統合を実現する新しいコネクターの開発
https://www.ibm.com/products/watsonx-ai
https://www.ibm.com/products/watsonx-data

❷ Db2 for iデータを活用するための新しい接続ツール「Mapepire」(マパピー)の開発
https://mapepire-ibmi.github.io/

➌ watsonx Assistantや他のチャットボットとIBM iを統合するための機能の開発
https://www.ibm.com/products/watsonx-assistant

➍ クラウドやオンプレミス上のAIに、SQLやRPGからアクセスできるSDKの開発
https://ibm.github.io/AI-SDK-Db2-IBMi/

❺ IBM iのイベントを一元的に監視・可視化できる「Manzan」(マンザン)の開発
https://theprez.github.io/Manzan/#/

❷のMapepireはOBDCやJDBCに似たデータベース接続ツールだが、Mapepire開発の1人である米IBMのリアム・アラン(Liam Allan)氏は、「今なぜ新しいDB接続ツールが必要なのか」を次のように説明している。

「通常、IBM iではデータベース/サーバークライアントが非常に重い処理を担っている。たとえば、JTOpen(IBM Toolbox for Java)やODBCクライアントには CCSIDを扱うためのコードが組み込まれており、文字列カラムを特定の文字列に変換している。その結果、クライアントのコードが大きくなるだけでなく、複雑さも増す。

私がODBCやJTOpenにずっと感じていたもう1つの問題は、サーバーとクライアント間で使用されるプロトコルが公開されていない(少なくとも十分に公開されていない)ことだった。そのため、新しい言語でクライアントを作る場合、既存の仕組みをリバースエンジニアリングするしかなく、大変な思いをした。

MapepireはODBCやJTOpenと異なる、まったく新しいアプローチを取っている。Mapepireのほぼすべての部分がオープンソースで、これにはサーバー、プロトコル、クライアントが含まれる。さらに、エンコーディングやパスワードレベルなどをサーバー側で処理するようにしているため、クライアントは軽量になる。これにより、より多くの言語で新しいアプリケーションを簡単に開発でき、より多くのプラットフォームで実行可能になる。

さらにもう1つのメリットは、yumや各言語の一般的なリポジトリ(Node.jsのnpm、Pythonのpypi、JavaのMavenなど)を使用する点。これにより、以前よりも早くアップデートや修正を提供できる。

MapepireをJDBC、ODBCと比較したものが下図である。

  JDBC ODBC Mapepire
単一のポートだけが必要    
データは常に暗号化される    
システム出口点経由で管理可能
強化された CCSID サポート  
watsonx.aiのJupyterノートブック上で実行可能    
軽量コンテナ上で実行可能  
複数の言語を直接サポート    

IBM i上のイベントを監視する方法は数多く存在する(ジョブログ、メッセージキューなどの解析)。また監視したイベントデータにアクセスするための方法も数多く存在する(CLコマンド、API、SQLベースのサービス、Navigator for i、サードベンダーツールなど)。ただし、それらの方法があまりにも多種類に及ぶため、その運用は煩雑になることが多い。

Manzanは、IBM i上で起きているさまざまな種類のイベントを一元的に監視し可視化するためのオープンソースのツールである。IBM i上のイベントをユーザーアプリケーションや外部リソースなどに公開するためのゲートウェイとして機能する。その概要は下図のとおりである。

IBM iのデータキューやDb2テーブルから取得したデータは、現在のところ、以下へ送信可能である。

・ActiveMQ
・AWS Simple Email Service (SES)
・AWS Simple Notification System (SNS)
・Elasticsearch
・Email (SMTP/SMTPS)
・FluentD
・Google Drive
・Google Pub/Sub
・Grafana Loki
・HTTP endpoints (REST, etc)
・HTTPS endpoints (REST, etc)
・Internet of Things (mqtt)
・Kafka
・Mezmo
・Microsoft Teams
・PagerDuty
・Sentry
・Slack
・SMS (via Twilio)
・Splunk

ジェシー・ゴジンスキー氏のブログ「Welcome to the ‘AI With IBM i’ Blog!」
https://techchannel.com/artificial-intelligence/ai-with-ibm-i/

[i Magazine・IS magazine]

新着