記事 Megumi Kakechi · 2022年10月3日 1m read InterSystems IRIS は 2フェーズコミットをサポートしていますか? これは InterSystems FAQ サイトの記事です。 Question: InterSystems IRIS は 2フェーズコミットをサポートしていますか? Answer: サポートしていません。 2フェーズコミットはデータベースシステムがサポートしているだけでは十分ではなく、アプリケーションサーバ等の各実装が定めている2フェーズコミットのプロトコルを駆使して、アプリケーションを構築する必要があります。 また関連するシステムの全てのコンポーネントが対応している必要がある、ロングトランザクションには向いていないなど、現実に実装する局面では様々な制約事項があります。 2フェーズコミットは、技術面、設計および実装面、コスト面、性能面などハードルが非常に高いため、実際には限られた領域での利用に留まっています。 #システム管理 #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 95
記事 Megumi Kakechi · 2022年9月21日 2m read SQL ゲートウェイを使用した外部データベースへのアクセス方法について SQL ゲートウェイ接続を使用した、外部データベースへのアクセス方法についてご説明します。 手順は以下になります。 1. 外部ソースへの SQL ゲートウェイ接続の作成を行います ※こちらの例では、IRISの別インスタンスへの接続を試しています。 ※ODBCを使用される場合は、事前にシステムDSN(64bit)の準備が必要です。管理ポータルより [システム管理] > [構成] > [接続性] > [SQLゲートウェイ接続] の 新規接続作成 ボタンをクリックします。 接続の種類を選択し、必要項目を設定します。以下のサンプルは、ODBC接続(別IRISインスタンスのDSN設定)を行っています。 #JDBC #ODBC #SQL #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 529
記事 Megumi Kakechi · 2022年9月9日 3m read データベースをバックアップする際の停止時間をできるだけ短くしたいとき これは InterSystems FAQ サイトの記事です。外部バックアップ機能と、SANソリューションが提供するスナップショット(スナップクローン、ミラークローンなど呼び方はベンダ毎に異なります)などのテクノロジを利用することで、バックアップ時のインスタンス停止時間を最短にすることができます。 操作手順概要は以下の通りです。 #システム管理 #バックアップ #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 239
記事 Megumi Kakechi · 2022年9月5日 2m read Web経由でイメージファイルを IRIS にアップロード/ダウンロードする方法 これは InterSystems FAQ サイトの記事です。 Web 経由でのイメージファイルのアップロード/ダウンロードを行うサンプルをご紹介します。サンプルでは、以下の手順でファイルの「アップロード/ダウンロード」を行っています。 Stream型のプロパティをもったクラスを用意する upload ボタン押下でイメージファイルをIRISサーバにアップロードする アップロードされたデータを %request.MimeData で受け取り CopyFromAndSave メソッドを使ってコピー&1 のクラスに保存する アップロードされたファイルを画面に表示する download ボタンを押下し、1 のクラスに保存したファイルをローカルにダウンロードする。 サンプルプログラムの使い方は次のとおりです。 #CSP #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 253
記事 Megumi Kakechi · 2022年8月30日 4m read 各アクセス方法(ダイレクト/SQL/オブジェクトアクセス)による速度の違いについて これは InterSystems FAQ サイトの記事です。InterSystems IRIS Data Platform(以下IRISと表記)ではマルチモデルのサポートにより、データに対して様々なアクセス手法を使用することができます。 主だったアクセス手法としてダイレクトアクセス、SQLアクセス、オブジェクトアクセスがあります。 ダイレクトアクセス は、IRISのネイティブ構造であるグローバルと呼ばれるキーバリュー型のデータに直接アクセスする方法です。 SQLアクセス は、リレーショナルデータベースシステムにアクセスするための標準言語であるSQLを使用してデータにアクセスする方法です。 #システム管理 #パフォーマンス #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 426
記事 Megumi Kakechi · 2022年8月22日 16m read IRISで使用できるユーティリティ一覧 InterSystems IRIS で使用できるユーティリティの一部を一覧でご紹介します。 以下の表の各ユーティリティ名をクリックすると、ユーティリティの詳細情報をご覧いただけます。 #システム管理 #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 6 2 1 1.3K
記事 Megumi Kakechi · 2022年8月18日 1m read クライアントからターミナルにログインできない場合のチェック項目について これは InterSystems FAQ サイトの記事です。 クライアントからターミナルにログイン(接続)できない時、ターミナル接続を可能にするサービスが有効になっていないことが原因として考えられます。 ターミナル接続を可能にするサービスが有効になっていないことが原因として考えられます。 管理ポータル :[ホーム] > [システム管理] > [サービス] 有効になっていない場合は、リンクをクリックしてサービス定義編集画面を開き、"サービス有効"にチェックを入れて保存します。 もう一つの原因としてはOSのファイアウォールによりターミナル接続が遮断されている場合が考えられます。 リモートでターミナル接続される場合はファイアウォールの設定を無効にしてお使い下さい。 #システム管理 #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 412
記事 Megumi Kakechi · 2022年8月8日 3m read テーブルデータ一括削除の際にジャーナルデータを最小限にする方法 これは InterSystems FAQ サイトの記事です。 テーブル(クラス) のデータを削除する際に %KillExtent() というメソッドを使用すると、レコードを1ずつ削除するのではなく、データを格納しているデータグローバル、インデックス定義のグローバル(ノード) をまとめて 削除することができます。 #システム管理 #ジャーナリング #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 279
記事 Megumi Kakechi · 2022年7月31日 2m read 任意のカスタムエラーを発生させる方法 これは InterSystems FAQ サイトの記事です。TRYブロック内で任意のカスタムエラーを発生させたい場合、以下のように throw で例外を渡すことが可能です。 以下のサンプルでは、Stcount が 1 より小さい場合にカスタムエラーを発生させています。 #ObjectScript #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 1 295
記事 Megumi Kakechi · 2022年7月26日 5m read Embedded Python:lxmlを使用しWebスクレイピングした表の結果をグローバルに格納する Embedded Python で Excel のデータを IRIS グローバルに格納する方法 では Excel データを pandas.DataFrame に取り込んで、それを InterSystems IRIS グローバルに保存する方法をご紹介しました。 今回は「lxml を使用し Web スクレイピングした表(テーブル)のデータを InterSystems IRIS グローバルに格納する」方法をご紹介します。 ※以下は Windows 上の IRIS でのインストール方法になります。 UNIX ベースのシステムでは、pip3 コマンドを使用してインストールします。詳細は ドキュメント をご覧ください。 #Embedded Python #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 2 0 0 267
記事 Megumi Kakechi · 2022年7月3日 2m read $ZF(-100)でOSコマンド実行した際に <NOTOPEN> エラー または -1 が返る理由 これは InterSystems FAQ サイトの記事です。 バージョン2015.2以降から、Windows上のインストール環境では、サービス・アカウントを 「Windowsコントロールパネル > 管理ツール > サービス > InterSystems IRIS/Cache Controller for XX」の「ローカル・システムアカウント」から Windows の任意の管理者アカウントに変更した場合に <NOTOPEN> エラー または -1 が返ります。 この状況を回復するためには、以下2つの設定をする必要があります。 #システム管理 #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 489
記事 Megumi Kakechi · 2022年6月29日 1m read ODBCツール等からアクセスした際に表示されるカラム順を制御する方法 これは InterSystems FAQ サイトの記事です。 デフォルトではテーブルのカラムの順番はシステムが自動的に決定します。 順番を変更するにはクラス定義を行う際にプロパティ・キーワード SqlColumnNumber でプロパティ毎に明示的に順番を設定してください。 例: Property Name As %String [SqlColumnNumber = 2]; ドキュメントは以下をご参照ください。 #SQL #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 150
記事 Megumi Kakechi · 2022年5月31日 4m read Embedded Python で IRIS グローバル($LB) を Pandas Dataframe に変換する方法 InterSystems IRIS 2021.2 のバージョンより、Embedded Python を使用できるようになりました。 Embedded Python で Excel のデータを IRIS グローバルに格納する方法 では pandas.DataFrame のデータを InterSystems IRIS グローバルに保存する方法をご紹介しました。こちらの記事では、その逆の「InterSystems IRIS グローバル($LB) を pandas.DataFrame に変換する」方法をご紹介します。 #Embedded Python #Python #InterSystems IRIS #InterSystems IRIS for Health 2 1 0 405
記事 Megumi Kakechi · 2022年5月25日 2m read 設定されているネームスペース一覧をプログラムで取得する方法 これは、InterSystems FAQサイトの記事です。%SYS.Namespace クラスの List クエリで取得することができます。 次のようなルーチンを作成し、ターミナルで実行してください。 1. サンプルの作成 #システム管理 #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 1 0 0 305
記事 Megumi Kakechi · 2022年5月6日 1m read なぜフラグメントが発生しにくいのか これは、InterSystems FAQサイトの記事です。InterSystems製品では、永続データは後で高速にランダムアクセスできるように、ある一定の規則に沿ってキー順にソートされて格納されます。 新しいノードが追加された場合、ノードが削除された場合、データの長さが変更された場合など、データの構造変化が起こる度に、その並び順を維持できるようまた無駄な領域が発生しないように動的なデータの配置変えを実施します。 従って、常にデータはきれいに整理された状態で格納されるため、無駄な空き領域が発生しません。 これらの並べ替えの作業は、書き換えのコストのかかる処理ですが、InterSystems製品では、これらの処理はなるべくメモリ(キャッシュ)上で実行し、ディスクI/Oを軽減することにより、性能の劣化を抑えています。 #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 153
記事 Megumi Kakechi · 2022年5月6日 1m read InterSystems IRIS Data Platformはリレーショナルデータベースと何が違うのか これは、InterSystems FAQサイトの記事です。InterSystems IRIS Data Platform(以下IRISと表記)はSQLのサポートをはじめ、リレーショナルデータベースとの高い互換性を有します。 さらに、IRISは多次元データエンジンをベースにしており、通常のリレーショナルデータベースシステムに比べて柔軟なデータ構造を持つことができ、一般的にパフォーマンス、スケーラビリティ、データ保守性に優れています。 また完全なオブジェクト指向をサポートしており、Javaなどのオブジェクト指向開発環境との親和性という点でも優れています。 #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 317
記事 Megumi Kakechi · 2022年4月17日 4m read Embedded Python で Excel のデータを IRIS グローバルに格納する方法 InterSystems IRIS 2021.2 のバージョンより、Embedded Python を使用できるようになりました。Embedded Python については、「Embedded Pythonを簡単にご紹介します」の記事をぜひご覧ください。 こちらでは、Embedded Python を使用して Excel のデータを IRIS グローバルに出力する方法をご紹介します。 最初に、irispip コマンドで必要なライブラリをインストールします。今回は、pandas、xlrd、openpyxl の3つのライブラリをインストールします。 #Embedded Python #Python #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 3 2 1 757
記事 Megumi Kakechi · 2022年3月31日 1m read インスタンス(構成)名を変更する方法 これは、InterSystems FAQサイトの記事です。 Windowsでは、変更することはできませんが、Unix系プラットフォームでは、iris rename コマンドを使用することで変更できます。 iris rename instname(現インスタンス名) newname(新インスタンス名) iris rename コマンドの詳細は、以下ドキュメントをご参照くださいiris コマンドについて #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 218
記事 Megumi Kakechi · 2022年3月23日 3m read ジャーナルレコードに記録されるタイプについて これは、InterSystems FAQサイトの記事です。ジャーナル・ファイルの処理でジャーナルファイルに記録されるタイプが、それぞれどのような状況下で記録されるのかについて説明します。 #システム管理 #ジャーナリング #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 234
記事 Megumi Kakechi · 2022年3月3日 3m read IRISTEMPデータベースでどの一時グローバルがサイズ消費しているかを特定する方法 これは、InterSystems FAQサイトの記事です。ある処理において、データを無期限に保存する必要がなくグローバルの強力な性能が必要になる場合に、IRISTEMP/CACHETEMP データベースに保存される一時グローバルが使用されます。IRISTEMP/CACHETEMPデータベースはジャーナルされないので、一時グローバルの使用ではジャーナルファイルは作成されません。 IRISTEMP/CACHETEMP データベースは、システムで一時ストレージ用に使用され、ユーザも同じ用途で使用することができます。 一時グローバルとIRISTEMPデータベースの詳細については、以下のドキュメントをご覧ください。一時グローバルと IRISTEMP データベース #グローバル #システム管理 #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 1 408