これは InterSystems FAQ サイトの記事です。

ロックテーブルの1エントリは管理領域の固定512 bytesとロック文字列情報などの可変領域から構成されます。

可変領域はロック対象のグローバルノード名に関連する情報に必要な長さ(bytes)になります。

1つのLockコマンドにつき、上記で示した長さのデータが必要です。

そしてその可変領域に必要なデータ長は、ロック対象のグローバルノード名(^xxx(xxx,xxx)) の長さに見合う16,32,64,128,256,…bytesのバケットの長さになります。

例えばロック対象のグローバルノード名が^xxx(123,"data")とすると、 ^xxx(123,"data")にデータのロケーション等のデータが付加されたものがその可変領域となり、32byteまたは64bytes(データロケーションが相応に長い場合)のバケットを使用しますので、

1 0
0 43

これは InterSystems FAQ サイトの記事です。

messages.logまたはcconsole.log内に記録されるCSPGatewayLatencyのメッセージは、サーバが、パフォーマンス測定のため定期的に「CSPゲートウェイにリクエストを送信して応答をもらう」ことを行っており、応答を受け取るまで一定時間以上かかったときに出る警告(応答時間の閾値)です。

その既定値は1000ミリ秒です。

WebGateway(CSPGateway)が稼働する Web サーバの負荷が高い場合に出力する場合がありますが、実際のCSPアプリケーションやREST APIの動作や応答速度に影響が見られなければ、特に問題はありません。

またこのメッセージの出力頻度を下げるためにこの閾値を変更する方法もあります。

変更方法は以下を参照ください

1 0
0 43

InterSystems Reports 24.1 がリリースされ、WRC の Components エリアから入手いただけるようになりました。本製品は InterSystems Reports Designer と InterSystems Reports Server と表記されており、Mac OSX、Windows、Linux 版を入手いただけます。

この新バージョンには、弊社パートナーの insightsoftware 社によるすばらしい拡張機能が含まれています。InterSystems Reports 24.1 は Logi Report 24.1 SP2 をベースにしており、以下の機能が含まれます。

1 0
0 43

インターシステムズは InterSystems IRIS Data Platform, InterSystems IRIS for Health, HealthShare Health Connect バージョン 2024.2 をリリースしました。

リリースハイライト

2024.2 は Continuous Delivery(CD)リリースです。
2024.2 には多くのアップデートや拡張機能が追加されています。

開発者向け機能の強化

0 0
0 40

これは InterSystems FAQ サイトの記事です。

IRIS2023.1から導入されたgmheapとlocksizの新しいデフォルト値について紹介します。

gmheap=0は、特別な設定の必要性がないほとんどのシステム(実運用システムを含む)に適切なように設計された新しいデフォルト値です。

0に設定することで、システムがシステム全体のサイズを推測し、妥当な値を算出してくれます。

gmheap=0 に設定した場合、システムは、グローバルバッファ用に設定されたメモリの合計に3%を乗じた値を基準に、300MBの下限と2GBの上限の範囲内でgmheap値を設定します。

0以外の値はそれをそのまま使用し、2GBよりはるかに大きく、あるいは300MBよりはるかに小さく設定することができます。

0 0
0 39
記事
· 2024年12月18日 1m read
IRIS技術ガイド

Caché技術ガイドのいくつかをIRIS版に書き換えた文書を作成しましたので公開します。

IRISファーストステップガイド

IRISBasicTechnologyGuide

- ObjectScript操作ガイド

- オブジェクト操作ガイド

- 多次元データエンジンの概念およびアーキテクチャー

IRIS SQLガイド

3 0
2 38

InterSystems IRIS 2024.3 と InterSystems IRIS for Health 2024.3 の最初の開発者プレビューが WRC プレビューダウンロードページ に公開されました。コンテナ版は InterSystems コンテナレジストリ から入手いただけます。コンテナは latest-preview とタグ付けされています。

0 0
0 38

%UnitTest framework を使用してユニットテストを構築したことがある場合、またはこれから構築しようとお考えの場合は、InterSystems Testing Manager をご覧ください。

VS Code を離れることなく、ユニットテストの閲覧、実行またはデバッグ、過去の実行結果の表示が可能になりました。

0 0
0 38

InterSystems IRIS® data platform、InterSystems IRIS® for Health、HealthShare® Health Connect 2025.1 の最初の開発者プレビューが WRC 開発者プレビューページ に公開されました。

0 0
0 36

インターシステムズは InterSystems IRIS data platform、InterSystems IRIS for Health、HealthShare Health Connect のバージョン 2024.3 をリリースしました。2024.3 は Continuous Delivery(CD)リリースです。

0 0
0 35

以前、Azure用にOAouth2クライアントをセットアップする記事を書いた時に思ったのですが、各IdPはサンプルコードとしてPythonコードや専用のモジュールを提供しているので、それがそのまま使用できれば効率が良いのにな、と思いました。

IRISが埋め込みPython機能としてWSGIをサポートしたことにより、これが簡単に実現しそうなので、その方法をご紹介したいと思います。

導入方法

今回は、IdPとしてOKTAを使用してAuthorization Codeフローを行います。

OKTAでの設定内容

参考までに、今回使用した環境を後半に記載しています。

アプリケーションの起動

コンテナ化してありますので、コンテナのビルド環境をお持ちの方は、下記を実行してください。

3 0
0 35

REST/JSONを使ってデータを交換することが増えてきていると思いますが、POSTでIRISにデータを渡す場合に日本語が含まれる場合に皆さんどう処理していますか?

わざわざ自分でコード変換する処理を追加していませんか?

実は、あまり知られていないのですが、自動で変換する方法がありますので、紹介します。

CSPのメカニズムを使ってクライアントからデータをPOSTすると、それはCSPのRequestオブジェクトのContentプロパティに渡されます。

ContentプロパティのTypeは%CSP.Streamになっていて、このTypeのクラスリファレンスを読むと、Content-TypeがText/のときには、CharSetに基づいてコード変換が行われると示唆されています。

つまりContent-TypeがJSONの場合には、自動的な変換がされないということになります。

本当は、Content-TypeがJSONの時も変換してくれるのが一番良い(わかりやすい)のですが、残念ながらそうなっていません。

その代わりにパラメータが用意されています。

RESTのディスパッチクラスの定義に以下のパラメータを追加することで、自動コード変換を行なってくれます。

0 0
2 34

インターシステムズは、非常にまれな状況下で、マルチボリュームデータベースでデータベース破損または <DISKHARD> エラーが発生する可能性がある不具合を修正しました。危険性があるのは、未使用領域削除(Truncate)を行ったマルチボリュームデータベースのみです。

この問題は、以下の製品およびそれらベースとしたその他のインターシステムズ製品に存在します:

InterSystems IRIS 2024.1, 2024.1.1, 2024.2
InterSystems IRIS for Health 2024.1, 2024.1.1, 2024.2
HealthShare Health Connect 2024.1, 2024.1.1, 2024.2

0 0
0 34
質問
· 2024年12月4日
SQLの最適化について。

こんにちは、皆さま。
業務でIRISを用いて開発を行っている者です。

私自身SQLがあまり得意ではなく、
業務で書いてみたもののパフォーマンスがよくなく、
不要なループが含まれていた、無駄な検索条件が含まれている…なんてことが多々あります。

IRISの管理コンソールなどにはいろんな機能があると思うのですが、
パフォーマンス改善をするために利用できるツールなどはあったりしますでしょうか?

何かご存知の方がいらっしゃいましたら、情報共有頂けますと幸いです。

0 2
0 31

InterSystems API Manager (IAM) のバージョン 2.8.4.11 & 3.4.3.11 が公開されました。 これらは、長期的にサポートされている IAM の 2 つのバージョンの最新版です。これらのリリースには重要な修正が含まれており、すべてのお客様にアップグレードをお勧めします。

IAM 3.0または3.2をお使いのお客様は、これらのバージョンのサポートがまもなく終了するため、3.4.3.11にアップグレードすることをお勧めします。

IAM は、InterSystems IRIS サーバとアプリケーション間の API ゲートウェイであり、HTTP ベースのトラフィックを効果的に監視、制御、管理するためのツールを提供します。IAM は、InterSystems IRIS ライセンスの無償アドオンとして利用できます。

IAMは、WRCソフトウェア配布サイトのComponentsエリアからダウンロードできます。

0 0
0 32

これは、InterSystems FAQサイトの記事です。

インターシステムズは、特定のオペレーティングシステムのパッチやサービスパックに対して、製品の検証は実施しておりません。

これらの保証については、オペレーティングシステムベンダーが互換性を保証する限りにおいて、提供されます。
まれなケースで、インターシステムズの製品を稼動するために、特定のパッチやサービスパックを必要とするケースもあります。
その様な特別な状況の詳細は、サポートサーバプラットフォームに明記しています。以下ドキュメントをご参照ください。

サポートサーバプラットフォームについて

明記されていない場合には、オペレーティングシステムベンダーが互換性を保証する限りにおいて、パッチやサービスパックもサポート対象となります。

※2022.1以降のバージョンにおいては、OSのマイナーバージョンにおいても検証を実施しております。

0 0
0 31

CI/CD シリーズの新しい章へようこそ。ここでは、InterSystems テクノロジーと GitLab を使用したソフトウェア開発の様々な可能なアプローチを取り上げています。

今回は、相互運用性についてご紹介しましょう。

問題

アクティブな相互運用性プロダクションがある場合、2 つの個別のプロセスフローが存在します。メッセージを処理する稼動中のプロダクションと、コード、プロダクションの構成、およびシステムデフォルト設定を更新する CI/CD プロセスフローです。

明らかに、CI/CD プロセスは相互運用性に影響しますが、 本題は次にあります。

  • 更新中には実際に何が起きているのか?
  • 更新中の本番停止を最小限に抑えるか失くしてしまうには、どうすればよいのか?
1 0
0 30

これは InterSystems FAQ サイトの記事です。

POST要求で受信したBodyのJSON文字列を、REST ディスパッチクラス内メソッドでダイナミックオブジェクト(%DyamicObject)に変換する際、以下エラーが発生する場合があります。

0 0
0 29

CI/CD シリーズの新しい章へようこそ。ここでは、InterSystems テクノロジーと GitLab を使用したソフトウェア開発の様々な可能なアプローチを取り上げています。
今回も相互運用性について説明を続けますが、特に相互運用性デプロイの監視に焦点を当てます。 まだアラートをすべての相互運用性プロダクションにセットアップしていない場合は、それをセットアップしてエラーとプロダクションの状態についての一般的なアラートを取得できるようにしてください。

非活動タイムアウトは、すべての相互運用性ビジネスホストに共通する設定です。 ビジネスホストは、「Inactivity Timeout(非活動タイムアウト)」フィールドに指定された秒数以内にメッセージを受信しない場合に非アクティブステータスになります。 プロダクションの監視サービスはプロダクション内のビジネスサービスとビジネスオペレーションのステータスを定期的に確認し、非活動タイムアウト期間内にアクティビティがない場合にその項目を「非アクティブ」にマークします。
デフォルト値は 0(ゼロ)です。 この設定が 0 である場合、ビジネスホストはアイドル状態がどれほど続いても Inactive にマークされることはありません。

これはアラートを生成し、構成されたアラートと合わせてプロダクションの問題に関するリアルタイム通知を可能にするため、非常に便利な設定です。 ビジネスホストがアイドル状態である場合、プロダクション、統合、またはネットワーク接続に調べる価値のある問題がある可能性があります。
ただし、ビジネスホストには一定時間の非活動タイムアウトを 1 つしか設定できないため、夜間、週末、休日などのトラフィックの少ない既知の期間中に不要なアラートを生成する可能性があります。
この記事では、動的な非活動タイムアウトを実装するためのいくつかのアプローチを説明します。 機能する例(現在ある顧客サイトの本番環境で実行しているもの)を紹介していはいますが、この記事は独自の動的な非活動タイムアウトの実装を構築するためのガイドラインを紹介することを目的としているため、ここに提案するソリューションを唯一の代替手法と見なさないようにしてください。

0 0
0 28

こちらの記事では、既存のユーザ設定をプログラムで変更する方法をご紹介します。

ユーザロールを追加/削除したい、有効期限設定を変更したい、等の場合にお役立てください。

なお、ユーザ設定をプログラムで新規作成する方法は こちら の記事で紹介しております。


1.ある特定ユーザの設定を参照+変更する方法

2.既存の全てのユーザの設定を参照する方法

3.おまけ(Webアプリケーション情報の参照+変更)



1.ある特定ユーザの設定を参照+変更する方法

0 0
0 26

これは、InterSystems FAQサイトの記事です。

これは、MS-ACCESSの制限事項です。

MS-ACCESSは、インデックスが32個より多いテーブルにはリンクできません。

この問題を回避する方法として、直接テーブル(クラス)をリンクするのではなく、VIEWを使用する方法があります。

0 0
0 24

これは InterSystems FAQ サイトの記事です。

InterSystems製品では、システム開始時に任意の処理を追加できます。

データベースミラーリングを構成していない環境では、%ZSTARTルーチンのSYSTEMラベルを作成することで任意の処理を実装できますが、データベースミラーリングを構成している環境では、このルーチンでは動作しない処理があります。

ご参考:^%ZSTART ルーチンと ^%ZSTOP ルーチンによる開始動作と停止動作のカスタマイズ

理由として、ミラーリング構成の場合、ミラーデータベースへのアクセスはミラーリングサービスが開始されプライマリメンバとなるまでReadOnlyとなります。

0 0
0 23

新年おめでとうございます。今年もインターシステムズを宜しくお願い申し上げます。

さて2025年最初のウェビナーは「開発効率化とシステム統合の実現:InterSystems IRISプラットフォームによる

次世代システム基盤の構築」のテーマで、2月20日に開催いたします。

日時:2025年2月20日(木)13時半~14時

参加費無料・事前登録制

ご登録はこちらから

【概要】

当セミナーでは、現場で本当に使える統合プラットフォームについて、技術者の悩みから経営課題まで、リアルな視点でお届けします。

1 0
0 23

コミュニティメンバーから、Python 2024 コンテストでの出品に対する非常に素晴らしいフィードバックが届きました。 ここで紹介させていただきます。

0 0
0 23

InterSystems IRIS、IRIS for Health、HealthShare HealthConnect のメンテナンスリリース 2023.1.5 と 2024.1.2 がリリースされました

InterSystems IRISInterSystems IRIS for HealthHealthShare Health Connect の2つのメンテナンスリリースがリリースされました。

✅ 2023.1.5

リリース 2023.1.5 は、以前のリリース 2023.1.x のバグフィックスを提供します。

詳細な変更リストとアップグレード・チェックリストは、以下のページにあります :

0 0
0 23

開発者の皆さん、こんにちは。

試していたWebAPIでは、POST要求時クエリパラメータとボディの両方を送る必要がありましたので、HTTPアウトバウンドアダプタが提供するメソッド:Post()/PostFormDataArray()/PostURL() 辺りをドキュメントで確認していたのですが、残念ながら両方を渡せるように作成された丁度良いメソッドがありませんでした。

ドキュメント:HTTPアウトバウンドアダプタが提供するメソッド

では、どのように送ったかというと、SendFormDataArray()の第3引数を利用して両方の情報を送付してみました。

1 0
0 22

これは InterSystems FAQ サイトの記事です。

方法は2種類あります。

1) 同一サーバにIISとCachéがインストールされている環境をそのままアップグレードする場合は、IRIS(※)インストールキットを起動し「CACHE(CONVERSION)」からCSPゲートウェイとCaché両方をアップグレードします。

2) IISがIRISとは異なるサーバにインストールされている場合は、IRIS用Webゲートウェイキットを利用します。

(※)InterSystems IRISまたはIRIS for Health

それぞれの方法は以下の通りです。

1)同一サーバにIISとCachéがインストールされている環境の「CACHE(CONVERSION)」でのアップグレード方法

a) インストーラーを起動します。

b) CACHE(CONVERSION)を選択します。

0 0
0 21

これは InterSystems FAQ サイトの記事です。

イベントログの削除には、Ens.Util.LogクラスのPurge()メソッドを使用します。実行時以下の引数を指定します。

第1引数:削除数(参照渡し)

第2引数:保持日数(デフォルト7)

メッセージの削除には、2種類の方法があります。

1) 2022.1.2以降の導入されたマルチプロセスで削除する方法

0 0
0 20

これは、InterSystems FAQサイトの記事です。


質問:

データ容量を見積もる計算式はありますか?


回答:

正確に見積もるための計算式は残念ながらありません。

InterSystems IRIS Data Platformの場合、データ部に関してはデータを全て可変長で格納しますので、各フィールドの平均がどのくらいであるかという目安の数字で平均レコード長を求め、キー部分も同様の計算を行い、必要な容量の推測値を求める必要があります。

インデックス部に関してはキー圧縮されますので、データと同じような上記の計算を行った推測値よりは少なくなることが期待できます。 ただしその圧縮率はデータの特性に大きく影響されますので、どの程度少なくなるかは一概には言えません。

実データのサンプル(例えば、1万件のデータ)をロードし、その時点でのサイズを確認して想定される件数分のデータ容量を推測するというのが現実的な方法となります。

0 0
0 18