数年ほど前、Caché Foundationsの講座(現「Developing Using InterSystems Objects and SQL」)において、%UnitTestフレームワークの基礎を講義していたことがあります。 その時、ある受講者から、ユニットテストを実行している間に、パフォーマンス統計を収集できるかどうかを尋ねられました。 それから数週間後、この質問に答えるために、%UnitTestの例にコードを追加したのですが、 ようやく、このコミュニティでも共有することにしました。

0 0
0 179

alt

この記事には、IAM の基本概念を学習するための、教材、例、演習が含まれます。

すべてのリソースはこちらの git から入手できます: https://github.com/grongierisc/iam-training

ソリューションは training ブランチにあります。

この記事では、次の点について説明します。

1 0
0 654
InterSystems公式
· 2021年4月24日
InterSystems Container Registryのご紹介

みなさん、こんにちは。
今回はInterSystems Container Registryを発表できることをうれしく思います。 これはコンテナベースのリリースやプレビューにアクセスする新たな配布チャンネルです。すべてのコミュニティエディションのイメージはログイン不要の公開リポジトリにあります。すべてのリリースイメージ(IRIS, IRIS for Health, Health Connect, System Alerting and Monitoring, InterSystems Cloud Manager) やユーティリティイメージ(アービター、 Web Gateway、PasswordHash等) にはWRCアカウントの認証情報から生成されるログイントークンが必要です。

0 0
0 389

はじめに (および本記事を書いた動機)

ObjectScript コードのユニット (ClassMethod など) を実行する場合、そのスコープ外にあるシステムの諸部分と対話するときに適切なクリーンアップを行えないことが原因で、様々な予期せぬ副作用が発生することがあります。 以下にその一部を紹介します。

0 0
0 366

先日、永続クラスとシリアルクラスからSwagger仕様を生成する必要がありました。そこで、その時のコードを公開することにします(完全なコードではないため、アプリケーション固有の部分を変更する必要がありますが、まずは出発点として使用できます)。 こちらからご利用ください。

次のクラスがあるとしましょう。

0 0
0 178

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

先日、RESTのクラスを使って、PDFなどのファイルをアップロード、ダウンロードするサンプルをお送りしたお客さんからご質問を頂きました。
ダウンロード機能を使ってmp4などの動画を表示させた場合、以下のようにvideoの画面下のスライダーを移動しても、再生を進めたり戻したりができませんでした

やはり、以下のようにスライダを動かすと、その時点の画像が表示されたほうが良いですね。

4 0
0 2.6K

++更新日:2018年8月1日

Cachéデータベースミラーリングに組み込まれているInterSystems仮想IP(VIP)アドレスの使用には、特定の制限があります。 具体的に言うと、ミラーメンバーが同じネットワークサブネットに存在する場合にのみ使用できるというところです。 複数のデータセンターを使用した場合は、ネットワークの複雑さが増すため、ネットワークサブネットが物理的なデータセンターを越えて「延伸」されることはさほどありません(より詳細な説明はこちらです)。 同様の理由で、データベースがクラウドでホストされている場合、仮想IPは使用できないことがよくあります。

ロードバランサー(物理的または仮想)などのネットワークトラフィック管理のアプライアンスを使用して、クライアントアプリケーションやデバイスに単一のアドレスを提示することで、同レベルの透過性を実現できます。 ネットワークトラフィックマネージャは、クライアントを現在のミラープライマリの実際のIPアドレスに自動的にリダイレクトします。 この自動化は、災害後のHAフェイルオーバーとDRプロモーションの両方のニーズを満たすことを目的としています。

0 0
0 579

(1NF/2NF/3NF) からの引用

行と列で特定される位置には、それぞれアプリケーションドメインの値が 1 つだけあります (それ以外は何もない)。
その目的によって、同じ値がアトミックであったり、なかったりします。 例えば、「4286」という値は、
  • 「クレジットカードの PIN コード」を意味するのであれば、アトミックとなります (破損している場合や並び替えられている場合は、使用できません)。
  • 単に「連続する番号」であれば、非アトミックとなります (いくつかに分割されていたり、並び替えられていても、値は意味を成します)。

この記事では、文字列や日付、($LB 形式の) 単純なリスト、「list of <...>」、「array of <...>」といったフィールドの型を伴う SQL クエリのパフォーマンスを向上させる標準的な方法にして検証します。

0 1
0 176
記事
· 2021年4月5日 11m read
WebSocketのチュートリアル

はじめに

Webで行われるサーバーとクライアント間のほとんどの通信は、リクエストとレスポンスの構造に基づいており、 クライアントがサーバーにリクエストを送信すると、サーバーがそのリクエストに対するレスポンスを送信します。 WebSocketプロトコルは、サーバーとクライアント間の双方向通信チャンネルを提供するプロトコルで、サーバーがリクエストを受信しなくても、クライアントにメッセージを送信することができます。 WebSocketプロトコルと、InterSystems IRISでの実装についての詳細は、以下のリンクをご覧ください。

