コミュニティの皆さん、こんにちは。
私が作成した OpenAPI-Suite という最新のパッケージをご紹介します。これは、OpenAPI 仕様バージョン 3.0 から ObjectScript コードを生成するツールセットです。 簡単に言うと、これらのパッケージでは以下を行うことができます。
InterSystems IRISは総合データプラットフォームです
InterSystems IRISは、企業にとって最も価値のある資産(データ)の取得、共有、理解、そしてデータに基づく行動のために必要なすべてのものを提供します。
完全なプラットフォームである InterSystems IRIS は、複数の開発技術を統合する必要がありません。より少ないコードで開発が可能で、そのアプリケーションは、システムリソース、メンテナンスなども少なくて済みます。
コミュニティの皆さん、こんにちは。
私が作成した OpenAPI-Suite という最新のパッケージをご紹介します。これは、OpenAPI 仕様バージョン 3.0 から ObjectScript コードを生成するツールセットです。 簡単に言うと、これらのパッケージでは以下を行うことができます。
この記事では、2023年3月1日~31日の期間に開催された「技術文書ライティングコンテスト:InterSystems IRISチュートリアル」に応募された24作品の中から、Open Exchangeに公開されている sqlalchemy-iris を利用してPythonとSQLでIRISのデータを操作する方法を投稿された Heloisa Paivaさんの記事をご紹介します。
Open Exchangeは、世界各地にいる開発者コミュニティメンバーが開発したインターシステムズ製品で利用できるサンプルアプリが登録されているページで、自由にダウンロードしてご利用いただけます。
Heloisaさんの記事のように公開されている Open Exchange の利用例があると、「ちょっと使ってみたいな・・」と思われているメンバーの方への情報共有ができてとても有用な記事になると思います!丁度日本で初開催の「技術文書ライティングコンテスト」開催中ですので、ぜひ使用例や感想など、投稿してみてください!💪
ご好評をいただいておりますインターシステムズ主催 開発者向けウェビナーを次回は以下の通り開催いたします。
日時:2023年10月18日(水)13時~13時30分
タイトル:「クラウド上のIRIS - サイジングのベストプラクティスをご紹介」(事前登録制・参加費無料)
ご登録はこちらから
【概要】
IRISのバージョンアップやCachéからのマイグレーションを機に環境をオンプレミスからAWSやAzure等のパブリッククラウドに移行する事例が増えています。新規導入時にクラウドファーストで検討されるお客様も珍しくありません。始めにクラウドの基本的な特徴、メリットと制限を簡単にまとめ、後半はIRISをクラウド上に導入する際に考慮すべきポイントおよびサイジングのベストプラクティスを中心にお話します。
【こんな方にお勧め】
ご多用中とは存じますが、この機会に是非ご参加ください!
InterSystems は、IRIS 2023.3 から InterSystems IRIS NLP (自然言語処理, 旧 iKnow) の開発を中止し、非推奨とすることを決定しました。 InterSystems は本技術を利用しているお客様のサポートを続けますが、本技術を開発するきっかけとなったコアテキスト検索のユースケース以外、新規プロジェクトでの利用を推奨しません。 自然言語を含むその他のユースケースでは、InterSystems も特定のアプリケーションに関連して研究している、大規模言語モデルにもとづく新しい技術を利用することで、より良い対応が可能となっています。
InterSystems IRIS NLP のご利用に関するご質問は、弊社担当アカウントチームにお問合せいただくか、 @Benjamin De Boe までご連絡ください。
また今後、Python モジュールとしてパッケージ化されたコア iKnow エンジンを オープンソース版 として公開します。こちらを InterSystems IRIS とは独立して引き続きご利用いただけます。
iFind と呼ばれる InterSystems IRIS SQL Search は、一部機能が影響をうけます。
IRISアップグレードやインストールがうまくいかない場合、初めに以下の4点をご確認ください。
★1について
インストーラーのダウンロードに問題があったなどで、インストーラー自体に問題があり、インストールできないというケースがあります。
その場合は、インストーラーのハッシュ値(md5 checksum)を比較してファイルの同一性を確認するか、再ダウンロードしてインストールをお試しください。
インストーラーのハッシュ値は、WRCDirectのダウンロードページ にて対象の製品を選択してご確認いただけます。
例:
お持ちのインストーラーのハッシュ値は、以下のように確認します(Windowsの場合)。
c:\downloads\kits>CertUtil -hashfile IRIS-2023.1.1.380.0-win_x64.exe MD5
MD5 ハッシュ (対象 IRIS-2023.1.1.380.0-win_x64.exe):
開発者の皆さん、こんにちは!
このお知らせ📣では、第1回 InterSystems Japan 技術文書ライティングコンテスト の応募記事の探し方をご紹介します。
コンテストにご応募いただいた記事は、こちらのページ👉https://jp.community.intersystems.com/contests/1 からご覧いただけます。
または、コミュニティのページ上部にあるメニューからも同じページに移動できます。
.png)
または、「第1回 InterSystems Japan 技術文書ライティングコンテスト 開催!」の記事内リンク(赤枠部分)からも移動できます。
コミュニティのアカウントをお持ちの方なら誰でも「いいね」を押して投票することができます。
🔥これだ!🔥と思う作品に「いいね」してみてください!
.png)
主流となっているソフトウェア開発手法では、必ずテスト専用の項目が用意されています。 これは、デリバリーの品質を持続的に達成する上では欠かせないアプローチです。
テストには、以下の 2 種類があります。
InterSystems IRIS® と InterSystems IRIS for HealthTM 2023.3 の開発者プレビュープログラムの一環として、最初の開発者プレビューを公開いたします
今後のプレビューリリースは、2週間ごとの発表を予定しており、新機能が完成次第、プレビュー版に追加されていきます。
みなさまとよりよい製品にできるよう、ぜひ開発者コミュニティにみなさまのフィードバックをお寄せください。ドキュメントは以下のリンクからご覧いただけます。本バージョンが正式公開 (General Availability - GA) されるまで、数週間かけてドキュメントは更新される予定です。
2023.3 では、HL7® FHIR® version R5 のサポートや IBM FHIR® Validator のインテグレーション といった注目の新機能が含まれる予定です。 また ObjectScript の実行パフォーマンス向上もはかられる予定です。なお、これらの新機能は最終的に公式リリースに含まれる見込みですが、変更となる可能性もございます。
開発者の皆さん、こんにちは!
ObjectScriptのコード実行中にエラーが発生した場合 "<UNDEFINED>HelloWorld+2^Simple.Demo.1 *name" のようなエラーメッセージが表示されます。
エラーメッセージの読み方については、ObjectScriptクックブックの「ObjectScriptでエラーが発生したら」のエラーメッセージの読み方 をご参照ください。
エラー行の特定を行う際、VSCodeのコマンドパレットを利用すると簡単に対象行にジャンプできますので、以下、方法をご紹介します。
1)VSCodeのView→Command Palette... を開きます。
2) 「ObjectScript:Open Error Location...」を選択します(初回は表示項目に登場しないため > の後ろに ObjectScript と入力すると表示されます)。
3) テキストボックスが表示されるので、エラーメッセージの出力情報の中から ラベル名+行数^生成ルーチン名 をコピーして貼り付け、Enterをクリックします。
※スタジオにも同様の機能がありますが、VSCodeの場合対象となるコード(生成コードの元コード)をVSCode上で表示していなくても対象となる生成ルーチンを開きエラー行をポイントしてくれます。
インターシステムズは、接続性に関する 2 つの問題を修正しました。これらの不具合とその修正はそれぞれ独立しています。
この警告は、2つの問題の修正を含む ポイントリリース があるため、両方に対処する内容になります。
どちらの問題も、以下の製品のバージョン2019.1.4と2020.1.4のみに影響します:
HealthShare Unified Care Record®、Information Exchange、Health Insight、Patient Index、Provider Directory、Care Community、Personal Community、またはHealthcare Action Engine については、いずれのリリースバージョンにも影響はありません。
1つ目の問題は、ログインに失敗した際に復帰するまでに60秒間ハングするという問題です。今回の修正で、ハングする時間が2秒に短縮され、通知メッセージも改善されました。この修正は DP-421918 です。
2 つ目の問題は、/csp/sys/oauth2/OAuth2.JWTServer.
インターシステムズは、いくつかの問題を修正するためにリリースを再作成する必要がある場合があります。このプロセスにより、「ポイントリリース」と呼ばれる新しいキットが生成されます。
ポイントリリースは、メンテナンスリリースやメジャーリリースとは異なります。 これは緊急の問題に対して、迅速かつ的確に対応するために行われます。
InterSystems Data Platform 製品は以下のリリース規則に従います:
<インターシステムズ製品> <年>.<メジャー>.<メンテナンス>.<ビルド#>.<ポイント>
例:InterSystems IRIS 2022.1.4.204.1
ポイントリリースの確認方法は簡単で、製品キットの下1桁が0でなければ、ポイントリリースを使用していることになります。
インターシステムズでは、ポイントリリースがアナウンスされるたびに、そのリリースをお客様にお知らせし、そのリリー スで解決される問題を説明します。 アナウンスは、開発者コミュニティ (https://jp.community.intersystems.com/tags/intersystems-official) や製品アラートを通じて行われます。
開発者の皆さん、こんにちは!
スタジオを利用されている方にはお馴染みのソースコードの「XMLファイルへのエクスポート/インポート機能」がVSCodeのObjectScriptエクステンションに追加されました! (ObjectScript 2.10.0以降に含まれています。こちらのリクエストが元となりました👉https://github.com/intersystems-community/vscode-objectscript/issues/1158 エクステンションの追加番号は#1171です)
今まで、過去エクスポートしたXMLファイルをVSCodeから参照するためには、管理ポータル(またはスタジオ)を利用してインポートする必要がありましたが、VSCodeの画面だけでできるようになりました!
💡注意1: InterSystems IRIS /InterSystems IRIS for Health 2023.2以降のバージョンに接続した状態でご利用いただける機能です。
💡注意2:この機能は管理ポータルやスタジオのインポート/エクスポートのVSCode版のような機能となるため、インポートしたソースコードはサーバ側にインポートされ、エクスポートはサーバ側コードを選択してXMLファイルにエクスポートする動作となります。XMLファイルインポート後、VSCodeのワークスペースでローカルファイル(*.cls や *.mac)として編集 したい場合は、
ObjectScriptエクステンションマークをクリックし、対象のコードを選択→エクスポート の手順でローカルにエクスポートする必要があります。
この記事では、2023年3月1日~31日の期間に開催された「技術文書ライティングコンテスト:InterSystems IRISチュートリアル」に応募された24作品の中から、Heloisa Paivaさんが投稿されたシンプルですぐに試せる記事をご紹介します。
このチュートリアルは、テストやチュートリアル用のサンプル作成など、あらゆる目的でサンプルデータベースを作成するための、私が見つけた最も簡単な方法についての簡単なチュートリアルです。
これで、管理ポータルから新しいネームスペースを作成するより簡単で素早い方法でネームスペースを作成できます。
ネームスペースに移動するには、現在開いているSQLシェルを終了させるため、"quit" を入力し、zn "ネームスペース名" と入力します。これでターミナルで行うすべての動作がこのネームスペースのスコープに入ります。
こんにちは、皆さま。
業務でIRISを用いて開発を行っている者です。
技術文書ライティングコンテストという事で、私からはAWS環境を用いたCI/CDの仕組みについてご紹介します。
.png)
CI/CDとは「Continuous Integration(継続的インテグレーション)/ Continuous Delivery(継続的デリバリー)」の略称で、
詳細はネットをググると色々出てくると思いますが、私としてはリポジトリに格納されたものを自動で品質保証して、
問題なければ自動でデプロイしてくれる一連の仕組みだと理解しています。
という事で、その第一歩はIRISのソースコードをgitで管理することです。
pythonで作成したテストプログラムを用意しました。
Class packages.CICDSample Extends %RegisteredObject
{
/// グローバルの数
Property count As %Integer;
/// バイト数
Property bytes As %Integer;
/// コンストラクタ
Method %OnNew() As %Status
{
#; プロパティ変数の初期化。0開発者の皆さん、こんにちは!
いよいよ9月6日(水)~「第1回 InterSystems Japan 技術文書ライティングコンテスト」が始まります!
このお知らせでは、技術文書ライティングコンテスト📝への記事の投稿方法をご紹介します。
手順は以下2つだけ。とても簡単です。ぜひチャレンジしてみてください!💪
1については、記事「アカウント作成方法」に図解がありますのでご参照ください。
2については、以下の「記事の投稿方法」で詳しくご紹介します。
Windows環境にWebGatewayのみをインストールした場合に、「Service Unavailable / HTTP Error 503. The service is unavailable.」エラーとなりWebアプリケーションに接続できない場合があります。
こちらは、Visual C++ 再頒布可能パッケージ がインストールされていない環境に、Webゲートウェイをインストールした場合に見られる事象です。
Microsoft社のホームページより、Visual C++ 再頒布可能パッケージ(X64)をダウンロードしてインストールしてください。
インストール後IISを再起動し、以下のリンクよりWebゲートウェイ管理ページに接続できることをご確認ください。
Webゲートウェイ管理ページ:
http://localhost/csp/bin/Systems/Module.cxw
エラーが解消されない場合は、IISのアプリケーションプールが起動しているかをご確認ください。
【ご参考】
Microsoft Visual C++ Redistributable latest supported downloads
Caché と InterSystems IRIS データベースの整合性は、システム障害から完全に保護されてはいますが、物理ストレージデバイスが保管しているデータは、デバイスの障害によって破損してしまいます。 そのため、多くのサイトでは、データベースの整合性チェックを定期的に実行するように選択しており、特に特定のバックアップが災害時に信頼できるかどうかを検証するためにバックアップが行われています。 システム管理者がストレージの破損を伴う災害に対応するために、整合性チェックも緊急に必要となる場合もあります。 整合性チェックはチェックされているグローバルの各ブロック(すでにバッファーにない場合)を、グローバル構造で指示された順序で読み取る必要があります。 これには膨大な時間がかかりますが、整合性チェックは、ストレージサブシステムが維持できる限り高速に読み取ることができます。 一部の状況においては、できる限り迅速に結果を取得するために、そのように実行することが望ましい場合がありますが、 他の状況においては、ストレージサブシステムの帯域幅の過剰な消費を避けるために、整合性チェックをより保守的に行う必要があります。
以下の概要は、ほとんどの状況に対応します。
こちらの記事では、RESTやCSPなどの「Webアプリケーションのトラブルシューティング」のヒントをご紹介します。
何かしらのトラブルと思われる事象が発生した場合、確認したいのがログファイルになります。
各コンポーネント間のやり取りで、どこでどのようなトラブルが発生しているかを、それぞれログを取得して確認することができます。
① クライアント ⇔ Webサーバ間では、「Webサーバログ(IISやApacheのアクセスログなど)」、
② Webサーバ ⇔ Webゲートウェイ間では、「イベントログ」・「HTTPトレース」、
③ Webゲートウェイ ⇔ IRISサーバ間では、「ISCLOG」・「監査ログ」・「messages.log」などがあります。
こちらの記事では、IRISで取得できるログとして と で取得可能なログの取得方法をご紹介します。
1) Webゲートウェイ管理ページ(http://<IPアドレス>:<ポート>/csp/bin/Systems/Module.cxw)に接続します。
2) イベントログを削除します。
[イベントログを参照] > ログをクリア をクリック
3) イベントログレベルを設定します。
InterSystems Reports 23.2 がリリースされました。 WRC Direct のコンポーネントページで InterSystems Reports Designer および InterSystems Reports Server で検索することで、Mac OSX、Windows、Linux の各種プラットフォーム用キットを入手いただけます。 このバージョンでは、弊社パートナーである insightsoftware の Logi Report 23.2 に含まれる以下の素晴らしい機能が追加されています。
以下は、InterSystems IRIS で使用するデータベース、ネームスペース、および Web アプリケーションを作成できる ObjectScript スニペットです。
set currentNS = $namespace
zn "%SYS"
write "Create DB ...",!
set dbName="testDB"
set dbProperties("Directory") = "/InterSystems/IRIS/mgr/testDB"
set status=##Class(Config.Databases).Create(dbName,.dbProperties)
write:'status $system.Status.DisplayError(status)
write "DB """_dbName_""" was created!",!!
write "Create namespace ...",!
set nsName="testNS"
//グローバルの DB
set nsProperties("Globals") = dbName
//ルーチンの DB
set nsProperties("Routines") = dbName
set status=##Class(Config.Namespaces).Create(nsName,.nsProperties)
write:'status $system.Status.DisplayError(status)
write "Namespace """_nsName_""" was created!",!!
write "Create web application ...",!
set webName = "/csp/testApplication"
set webProperties("NameSpace") = nsName
set webProperties("Enabled") = $$$YES
set webProperties("IsNameSpaceDefault") = $$$YES
set webProperties("CSPZENEnabled") = $$$YES
set webProperties("DeepSeeEnabled") = $$$YES
set webProperties("AutheEnabled") = $$$AutheCache
set status = ##class(Security.Applications).Create(webName, .webProperties)
write:'status $system.Status.DisplayError(status)
write "Web application """webName""" was created!",!
zn currentNS
IRISをアップグレードすると、SQLクエリオプティマイザの機能向上により、旧バージョンとは異なるクエリプランによるクエリ実行コード(クエリキャッシュ)が作成される場合があります。
ほとんどの場合はパフォーマンスが向上するのですが、稀にパフォーマンスが低下するケースもあります。
・アップグレードによりオプティマイザが改善しているとはいえ、中には遅くなるクエリがあるのではないか?
・予期しないSQLの問題が起きるのではないか?
・アップグレード後に全てのクエリパターンをテストするには時間と労力がかかりすぎる
このように、機能向上よりも安定性を優先して「今までのプランのまま実行したい」というご要望もあることでしょう。
こちらの記事では、そのようなお客様への解決策をご案内します。
Cache2016.2以降(IRISはすべてのバージョン)で、クエリプランの凍結機能 が実装されました。
この機能により、IRISを新しいバージョンにアップグレードする際、既存のクエリプランは自動的に凍結されます。
これにより、アップグレードによる既存のクエリのパフォーマンスの低下の可能性を防げます(古いバージョンと同じプランが使用されるため)。
新しいクエリについてはもちろん、アップグレード後のクエリオプティマイザによるプランが使用されます。
cAdvisor(Container Advisor)は、実行中のコンテナのリソースの使用率とパフォーマンスデータを分析して公開します。 cAdvisor は初期設定のままで Prometheus メトリクスを公開します。
https://prometheus.io/docs/guides/cadvisor/
Prometheus は SAM に統合されています。 このため、cAdvisor メトリクスと利用して Prometheus と Grafana で公開することが可能です。
cAdvisor はポート 8080 でリッスンしますが、これは Nginx のポートと競合するため、それに対応するように Nginx ポートを変更することができます。
構成手順:
nghix.conf を変更します。
server {
listen 9991;
これにより、http://server:8080/ 経由で多数のサンプルダッシュボードが含まれる cAdvisor UI にアクセスできるようになります。
docker-compose.yml に以下を追加します。
ご好評をいただいておりますインターシステムズ主催 開発者向けウェビナーを次回は以下の通り開催いたします。
日時:2023年9月26日(火)13時半~14時
タイトル:「IRISデータベースの内部動作」(事前登録制・参加費無料)
ご登録はこちらから
【概要】
InterSystems IRIS は、その独自のアーキテクチャにより、非常に高いパフォーマンスのデータベース管理を行っています。
では、実際にデータの書き込み・読み込みが発生したとき、IRIS の内部ではどのような処理が行われるのでしょうか?
このウェビナーでは、20年間にわたり InterSystems IRIS のシステムサポートを行ってきたサポートエンジニアより、InterSystems IRIS におけるデータ処理の内部動作を分かりやすくご紹介します。
データベースの内部動作を知ることが、システムパラメータのチューニングやパフォーマンス向上のテクニックを理解する第一歩となります。
InterSystems IRIS の効率的なデータ活用の仕組みを、一緒に見てみましょう。
弊社製品のユーザ様はもちろんのこと、弊社データベースに興味をお持ちの方も、ぜひご覧ください。
突然ですが、みなさま、IRIS でのコーディングに Visual Studio Code をご利用されていますか? 以前投稿しましたように、2023.2からスタジオは非推奨 となっています。私自身も数年前からは VSCode 一本に移行しました。VSCode はご存じのように、ありとあらゆる項目でカスタマイズが可能となっており、一度慣れると、スタジオより見た目よく、自分好みに仕上げられ、何より動作が軽いのがお気に入りです。
さて今日は、その VSode の見た目のカスタマイズのお話です。
InterSystems IRIS data platform がサポートするプラットフォームやフレームワークを取り巻く変更点について、みなさまから良く質問をいただきます。この記事では、サポート対象プラットフォームで最近おこなわれた変更点や今後予定されている変更点に関する情報を共有させていただきます。ただ、将来の予測は難しい側面があり、ロードマップは約束されたものではないということを十分ご理解くださいませ。
コミュニティの皆さん、こんにちは。
この記事では、以下を使用して、Docker でプログラムによって Apache Web ゲートウェイを構成します。

イメージには、Web ゲートウェイ用と IRIS インスタンス用の 2 つを使用します。
すべての必要なファイルは、こちらの GitHub リポジトリで入手可能です。
では、git clone から始めましょう。
git clone https://github.com/lscalese/docker-webgateway-sample.git
cd docker-webgateway-sample
権限に関する問題を回避するために、システムにユーザーとグループが必要です。
コンテナと証明書ファイルの共有に必要です。 これらがシステムに存在しない場合は、以下を実行します。
InterSystems IRIS Adaptive Analytics 2023.2 がリリースされました。このバージョンでは、弊社パートナーである AtScale のバージョン 2023.2 に含まれる以下の素晴らしい機能が追加されています。
詳細な情報については、これらの新機能の デモ をごらんください。
Adaptive Analytics に関する情報については、ドキュメント ならびに オンライントレーニング をご参照ください。
InterSystems Kubernetes Operator (IKO) 3.6 がリリースされました。 IKO 3.6 は、多くのバグ修正に加えて、大幅に新機能を追加しました。注目の機能は以下のようになっています。
IKO のダウンロード、インストール、開始手順については インストールガイド にしたがってください。 IKO 3.6 ドキュメント には、IKO ならびに IKO を InterSystems IRIS や InterSystems IRIS for Health とどのように組み合わせるかの手順が記載されています。 IKO は WRC からダウンロードいただけます (Kubernetes で検索してください。) コンテナは InterSystems コンテナレジストリ から入手いただけます。
開発者の皆さん、こんにちは!
次の InterSystems オンラインプログラミングコンテストは、Pythonに特化した内容を予定しています!
🏆 InterSystems Python プログラミングコンテスト 🏆
期間: 2023年9月4日~24日
賞金総額: $13,500

インターシステムズは InterSystems IRIS Data Platform、InterSystems IRIS for Health、InterSystems IRIS Studio のバージョン 2023.2 をリリースしました。
2023.2 は Continuous Delivery(CD)リリースです。2023.2には多くのアップデートや拡張機能が追加されています。
本リリースより以下の点が変更されます: