Skip to main content

This documentation is for an older version of this product. See the latest version of this content.Opens in a new tab

InterSystems IRIS 2022.1 の新機能

このページでは、InterSystems IRIS® の 2022.1 リリースの新機能と機能強化について説明します。このリリースは、拡張メンテナンス (EM) リリースです。これらの機能の一部は、2021.1 (前回の EM リリース) 以降の継続配布 (CD) リリースでも利用可能です。

開発者エクスペリエンスの強化

Kafka メッセージングのサポート

このリリースでは、Apache Kafka https://kafka.apache.org/Opens in a new tab がサポートされます。Apache Kafka はオープンソースの分散型イベント・ストリーミング・プラットフォームであり、高パフォーマンスのデータ・パイプライン、ストリーミング分析、データ統合、およびミッションクリティカル・アプリケーションに使用されます。Kafka を相互運用プロダクションで使用したり ("Kafka メッセージングの使用法" を参照)、プロダクションの外部で共通のメッセージング API を使用したりできます。

Embedded Python

InterSystems IRIS 2022.1 では、カーネルに完全に統合された Python が導入され、Python は ObjectScript と完全に対等の機能を持つようになりました。 クラス・メソッドの定義をはじめ、ObjectScript で可能な操作はほぼすべて Python でも実行できるようになりました。さらに、Python と ObjectScript を混在させることもでき、Python のコードを一切記述することなく Python ライブラリを ObjectScript から直接呼び出すことも可能です。Python では、数千もの高品質な事前構築済みライブラリを利用できるので、開発スピードを速め、メンテナンス・コストを削減できます。Python 開発者であれば、ObjectScript に精通していなくても、新しい言語を学ぶことなく開発を始めることができます。(初導入 2021.2)

あらゆる InterSystems IRIS オブジェクトを Embedded Python で作成してアクセスすることができます。

  • Embedded Python で実装したオブジェクトは、ObjectScript で実装したオブジェクトと同じように扱われます。

  • Embedded Python では、Python オブジェクトから ObjectScript オブジェクトにも、ObjectScript オブジェクトから Python オブジェクトにも完全に直接アクセスできます。

  • Embedded Python でグローバルに完全にアクセスすることができます。その際、グローバルは通常の Python オブジェクトとしてアクセスされます。InterSystems IRIS の永続化を使用してオブジェクトをデータベースに保存すると、明示的に削除しない限り、そのオブジェクトを今後のセッションで使用できます。

Embedded Python は InterSystems IRIS Python SDK を拡張します。この SDK には、クライアント・ライブラリと外部 Python ゲートウェイが含まれます。

Embedded Python の概要は、"組み込み Python の概要" を参照してください。

Note:

Embedded Python は、お使いのマシンにインストールされているどのバージョンの Python でも動作するように設計されています。

Microsoft Windows を実行している場合に、Python がまだインストールされていないときは、InterSystems IRIS インストール・キットによってインストールされます。

UNIX または Linux の多くのフレーバーには、Python がインストール済みの状態で付属します。Python をインストールする必要がある場合は、パッケージ・マネージャによってオペレーティング・システムに対して推奨されるバージョンを使用してください。以下に例を示します。

“Failed to load python” というエラーが表示される場合は、Python がインストールされていないか、予期されていないバージョンの Python がシステムにインストールされていることを意味します。上記のいずれかの方法で Python をインストールまたは再インストールしてください。

UNIX ベースのシステムでは、Python パッケージを pip3 コマンドでインストールできます。pip3 がまだインストールされていない場合は、システムのパッケージ・マネージャを使用して python3-pip パッケージをインストールしてください。

Python での相互運用プロダクション

このリリースでは、Production EXtension (PEX) フレームワークを使用して、相互運用プロダクションを Python で開発できます。このため、Python、Java、.NET、または ObjectScript でのプロダクションの開発を選択できます。異なる言語で開発された複数のプロダクション・コンポーネントを簡単に組み合わせることができます。他のプロダクション・コンポーネントが異なる言語で開発されていても、自身が精通した言語で開発できます。Python を PEX と共に使用すると、新しいプロトコル・アダプタの作成、複雑な分析や計算の実行、永続メッセージングや長期実行型のビジネス・プロセスの作成を行うことができます。詳細は、"外部言語によるプロダクションの開発" を参照してください。(初導入 2021.2)