0 0
0 3.6K

デベロッパーの方なら、反復的なコードを書いた経験があると思います。 プログラムを使ってコードを生成できたら楽なのに、と考えたことがあるかもしれません。 まさに自分のことだと思った方、ぜひこの記事をお読みください!

まずは例をお見せします。 注意: 次の例で使用する %DynamicObject インターフェースは Caché 2016.2 以上のバージョンが必要です。 このクラスに馴染みのない方は、Using JSON in Caché と題したドキュメンテーションをお読みください。 とても重宝すると思います!

0 0
0 275

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

ご存知かもしれませんが、インターシステムズ開発者コミュニティは仕事探しのお手伝いをしています。具体的には開発者自身の仕事探しと会社に必要なスタッフ探しです。インターシステムズ開発者コミュニティにアナウンスを投稿するだけで、探しているものが見つかります。

詳細については以下をご覧ください。

0 0
0 166

FHIR Terminology Serviceの仕様には、 CodeSystemValueSet、およびConceptMapリソースでの一連の演算子が記述されています。 これらの演算子の内、以下の4つの演算子が最も広く採用されているようです。

CodeSystem ValueSet
$lookup
$validate-code
$expand
$validate-code

IRIS for Health 2020.1で導入された新しいFHIRフレームワークを学ぶには、仕様の部分的な実装を開発するのが最も効果的と言えます。 実装には上記の4つの演算が含まれており、CodeSystemValueSetリソースでreadsearch操作がサポートされています。

実装には単純なObjectScript永続クラスがソース用語テーブルとして使用されていることに注意することが重要です。

0 0
0 305

HealthShare HealthConnect と Information Exchange のバージョン 15.03 では、C-CDA 2.1 から SDA へのインポートトランスフォーメーションをサポートしています。 こういったプログラムのビルドは、インストレーションパッケージの csp/xslt/SDA3 ディレクトリにあります。 インポートトランスフォーメーションの概要は、Overview of Health Connect の「CDA Documents and XSL Transforms in HealthShare」をご覧ください。

C-CDA 2.1 サポートに関連するインポート機能の強化の 1 つとして、 C-CDA ファイルをインポートする前に前処理を実行できる機能が追加されました

前処理サポートの導入により、トランスフォーメーションは大幅に簡素化され、その合計処理時間も削減されます。 考えられるユースケースは以下の 2 つです。

0 0
0 193

Caché 2013.1 より、InterSystems は特殊な値を持つフィールドが使われるクエリプランのセレクションを改善する目的で Outlier Selectivity (外れ値の選択性) を導入しました。

この記事では、「Project」テーブルを例に使い、Outlier Selectivity の概要やそれが SQL のパフォーマンスを向上させる仕組み、またクエリを書く際の注意点などについて解説したいと思います。

Selectivity (選択性)

まずは、Selectivity についてさっと説明します。 Selectivity とは、テーブル内の 1 つの列の中にある値に関するメタ情報のことです。 データが典型的なかたちで分布されていると想定した場合、「このテーブル内のこの列に特定の値を持つすべての行を要求するとしたら、通常取得できるのはテーブル内のどの程度の割合であろうか?」という疑問の答えとなる情報です。

0 0
0 175

開発者の皆さん
こんにちは!

この度、開発者コミュニティでの投稿や翻訳のポイントが2倍に引き揚げられました!
2021年3月18日以降、記事や質問の投稿で得られるポイントは以下の通りとなります。

✅ 200 ポイント(英語)
✅ 400 ポイント (スペイン語、ポルトガル語、中国語、日本語)


✅ 100 ポイント(翻訳記事の投稿)

また、一定数の記事やコメントを投稿すると、まとまったポイントがもらえることをご存知でしょうか?こちらをチェックしてください。

0 0
0 133

この記事では、従来のIRISミラーリング構成の代わりに、Kubernetesの Deploymentと分散永続ストレージを使って高可用性IRIS構成を構築します。 このデプロイでは、ノード、ストレージ、アベイラビリティーゾーンといったインフラストラクチャ関連の障害に耐えることが可能です。 以下に説明する方法を使用することで、RTOがわずかに延長されますが、デプロイの複雑さが大幅に軽減されます。

0 0
0 1.2K

InterSystems IRIS では、情報を格納する「グローバル」というユニークなデータ構造をサポートしています。 基本的に、グローバルとは、マルチレベルのインデックスを持つ永続配列であり、トランザクションの実行やツリー構造のスピーディなトラバーサルといった機能が備えられているほか、ObjectScript として知られるプログラミング言語にも対応しています。

ここから先、少なくともコードサンプルについては、グローバルの基礎を理解されているという想定のもとに話しを進めていきます。

グローバルはデータを保存するための魔法の剣です パート1
グローバルはデータを保存するための魔法の剣ですパート2 - ツリー
グローバルはデータを保存するための魔法の剣です パート3 - 疎な配列

0 0
0 985