全期間

CachéまたはEnsembleへの接続にStudio、ODBC、またはターミナルを使用している場合、その接続をどのように保護すれば良いのか疑問に思うかもしれません。 選択肢の一つに、TLS(別名SSL)を接続に追加することが挙げられます。 Cachéクライアントアプリケーション(TELNET、ODBC、Studio)にはすべて、TLSを接続に追加する機能があります。 あとは単純にその構成を行うだけです。

2015.1以降はこれらのクライアントを簡単に設定できるようになりました。 ここでは、その新しい方法について説明します。 既に古い方法を使用している場合も引き続き機能しますが、新しい方法への切り替えを検討することをお勧めします。

0 0
0 571

IRISでは.Net Bindingは非推奨機能となりました。


.Net Bindingを使ったアプリケーションは、IRISで提供されている.Net Native APIを利用して書き換えることができます。

ここでは、実際に書き換えをおこなったサンプルコードを示しながら、具体的な方法を説明していきます。

CacheDirect(VisM)エミュレーター

OpenExchangeに登録しているVisMエミュレーターは、元々Cachéの.Net Bindingを使用して作成されました。


それをIRISの標準機能で動作可能にするために、.Net Native APIを使用して書き換えをおこないました。

以下にどのように書き換えを行ったかを順を追って説明します。

参照の変更

まず以前の参照を削除します。

Visual Studioのソリューションエクスプローラーの所で参照をクリックします。

0 0
0 566

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

Windows システムにインストールされた InterSystems 製品を削除するには、コントロールパネルにあるプログラムの追加と削除(Windows 10の場合は、Windows の設定からアプリを選択)を使用します。

システムに変更を加えますので、管理者権限を持ったユーザでログインして作業を行う必要があります。

1) 管理者(Administrator)でシステムにログインします。

2) システムトレイから、アンインストールを行う InterSystems 製品インスタンスのランチャーを終了します(ランチャークリック → 終了)。

3)コントロールパネルにある プログラムの追加と削除 (Windows 10の場合は、Windows の設定からアプリを選択)で

<InterSystems製品> instance [xxxx] ( xxxx にはインスタンス名が表示されています) を削除します。

0 0
0 560

はじめに

システム開発では、集計作業や他システムとの連携など、数十秒ごとにバックグラウンドで処理を実行する、常駐プロセスが必要になるケースが多々あるかと思います。

Cachéでは、Jobコマンドを使って常駐プロセスを作成しますが、実際にシステムを安定稼働させるには、以下の監視の仕組みが必要でした。

  • 常駐プロセスの監視 常駐プロセス起動時にロックをかけ、二重起動を防止したり、プロセスが起動しているかどうかを監視する
  • ログ 常駐プロセスの処理状況や発生したエラーを記録し、処理が行われているどうかを監視する

IRISの場合、Interoperabilityにはこれらの機能が装備されています。したがって、Interoperabilityの機能を使えば、簡単に常駐プロセスを起動、監視することができます。

常駐プロセスの作り方

常駐プロセスの作成には以下の作業を行います。

0 0
0 558

CPU:サポート対象OSが問題なく動作するもの

以下のページをご参考ください。

サポート対象プラットフォーム


ディスク容量:アプリケーションの要件を除外した場合、 IRISをインストールするためには、最低1.5GB以上の空き容量が必要です。

0 0
0 555
記事
· 2021年4月29日 2m read
ミラーリングの機能について

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

InterSystems のミラーリングを使用することで、以下2つの目的を達成できます。

  1. 自動フェイルオーバ
  2. ディザスタリカバリや、ビジネスインテリジェンスのためのデータベースの複製

1 については、2台の InterSystems 製品を利用し、プライマリサーバの InterSystems 製品に障害が発生した場合は、もう片方の InterSystems 製品に自動フェイルオーバが行えるミラーリング構成です。

0 0
0 555
記事
· 2020年7月21日 10m read
Python Gateway パートIII:基本機能

この連載記事では、InterSystemsデータプラットフォーム用のPython Gatewayについて説明します。 また、InterSystems IRISからPythonコードなどを実行します。 このプロジェクトは、InterSystems IRIS環境にPythonの力を与えます。

  • 任意のPythonコードを実行する
  • InterSystems IRISからPythonへのシームレスなデータ転送
  • Python相互運用アダプタでインテリジェントな相互運用ビジネスプロセスを構築する
  • InterSystems IRISからのPythonコンテキストの保存、調査、変更、復元

その他の記事

現時点での連載計画です(変更される可能性があります)。

0 0
0 555
記事
· 2023年12月19日 11m read
Debezium ご存じでしょうか

Debeziumをご存じでしょうか?

グローバルサミット2023にて、Debeziumを題材としたセッション「Near Real Time Analytics with InterSystems IRIS & Debezium Change Data Capture」がありましたので、ご覧になられた方もおられるかと思います。

ご興味がありましたら、グローバルサミット2023の録画アーカイブをご覧ください。

FAQによると、"dee-BEE-zee-uhm"(ディビジウム..ですかね)と読むそうです。元素周期表のように複数のDB(s)を束ねる、というニュアンスみたいです。

CDC(Change data capture)という分野のソフトウェアです。

外部データベースでの変更を追跡して、IRISに反映したいという要望は、インターオペラビリティ機能導入の動機のひとつになっています。一般的には、定期的にSELECT文のポーリングをおこなって、変更対象となるレコード群(差分。対象が少なければ全件)を外部システムから取得する方法が、お手軽で汎用性も高いですが、タイムスタンプや更新の都度に増加するようなバージョンフィールドが元テーブルに存在しない場合、どうしても、各ポーリング間で重複や見落としがでないように、受信側で工夫する必要があります。また、この方法ではデータの削除を反映することはできませんので、代替案として削除フラグを採用するといったアプリケーションでの対応が必要になります。

CDCは、DBMSのトランザクションログをキャプチャすることで、この課題への解決策を提供しています。DebeziumはRedHatが中心となっているCDCのオープンソースプロジェクトです。

1 0
0 553

皆さまこんにちは。
IRIS for Healthを用いてFHIRの開発に携わっている者です。

FHIRリポジトリの導入を検討している方々に向けて、足がかり的な記事になればと思い投稿致します。

<アジェンダ>
■IISでの環境構築
■POSTMANを利用しないリソースへのデータアクセス
■Patientリソースの作成について
■FHIRリポジトリを使ってみての感想

■おまけEmbedded Pythonを使って、サンプルファイルからFHIRリソースへアクセスする方法

18 3
1 492

alt

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

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

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

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

1 0
0 552

この記事ではVMware ESXi 5.5以降の環境にCaché 2015以降を導入する場合の構成、システムのサイジング、およびキャパシティ計画のガイドラインを示します。

ここでは、皆さんがVMware vSphere仮想化プラットフォームについてすでに理解していることを前提としています。 このガイドの推奨事項は特定のハードウェアやサイト固有の実装に特化したものではなく、vSphereの導入を計画して構成するための完全なガイドとして意図されたものでもありません。これは、皆さんが選択可能なベストプラクティス構成をチェックリストにしたものです。 これらの推奨事項は、皆さんの熟練したVMware実装チームが特定のサイトのために評価することを想定しています。

0 0
0 552

開発者のみなさん、あけましておめでとうございます🎍 今年もどうぞよろしくお願いします!