Visual Studio Code ObjectScript Extension Pack の更新

Visual Studio Code ObjectScript Extension Pack は Visual Studio Code のダウンロード・ページOpens in a new tabから入手可能で、コードの開発を迅速化・容易化する以下の機能強化が含まれます。

  • ドキュメントの統合 — インライン・ドキュメントにカーソルを合わせて、クラス階層を参照したり、カスタム・クラスのドキュメントをプレビューしたりできます。

  • サーバ側のソースの改善 — さまざまなクライアント側の Web アプリケーション・ワークフローの検索とサポート。

  • デバッグ — オブジェクトのプロパティの検査と信頼性の向上。

この Extension Pack には、ObjectScript 拡張機能と Language Server 拡張機能が含まれます。詳細は、VSCode ObjectScript Extension のドキュメント (https://intersystems-community.github.io/vscode-objectscript/)Opens in a new tab を参照してください。(初導入 2021.2)

相互運用プロダクション内での最小限のコードでの SQL クエリの実行

このリリースでは、新しい SQL ビジネス・サービスとビジネス・オペレーションにより、SQL クエリをプロダクション内で簡単に実行できます。詳細は、"SQL ビジネス・サービスの使用法" および "SQL ビジネス・オペレーションの使用法" を参照してください。(初導入 2021.2)

分析と AI の強化

SQL ローダ

SQL LOAD DATA コマンドは、データを CSV ファイルまたは JDBC ソースから SQL テーブルに効率的にロードします。これにより、十分に検証されたデータで簡単にテーブルを生成することができます。INSERT 文と同じように COLUMNS 節および VALUES 節でコマンドを調整したり、IntegratedML で使用する場合と同じように USING 節で既定の動作を上書きしたりできます。詳細は、"SQL リファレンス" の "LOAD DATA" を参照してください。(初導入 2021.2)

Adaptive Analytics の機能強化

このリリースでは、Adaptive Analytics に以下の 2 つの機能が追加されました。

  • Adaptive Analytics のクライアントとしての InterSystems Reports の検証 — 顧客が InterSystems Reports を使用して、PowerBI、Tableau などのビジネス・インテリジェンス・ツールと共有されているデータ・モデルと同じデータ・モデルでレポートを提供できるようになりました。(初導入 2021.2)

  • InterSystems IRIS Business Intelligence (BI) キューブのインポート — InterSystems IRIS BI のキューブ定義をエクスポートし、Adaptive Analytics の仮想キューブとしてインポートできます。これには注意事項があります。キューブ間のリレーションシップや、データ・コネクタに基づくキューブなど、エクスポートできないものがあります。詳細は、Adaptive Analytics のドキュメントを参照してください。(初導入 2021.2)

クラウドと操作の向上

クラウド・コネクタ

このリリースにはクラウド・コネクタが含まれており、これによって Amazon Web Services 内で InterSystems IRIS アプリケーションを簡単に管理したり、コネクタを使用してサービスに簡単にアクセスしたりできます。このリリースには以下のアダプタが含まれます。

  • S3 (Amazon Simple Storage Service) 用の受信アダプタと送信アダプタ (初導入 2021.2)

  • Cloudwatch (Amazon の監視サービス) 用の送信アダプタ (初導入 2021.2)

  • SNS (Amazon Simple Notification Service) によるメッセージング用の送信アダプタ (初導入 2021.2)

IKO の機能強化

このリリースでは、以下の新しい InterSystems Kubernetes Operator (IKO) 機能により、Kubernetes 内での InterSystems IRIS の導入と管理が容易になります。

  • IKO を使用すると、InterSystems System Alerting and Monitoring (SAM) および InterSystems API Manager (IAM) を InterSystems IRIS クラスタで導入・管理できます。これにより、システムの管理と拡張が容易になります。(初導入 2021.2)

  • IKO では、InterSystems IRIS および InterSystems Web ゲートウェイのロック・ダウン・コンテナを導入できます。(初導入 2021.2)

  • IKO では、InterSystems Web ゲートウェイ・コンテナを Nginx および Apache の Web サーバと共に導入できます。(初導入 2021.2)

  • IKO では、導入環境に一時ボリュームと永続ボリュームを含めることができます。(初導入 2021.2)

スピード、スケール、セキュリティの強化

オンラインでのシャードの再分散

InterSystems IRIS のシャーディングは、データとその関連ワークロードを複数のノードに分散するものです。データが均等に分散されるので、分析クエリ・ワークロードにおいて線形に近いスケーラビリティが実現します。したがって、データ量やワークロードが増加した場合は、データ・ノードを追加してパフォーマンス目標を達成できます。ノードを追加した後、再分散操作を使用して、利用可能なノードすべてに古いデータを再分散できます。これにより、シャード・クラスタの弾力性が強化されます。このリリースから、この再分散はオンラインで実行されます。つまり、再分散の実行中にユーザは引き続きデータのクエリや更新を行うことができます。(初導入 2021.2)

適応型の SQL オプティマイザ

InterSystems IRIS SQL オプティマイザは、テーブル統計を利用して、ユーザが送信した文それぞれに最適なクエリ・プランを導出します。また、効率的なクエリ・キャッシュを使用して、生成されたコードを再利用します。このような文にパラメータが含まれる場合、実行時に送信される値により、代替クエリ・プランを使用して実行を高速化する機会が得られることがあります。このリリースで導入された新しい実行時プラン選択 (RTPC) インフラストラクチャにより、InterSystems IRIS SQL はこのような機会を確実に効率的に利用します。RTPC は、異常値が使われているかどうかスキャンし、より詳細なテーブル統計に基づいて値域条件の選択性を効率的に予想します。この結果、現実のデータセットの多くでクエリ・プランの適応性が向上し、実行時間と I/O が大幅に削減されます。(初導入 2021.2)

さらに InterSystems IRIS は、フル・スキャンまたは行ベースのスキャンではなく、ブロック・レベルのサンプリングを使用して、オプティマイザが使用するテーブル統計を収集するようになりました。この効率的なアルゴリズムにより、数十億行が含まれる最大級のテーブルでも、数秒で統計を収集できます (例えば、TUNE TABLE コマンドを使用)。また、InterSystems IRIS SQL は、適切なクエリ・プランを保証するものがテーブルにない場合、テーブル統計をその場で収集するようになります。(初導入 2021.2)

ストレージの節約

このリリースでは、ストリームとジャーナルの圧縮により、InterSystems IRIS 導入環境に必要なストレージを大幅に削減できます。

  • ストリームの圧縮 – グローバル・ベースのすべてのストリーム・クラスに対して既定でオンになりました。アプリケーションの変更は必要ありません。既存のデータは読み取り可能なまま残り、次回書き込み時に圧縮されます。現実のデータで試したところ、圧縮率は、短いテキストでは 30%、XML などのドキュメント・タイプでは 80% 以上と、幅があることがわかりました。(初導入 2021.2)

  • ジャーナルの圧縮 — ジャーナルが切り替わるとすぐに、非アクティブなジャーナル・ファイルを圧縮します。ロールバックとロール・フォワードは圧縮形式から直接実行されます。これにより、InterSystems IRIS のデータ整合性戦略において不可欠なこの部分のストレージ要件が大きく減ります。詳細は、"ジャーナリングの最善の使用方法" を参照してください。(初導入 2021.2)

TLS 1.3 のサポート (OpenSSL 1.1.1)

このバージョンでは、InterSystems IRIS に OpenSSL 1.1.1 のサポートが組み込まれ、TLS 1.3 が完全にサポートされます。TLS 1.3 では、暗号化の遅延が半分に短縮されるなど、ユーザは特にパフォーマンスの高速化を体感できます。これは、ハンドシェイク・プロセスからラウンドトリップ全体を排除することによって実現しています。(初導入 2021.2)

InterSystems IRIS 2021.2 より、UNIX では OpenSSL ライブラリを出荷しなくなり、この機能はオペレーティング・システムに依存して提供するようになります。この変更には利点が 1 つあり、OpenSSL ライブラリを更新する場合に InterSystems IRIS を新規インストールする必要がなくなり、通常のオペレーティング・システムの更新で実行できるようになります。 この新しいアプローチの詳細は、"自身の InterSystems IRIS のインスタンスでサポートされている TLS のバージョン" を参照してください。インターシステムズ製品は、オペレーティング・システムで提供される OpenSSL ライブラリへのアクセスが必要になるため、インストール時およびインスタンスの起動時にチェックを実行するようになります。この呼び出しは手動で実行することもできます。詳細は、"必要な依存関係のインストール" を参照してください。

OpenSSL ライブラリの出荷停止という変更を受けて、キットの調整も必要になりました。すべてのキットは OpenSSL のメジャー・バージョンに固有です (OpenSSL 1.1.1 はメジャー・バージョンであり、マイナー・バージョンは OpenSSL 1.1.1f のようにメジャー・バージョンに続く文字で示されます)。

Windows では、このキットで OpenSSL ライブラリはインストールされません。

Note:

UNIX システムに OpenSSL の正しいバージョンがインストールされていない場合、インストールは正常に完了しません。OpenSSL をインストールしてから、InterSystems IRIS を再インストールする必要があります。例えば、macOS では、Homebrew を使用して OpenSSL をインストールできます。https://formulae.brew.sh/formula/openssl@1.1Opens in a new tab を参照してください。

新しい ^TRACE ユーティリティ

このリリースでは、1 つ以上のプロセスからの未加工のイベントをトレースする新しいツールが導入されます。%SYS.MONLBL や PERFMON などの既存のユーティリティもほぼ同じイベント・タイプを追跡しますが、こうしたユーティリティは、特定のタイプの分析に合わせた形式のレポートを即座に生成します。新しい ^TRACE ツールでは、これらのイベントをより汎用的なファイル形式でキャプチャし、キャプチャした情報を、コマンド行インタフェースまたは API を介して対話形式で操作および要約できます。サポートされるイベント・タイプには、グローバル SET と KILL、物理書き込み、ネットワーク要求、キャッシュのヒットと読み取り、さまざまなジャーナル・イベントなどがありますが、これらに限定されません。これらのイベントでキャプチャされる情報としては、ルーチン行とコール・スタックに加え、完全なグローバル参照 (該当する場合) もあります。このため、1 つのインタフェースで幅広いパフォーマンス分析タスクを実行することができます。(初導入 2021.2)

その他の機能強化と効率の向上

各リリースで、インターシステムズは多くの効果的な改善とマイナーな機能強化を行っています。このリリースには以下が含まれます。

  • 一般的な堅牢性とミラー・フェイルオーバー時の復元可能性を確保するために、DataMove が機能強化されました。

  • InterSystems IRIS を IntegratedML と共に、または IntegratedML なしでインストールするための別個のキットが提供され、インストール・プロセスがより効率的になりました。

  • JDBC、.NET クライアント、Python、IRISNative などの外部クライアントでの Compact Double のサポート。(初導入 2021.2)

  • このリリースでは、セキュリティ・テーブルに埋め込みのバージョン番号が含まれるようになったため、実行可能なインポートに、より詳細にアクセスできます。セキュリティ・テーブルをバージョン 2021.1 からエクスポートして、このバージョンにインポートできます。詳細は、"^SECURITY" を参照してください。(初導入 2021.2)

  • このリリースにより、Log4j ライブラリがバージョン 2.17.0 に更新されます。(初導入 2021.2)

  • このリリースにより、Node.js ライブラリがバージョン 14 に更新されます。(初導入 2021.2)

FeedbackOpens in a new tab