開発者の皆さん、こんにちは!
IRISのInteroperability(相互運用性)機能(Ensembleのプロダクション)を使用してどのようなことができるか、コード例をご覧いただきながら/サンプルを動かしながらご確認いただける記事をまとめてみました。
ぜひご参照ください。
記事一覧:
InterSystems IRISは総合データプラットフォームです
InterSystems IRISは、企業にとって最も価値のある資産(データ)の取得、共有、理解、そしてデータに基づく行動のために必要なすべてのものを提供します。
完全なプラットフォームである InterSystems IRIS は、複数の開発技術を統合する必要がありません。より少ないコードで開発が可能で、そのアプリケーションは、システムリソース、メンテナンスなども少なくて済みます。
開発者の皆さん、こんにちは!
IRISのInteroperability(相互運用性)機能(Ensembleのプロダクション)を使用してどのようなことができるか、コード例をご覧いただきながら/サンプルを動かしながらご確認いただける記事をまとめてみました。
ぜひご参照ください。
記事一覧:
すべての永続クラス (%Persistent) およびシリアルクラス(%SerialObject) をコンパイルすると、ストレージ定義 が展開されます。
ストレージ定義には、オブジェクト保存と検索用のグローバル構造情報、ストレージインタフェースによって使用される追加のパラメータや、ストレージクラスを定義する一連のキーワードや値などが含まれます。
スタジオや ObjectScript コマンドを使用して永続クラスをエクスポートする場合、既定では以下のようなストレージ情報が付与された状態でエクスポートされます。
Storage Default
{
<Data name="PersonDefaultData">
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Name</Value>
</Value
:
こちらの記事では、このストレージ定義を除いた状態でクラスをエクスポートする方法をご紹介します。
「/skipstorage」というエクスポート修飾子を指定すると、クラスのストレージ情報なしでエクスポートすることが可能です。
コマンドで使用する方法は以下のようになります。
do $System.OBJ.Export("Sample.Person.InterSystems IRIS で使用できるユーティリティの一部を一覧でご紹介します。
以下の表の各ユーティリティ名をクリックすると、ユーティリティの詳細情報をご覧いただけます。
| ユーティリティ名 | 概要 |
|---|---|
| ^BACKUP | バックアップやリストア処理を行います |
| ^DATABASE | データベースの作成・編集・削除など、データベースの管理を行います |
| ^DATACHECK | 2つのIRIS.DAT の内容が一致しているかを確認します |
| ^DBSIZE | データベースサイズを計測します |
| ^GBLOCKCOPY | データベース内のグローバルデータを別データベースまたはネームスペースにコピーします |
| ^GETPPGINFO | IRISTEMPデータベースでどのような一時グローバルを使用しているかを確認します |
| ^%GCMP | 2つのグローバルの内容を単純比較します |
| ^%GSIZE | ネームスペース内の各グローバルのデータサイズを確認します |
| ^Integrity/ ^INTEGRIT |
データベースのセット、またはデータベース内のグローバルのサブセットの構造的な整合性を検証します |
| ^JOBEXAM | プロセス一覧を表示します。 |
こんにちは、大丈夫ですか?
助けを求めに来ました。インターシステムズ ポルトガル語のコンテストに参加しているので、リンクからこの記事を作成しました。私の記事にアクセスしてフィードバックをいただけますか。「いいね!」も歓迎です。
読むには、ブラジル系ポルトガル語からあなたの言語に翻訳するだけです。
請求、支払いや領収、アイテムの配送や在庫を処理するアプリケーションでは、バーコードや QR コードの使用が必要となるのが一般的です。 単純なバーコードよりも多くの情報を格納できる QR コードは、さらに幅広いシナリオで使用されています。 したがって、バーコードと QR コードを生成する機能、またはそれらに格納されたデータを画像または PDF から読み取る機能が重要となります。 この記事では、Python と無料のライブラリを使用してこれを行う方法を説明します。
pyzbar ライブラリは、zbar ライブラリを使って、Python 2 と 3 から 1 次元バーコードと QR コードを読み取ります。 以下の特徴が備わっています。
これは InterSystems FAQ サイトの記事です。
サブスクリプトレベルマッピングされたグローバルを、トップノードから全体をkillする場合、<SLMSPAN>エラーとなり削除ができません。
これは、サブスクリプトレベルマッピングされたグローバルについては、マッピングを跨いだサブスクリプト範囲の kill コマンドは行えないためです。
// 以下のように、別々のデータベースにサブスクリプトマッピンググローバルが存在する場合:
^TEST(A*~K*) -> database A
^TEST(L*~Z*) -> database B
// Topレベルから Kill しようとすると、<SLMSPAN>エラーとなる
NAMESPACE>Kill ^TEST
<SLMSPAN> <- このエラーが出力
現ネームスペース(データベース)のグローバルのみ削除するには、次のように指定して下さい。
NAMESPACE>Kill ^["^^."]TESTサブスクリプトレベルでマッピングしているグローバルは、データベースに移動して直接Killする必要があります。
データベースに移動する場合は以下のようにします。
これは InterSystems FAQ サイトの記事です。
オペレーティング・システム・ベースの認証(OS認証)では、OSのユーザ ID を使用して、IRISを使用するユーザを識別します。
インストール時に選択する初期セキュリティ設定=最小の場合は、予め、OSログインユーザと同一名のユーザをInterSystems IRIS に作成する必要があります。(パスワードは異なっていても構いません。)
初期セキュリティ設定=通常以上の場合は、インストールユーザ名(OSログインユーザ名)で、ユーザが作成されていますので、このユーザを使用することができます。別のログインユーザで実行したい場合は、同様にIRISユーザを同名で作成してください。
[インストール時の初期セキュリティ設定画面]
OS認証は、以下の3つのサービスに使用できます。
・コールイン (%Service_Callin)
・コンソール (%Service_Console) ※Windowsのローカル接続
・ターミナル (%Service_Terminal) ※Linux/Unixのローカル接続
※iris run(runw)/ccontrol run(runw) ではパスワード認証は使用できませんが、OS認証を使用してシステムにログインすることが可能となります。
OS認証を行うための設定手順は以下の通りです。
こちらの記事 では、ヘルスモニタのセンサー値を ^%SYSMONMGR ユーティリティを使用して変更する方法をご紹介しました。
今回は、ヘルスモニターセンサー値を コマンド(プログラム)で変更する方法をご紹介します。
ヘルスモニタは、CPUUsage(CPU使用率)、DBLatency(DBからのランダム読取に要する時間)、DiskPercentFull(DBのディスク使用率)などの該当しきい値を超えた場合に、通知を生成します。
※ヘルスモニタのセンサー値(閾値)について
センサーのしきい値を超えると、IRISのシステムログ(messages.log)に以下のようなメッセージが記録されます。
データ分析は、急速に展開するこの時代において、ビジネス上の意思決定を行う上で欠かせない側面です。 組織はデータ分析に大きく依存して、十分な情報に基づく意思決定と競合優位の維持を行っています。 この記事では、Pandas と InterSystems Embedded Python を使ってデータ分析を実行する方法について説明します。 Pandas の基本、InterSystems Embedded Python を使用するメリット、および両方を組み合わせて有効なデータ分析を実行する方法について説明します。
インターシステムズは、高品質な開発体験をみなさまにご提供することお約束しています。その中には優れた IDE (Integrated Developer Experience) も含まれます。ここ数年、長くお使いいただいている弊社独自の IDE である InterSystems スタジオと並行して、Visual Studio Code の ObjectScript ツールを提供してきました。VSCode-ObjectScript プラグインは 46,000 以上ダウンロードされ、開発者のみなさまからは、「すぐれた開発体験であり、今や InterSystems Studio を凌駕した」との嬉しいフィードバックをいただいています。
2023.2 のリリースから、InterSystems スタジオ非推奨となります (非推奨とは、インターシステムズが今後は積極的に開発を行わない、より優れたオプションが存在する機能を意味します)。 しばらくの間は InterSystems スタジオのメンテナンス、リリース、サポートは続けます。いくつかのお客様にとっては、スタジオが今なお重要なツールであることは重々承知しております。しかしながら、私たちはこれ以上スタジオに注力しないことをご理解いただければ幸いです。私たちは現在、VSCode に注力しています。
2023.2 の開発者プレビュープログラムの一環として、最初の開発者プレビューを公開いたします。今回リリースされたのは、InterSystems IRIS と InterSystems IRIS for Health です。
2023.2では、多くの機能修正と改善に加えて、時間認識モデリングや 強化された外部テーブル、読み込み専用の FEDERATED テーブルといった新機能が含まれる予定です。その一部は、今回の開発者プレビュー版にはまだ含まれていません。
2023.2の別の注目点は、プライベート・ウェブサーバ (PWS) がインストーラから削除されることです。このことは昨年に発表され、インターシステムズ製品のインストーラから削除予定ですが、今回のプレビュー版ではまだPWSは存在します。詳細はこちらのドキュメントをご覧ください。
--> PWSが含まれないインストーラにご興味のある方は、こちらのフォームからEAPに登録してください。その際、オプションで「No Private Web Server」をお選びください。このEAPに関する情報はこちらをご参照ください。
今後のプレビューリリースは、2週間ごとの発表を予定しており、新機能が完成次第、プレビュー版に追加されていきます。
インターシステムズは現在、早期アクセスプログラム (EAP) に非常に注力しています。このプログラムは、私たちの製品がリリースされる前に、ユーザのみなさまにボランティアとして関わっていただくものです。次のグローバルサミットにおいても、あらためてプログラムを紹介させていただきます。
関わっていただくソフトウェアは、InterSystems IRIS 製品そのものの場合もありますが、たいていは、私たちがユーザ様の意見をいただきたい新機能に絞った単体ソフトウェアになります。 早期アクセスプログラムの参加利用規約は、評価いただくソフトウェアごとに変わります。
プログラムに参加いただく方法はとても簡単です。こちらのリンク(英語)から、フォームに必要事項をご記入ください。
EAPに関する最新情報を入手されたいみなさまは、このページ をブックマークいただくか、このハッシュタグ を開発者コミュニティでフォローしてください。
より詳細な情報が必要な方は、このページでご質問いただくか、 EarlyAccess@InterSystems.com までメールをお送りください。
これは InterSystems FAQ サイトの記事です。
InterSystems IRIS では、柔軟でユーザ拡張可能な監視ツールである「システムモニタ」をお使いいただくことが可能です。
システムモニタには、以下の3つのインスタンス監視ツールがあります。
.png)
messages.logに、以下のようなログが記録される場合があります。
[SYSTEM MONITOR] DBLatency(c:\xxx\) Warning: DBLatency = 1510 ( Warnvalue is 1000).
※このメッセージの意味については こちらの記事 をご覧ください。
開発者の皆さん、こんにちは。
ご好評をいただいております弊社主催・開発者向けオンラインセミナーを
(参加費無料・事前登録制)
【概要】
本ウェビナーでは、InterSystems IRIS Data Platform が持つ Interoperability(相互運用性)機能を利用してシステム連携を行う際、自動的な連携の流れにユーザからの指示を介入できる「ワークフローコンポーネント」の使い方についてご紹介します。
ワークフローコンポーネントは、IRISの標準機能でワークフロータスク担当者が指示を行うための専用ポータルも標準で用意されています。
ウェビナーでは、ワークフローコンポーネントの使い方についてご理解いただくため、以下の内容をご説明します。
※Interoperaiblity(相互運用性)機能概要ついてもご説明に含める予定です。
【対象者】
ご登録はこちらから。
これは、InterSystems FAQサイトの記事です。
<ROLLFAIL>エラーは、ロールバック処理中に何らかのエラーが発生した場合に発生するエラーです。
よくあるケースはロールバック時点でシステム全体のジャーナリング機能が無効になっていた場合です。
ジャーナル機能が無効になるのは、ジャーナルを無効にする設定を行うかジャーナル格納ディレクトリのディスクが満杯のためにシステムがジャーナルを無効にした場合などです。
InterSystems 2022.2 では、IRIS SQL テーブルを永続化する新しいオプションとして、分析クエリを桁違いに向上させられるカラムナーストレージを導入しました。 2022.2 と 2022.3 ではこの機能は実験的としてマークされていますが、次の 2023.1 リリースでは、完全にサポートされた本番機能に「卒業」する予定です。
製品ドキュメントとこの紹介動画では、IRIS では現在でもデフォルトであり、全顧客ベースで使用されている行ストレージと、このカラムナーストレージの違いがすでに説明されており、ユースケースに適切なストレージレイアウトの選択方法に関する大まかなガイダンスが提供されています。 この記事では、このテーマについて詳しく説明し、業界で実践されているモデリング原則、内部テスト、および早期アクセスプログラム参加者からのフィードバックに基づく推奨事項をいくつか紹介します。
IRISTEMPというデータベースをご存じでしょうか?
特定の処理に対してデータを無期限に保存する必要がなく、「同一プロセス内でのみ使用したい場合」や「IRISが起動中のみ使用したい場合」に、IRISTEMPデータベースに保存されるグローバルを使用できます。
IRISTEMPデータベースに保存されるグローバルに対する操作は ”一切ジャーナルされない” ため、効率性を最大限にしたい作業に使用できます。
IRISTEMPデータベースに保存されるグローバル(データ)には、以下の種類があります。
------------------------------------------------------------------------------------------------------------------------------------------------------------------
1. システムテンポラリグローバル(IRISが起動中は全ネームスペース&プロセスからアクセス可能)
2. プロセスプライベートグローバル(同一プロセス内でのみ、全ネームスペースからアクセス可能)
3. GLOBAL TEMPORARY テーブル(テーブルは全ネームスペース、データは各プロセスでアクセス可能)
4.
本番環境でのopenhl pythonモジュールの使用に関する作業の説明の続きです。
Embedded Pythonを搭載しているirisは、まだ最終リリースがされていません(原文投稿当時)が、現時点で本番で使用する必要があります。 そこで、リクエストをxlsxファイルにエクスポートするサービスは別サーバーにバックアップし、クエリ結果は別データベースのグローバルに保存することにしました。
このデータベースは、ネットワーク化され、サービスサーバーはローカル、本番サーバーはリモートとしています。本番サーバー、サービスサーバ間のコミュニケーションは、REST サービスを使って実装しています。
つまり、クライアントアプリケーションのサーバー上では、ユーザーは大きなレポートを発行します。レポートはバックグラウンドで作成され、グローバルに保存されています。 リモートデータベース上では、グローバルへの完全な参照をパラメータとしてRESTサービスが呼び出されます。 このサービスはバックグラウンドで起動し、Excelファイルに内容をエクスポートし、その後、合図として生成されたファイルへのリンクでRESTサービスを呼び出します。 メッセージを受け取った本番サーバーのサービスは、Excelファイルをアーカイブして、クライアントにメールで送信します。
インターシステムズは、IBM POWER8 以降の POWER プロセッサを搭載した AIX システムで、データベースおよびジャーナルファイルが破損する可能性がある問題を修正しました。
この問題は、データベースまたはジャーナルの暗号化が使用されている場合にのみ発生する可能性があります。
対象バージョン:
InterSystems IRIS - 2022.1.3、2023.1 を除く全てのバージョン
InterSystems IRIS for Health - 2022.1.3、2023.1 を除く全てのバージョン
HealthShare Health Connect - 2022.1.3、2023.1 を除く全てのバージョン
HealthShare ソリューション - すべてのバージョン
※HealthShareソリューションはデータ要素の暗号化機能を使用していない為、
本不具合が直接影響することはありません。ただし、HealthShare環境にて
上記のようなデータ要素の暗号化機能を使用するカスタマイズがある場合は
本アラートに記載されている回避方法に従う必要があります。
InterSystems Cache および Ensemble - 2015.
Python で可変長引数をもったメソッドを考えてみましょう。以下の a.py があるとき
def test1(*args):
return sum(args)
def test2(**kwargs):
a1 = kwargs.get("a1",None)
a2 = kwargs.get("a2",None)
return a1+a2Global Summit 2022 または 2022.2 ローンチウェビナーの内容からよく覚えていると思いますが、InterSystems IRIS の分析ソリューションに組み込むための目覚ましい新機能をリリースしようとしています。 分析クエリを桁違いに高速化する、代替の SQL テーブルデータ格納手法であるカラムナー(列指向)ストレージです。 もともと 2022.2 の実験的機能としてリリースされましたが、最新の 2022.3 開発者プレビューには多数の更新が含まれているため、別途ここで簡単に説明したいと思います。
クラウド環境で Windows 英語版に日本語言語パックをインストールして日本語化している場合、設定に注意が必要です。
以下のようにランチャー(キューブ)メニューの一部が文字化けするのは、言語設定が足りていないのが原因と考えられます。
.png)
以下の設定をご確認ください。
Windows設定 > 時刻と言語 > 言語:管理用の言語設定
「Unicode 対応でないプログラムの現在の言語」が、日本語以外の言語 (例:英語(米国)) になっていないでしょうか?
.png)
この場合、システムロケールの変更 ボタンで現在のシステムロケールを「日本語(日本)」 に変更することで、文字化けが解消します。
.png)
※この変更を反映させるにはWindowsの再起動が必要です。
***
【注意】
システムロケールが「英語(米国)」のように日本語以外の言語になっている環境にIRISをインストールしている場合、IRISのデフォルトの ロケール定義 が日本語以外に設定されています。
この場合、例えばファイル入出力も日本語の言語対応がされないため、日本語を含むCSPなどのファイルインポートで文字化けが発生してしまいます。
その際には、OSのシステムロケールの変更に加えて、IRISのロケール定義も変更するようにしてください。
元のタイトルから外れますがAzure ADをOPとした場合に、Wepアプリケーション(CSP)とSPA+BFF形式のRPにどのような修正が必要かを調べました。
ある程度の差異は想定はしていましたが、思っていたより違うな、という印象を受けました。RP、リソースサーバ側でこれらの差異を吸収する必要がありました。
個人調べです。誤りがあるかもしれませんが、その際はご容赦ください。また、状況は刻々と変わる可能性があります。
インターシステムズは、InterSystems IRIS Data Platform、InterSystems IRIS for Health、HealthShare Health Connect、InterSystems IRIS Studio の 2023.1 リリースを一般提供開始(GA)したことを発表しました。
2023.1 は、拡張メンテナンス(EM)リリースです。2023.1では、多くのアップデートと機能拡張が追加されました。
また、Columnar Storageの本番対応、Bulk FHIR、MacOS 13 Venturaへの対応など、まったく新しい機能が追加されています。さらに、 Foreign Table を使用する機能を提供する新機能は「実験的」としてリリースされ、早期アクセスプログラム(EAP)を通じてアクセスできるようになる予定です。
InterSystems IRIS Data Platform 2023.1では、本番用に以下の新しいオペレーティングシステムをサポートします。
今回は、「IRIS for Health Contest」に応募するために、どのような技術を使ってアプリケーションを開発していたのか、その詳細を紹介したいと思います。
内容
まず、それらの技術に支えられたアプリケーションを簡単に紹介します。
このアプリケーションは、妊娠中の女性が簡単に症状を報告できるように設計されています。このアプリケーションはレスポンシブであるため、モバイルデバイスを使用して症状を簡単に報告することができます。このような症状は、FHIR Observation リソース のInterSystems FHIR サーバーを使って記録されます。.
InterSystems Kubernetes Operator (IKO) 3.5 が一般公開されました。 IKO 3.5では、多数のバグフィックスとともに、重要な新機能が追加されています。
主な内容は以下の通りです
インターシステムズは、InterSystems IRIS、InterSystems IRIS for Health、HealthShare Health Connect 2022.1.3 のメンテナンスリリースを公開しましたのでお知らせします。このリリースでは、これまでの2022.1.xリリースに対して厳選された機能とバグフィックスが提供されます。
変更点についての追加情報は、これらのページでご覧いただけます
より良い製品にするため、開発者コミュニティにご意見をお寄せください。
ソフトウェアの入手方法
本ソフトウェアは、古典的なインストールパッケージとコンテナイメージの両方が利用可能です。 利用可能なインストーラとコンテナ・イメージの詳細なリストについては、「サポート対象プラットホーム」を参照してください。
InterSystems IRISとInterSystems IRIS for Healthのインストール・パッケージは、このWRCのInterSystems IRIS Data Platform Full Kits のページから入手できます。
インターシステムズは、まれに Enterprise Cache Protocol (ECP) クライアントが不安定になることがある不具合を修正しました。
この不具合は、以下の製品およびそれらをベースとしたインターシステムズの製品に存在します。
影響を受けるバージョン: 2022.1.x, 2022.2, 2022.3
InterSystems IRIS®
InterSystems IRIS for Health™
HealthShare® Health Connect
影響を受けるバージョン: 2022.2 (ECPを導入しているお客様のみ)
InterSystems HealthShare®
この問題は、ECPクライアントシステムでのみ発生する可能性があります。この問題が発生すると、プロセスで <SYSTEM> または <DATABASE> エラーが発生することがあります。エラー後、ECPクライアントが不安定になり、場合によってはインスタンスがハングアップすることがあります。データへの影響はなく、ECP データサーバーも影響を受けません。
不安定な状態を解消するには、ECP クライアントインスタンスを再起動する必要があります
IRIS、IRIS for Health、またはHealth Connectのインスタンスに影響がある場合、近日中にリリースされるバージョン2023.1または2022.1.
インターシステムズは、SQL クエリによって不正な結果が返される可能性がある不具合を修正しました。
この不具合は、以下の製品およびそれらをベースとしたインターシステムズの提供する製品に存在します。
影響を受けるバージョン: 2021.2, 2022.1.x, 2022.2, 2022.3
InterSystems IRIS®
InterSystems IRIS for Health™
HealthShare® Health Connect
影響を受けるバージョン: 2022.2
InterSystems HealthShare®
この問題は、SQL Runtime Plan Choice (RTPC) が有効(デフォルト設定)で、クエリに「真理値」である WHERE ? = ? が含まれている場合、発生することがあります。この問題が発生すると、一部の述語が正しく評価されない可能性があり、これが不正なクエリ結果につながります。
注意: SQL を確認することで、クエリの脆弱性を完全に評価することは不可能です。これは、InterSystems SQL のクエリ最適化により、クエリの内部表現に真理値が追加されるためです。
これは InterSystems FAQ サイトの記事です。
以下の状態の時、ReadOnlyでマウントされます。