さて、この記事では、IRIS ターミナルに(こっそり)追加された便利機能をご紹介します!(つい最近知りまして、びっくりしましたsurprise

2023/4/13 追記:Pythonシェルへ切り替えるメソッドのショートカットが追加されていたので返信欄に追記しました。

IRIS ターミナルで以前実行したコマンドを再実行する場合、上矢印キーを連打しながらコマンドを探されていると思うのですが、IRIS 2021.1 から履歴表示と、履歴番号を指定した実行ができるようになっていました!

では早速、履歴(history)の使い方をご紹介します。これがあれば、もう、上矢印キーを連打せずに以前実行したコマンドを再実行できます!!

6 1
0 529

iris コマンドを使用することで実行できます。
iris コマンド(iris.exe)は、<インストールディレクトリ>\bin にインストールされています。 書式:

iris run インスタンス名 tag^routine([parameter-list]) ネームスペース名
iris run インスタンス名 ##CLASS(package.class).method([parameter-list]) ネームスペース名

インスタンス名は、管理ポータル(システム管理ポータル)の右上にある [インスタンス:] に表示されている文字列です。

0 0
0 549

オリジナルの「InterSystems IRIS で Python を使って IMAPクライアントを実装する」は、埋め込みPythonを使用してIMAPインバウンドアダプタを実装されていますが、最近メールプロバイダがあいついでoAuth2認証しか受け付けなくなってきているので、その対応をしてみました。

本稿のGitHubはこちらです。

変更点

GMAILに対してメールの送受信を可能とするためにオリジナルに以下の修正を施しています。

1 0
0 549

開発者の皆さん、こんにちは。
IRIS for Health 2021.1がリリースされてからしばらくたちますが、多くのユーザさんにFHIRリポジトリ機能をお使いいただいています。
今日はFHIRリポジトリのサーバ側の処理をカスタマイズする機能をご紹介したいと思います。

この記事で紹介している内容のFHIRリポジトリカスタマイズに関するドキュメントマニュアルはこちらになります。

この記事はIRIS for Health 2021.1 をベースに記載しています。バージョンによってはカスタマイズに必要なクラスが異なることがあります(例えば2020.1では後述のRepoManagerクラスはまだありません。)

2 0
1 546

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

1. エクスポートAPI

a. ルーチンを個別に指定してエクスポートする場合は、$system.OBJ.Export() を使用します。

例:

do $system.OBJ.Export("TEST1.mac,TEST2.mac","c:\temp\routines.xml",,.errors)

指定する形式は ルーチン名.拡張子 で、拡張子は mac,bas,int,inc,obj を指定します。

エクスポート中のエラーは errors に格納されます。

$system.OBJ.Export() の詳細はクラスリファレンス %SYSTEM.OBJ を参照してください。

b. ワイルドカードを使用してエクスポートする場合にも、$system.OBJ.Export() を使用します。
例:

0 0
0 546

ここで紹介するサンプルは、以下のGitHubから入手可能です。

.NETサンプル

Powershellから.NETインタフェースを呼び出すサンプル1

callclassmethod.ps1というファイル名です。

処理内容は、Caché (IRIS)のバージョン情報を表示するという非常に単純なものです。

Caché では.Net Bindingを使用していましたが、IRIS用に.Net Native APIで書き換えてみます。

以前のCaché のコードは以下の通りです。

1 0
0 539

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

Windowsのコマンドプロンプトからターミナルを起動するには以下の様な操作を行います。

実行イメージの場所に移動します。

cd c:\interssytems\IRIS\bin

以下のコマンドを実行します。
 ( インスタンス名のデフォルトは「IRIS」です。)

iristerm.exe /console=cn_ap:<インスタンス名>[]

コンソールターミナルは以下のように実行します。

0 0
0 538

みなさんこんにちは! 今回は、IRIS 2024.1で実験的機能として実装されたVector Search (ベクトル検索)について紹介します。ベクトル検索は、先日リリースされたIRIS 2024.1の早期アクセスプログラム(EAP)で使用できます。IRIS 2024.1については、こちらの記事をご覧ください。

ベクトル検索でどんなことができるの?

ChatGPTをきっかけに、大規模言語モデル(LLM)や生成AIに興味を持たれている方が増えていると思います。開発者の方々の中には、中はどうなっているのか気になっている方も多いのではないでしょうか。実は、LLMや生成AIの仕組みを理解したいと思えば、ベクトルの理解は不可欠な要素となります。

ベクトルとは?

ベクトルは、高校の数学で習う「あの」ベクトルのことです。が、今回は、複数の数値をまとめて扱うデータ型であるという理解で十分です。例えば、

6 1
0 517

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

VSCodeのObjectScriptエクステンションを利用してInterSystems製品に接続するときに「プライベートWebサーバ (*1)」ではなく、「Webサーバ(IISやApache)」を利用される場合、接続時に使用するREST用パスが通るようにWebサーバに仮想パスを追加する必要があります。

(*1) プライベートWebサーバとは、バージョン2023.1以前のInterSystems製品をインストールすると自動でインストールされる簡易的なApacheで、52773番ポートで管理ポータルやWebアクセスのテストにご利用いただけるWebサーバです。(本番運用環境には適さない簡易的なWebサーバです)

対象バージョン:2023.1以下のInterSystems製品

追加が必要なパス: /api

0 0
0 535

初めに

Caché ActiveX Bindingは、Visual Basicでクライアント・サーバー型のアプリケーション開発を支援するためにInterSystemsが提供してきたツールです。

CacheActiveX.dllとCacheObject.dllの2種類のバージョンが存在します。

IRISでは、CacheActiveX.dllは動作可能です。

CacheObject.dllはサポートしていません。

いずれにしろ誕生から既に20年以上が経過した非常に古いテクノロジーでマイクロソフト社も非推奨の古い規格ですので、今後も使い続けるのは得策ではありません。

Caché ActiveX Bindingの機能はIRISに用意されている.Net Native APIと.Net Managed Providerの機能を使って書き換え可能です。

ここでは、Caché ActiveX Bindingを使って書かれていたサンプルアプリケーションをIRISで動作するように移植した作業内容について解説します。

このサンプルは、以下のgithubサイトから入手可能です。

0 0
0 533

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

[管理ポータル] > [システムオペレーション] > [ライセンス使用量] ページで表示される各項目の意味は以下のとおりです。

 ① 現在使用中のライセンス数:現時点のライセンスユニット使用数です。

② 最大ライセンス使用:インスタンスが起動した後、現在に至るまでで最もライセンス使用の大きかった時点の
            "現在使用中のライセンス数"です。

③ 許可されたライセンス数(Cache.Key/iris.keyの値):該当システムで許可されている最大ライセンスユニット数です。

④ 現在の接続:現時点のクライアントからの接続数です。

0 0
0 531

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

ダイナミックオブジェクトから JSON 文字列を生成するときに使用する %ToJSON() の引数にストリームオブジェクトを指定することでエラーを回避できます。

コード例は以下の通りです。

USER>set temp=##class(%Stream.TmpCharacter).%New()

USER>set jsonobj={}

USER>set jsonobj.pro1=["a","b","c","d"]

USER>set jsonobj.pro2=["あ","い","う","え"]

USER>do jsonobj.%ToJSON(temp)

USER>write temp.Size
51
USER>write temp.Read()
{"pro1":["a","b","c","d"],"pro2":["あ","い","う","え"]}

詳細はドキュメントもご参照下さい。

1 3
0 470

ObjectScriptには、エラー(ステータスコード、例外、SQLCODEなど)を処理する方法が少なくとも3つあります。 ほとんどのシステムコードにはステータスが使用されていますが、例外は、いくつかの理由により、より簡単に処理することができます。 レガシーコードを使用している場合、さまざまな手法の変換にいくらか時間が掛かりますが、 参考として、次のスニペットをよく使用しています。 皆さんのお役にも立てればと思います。

<

0 0
0 522

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

INFORMATION_SCHEMA スキーマを使用して取得できます。

INFORMATION_SCHEMA はシステム用スキーマのため、デフォルトでは管理ポータルのSQLメニューに表示されません。
表示させる方法は以下の通りです。

  1. 管理ポータル→システムエクスプローラ→SQL メニューを開きます。
  2. スキーマのプルダウン左にある「システム」をチェックします。
  3. スキーマのプルダウンから INFORMATION_SCHEMA を選択します。

0 0
0 522
記事
· 2020年10月22日 7m read
JSONの機能強化

InterSystems IRIS 2019.1は公開されてからしばらく経ちますが、気づかれていない可能性のある、JSONの処理の強化機能について説明したいと思います。 最新のアプリケーションを構築する際、特にRESTエンドポイントを操作する際は、JSONをシリアル化形式として扱うことが重要です。

0 0
0 519
記事
· 2023年10月3日 4m read
5つの便利なSQL関数のご紹介

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

この記事では、Muhammad Waseem さんが(US開発者コミュニティに)投稿された「SQLのスキルを次のレベルに引き上げることのできる5つの便利なSQL関数」の記事についてご紹介します。

✅ SQLに関わらず、IRIS/Caché全般で日頃利用されている便利な機能、使い方、関数などなどありましたら、ぜひコミュニティで共有いただければと思います。

✅ 現在「技術文書ライティングコンテスト」開催中です! 🎁 参加賞/特賞 🏆ありますので、ぜひチャレンジしてみてください!

以下、Muhammad さんの記事です。


この記事では、5つの便利なSQL関数の説明を実行例と共にご紹介します👇

  • COALESCE
  • RANK
  • DENSE_RANK
  • ROW_NUMBER
  • Function to Get Running Totals

まずは、COALESCE関数から始めてみましょう

0 0
0 517