記事 Toshihiko Minamoto · 2020年7月6日 24m read Microsoft Azure Resource Manager(ARM)向けInterSystemsサンプルリファレンスアーキテクチャ この記事では、InterSystems Technologiesに基づく、堅牢なパフォーマンスと可用性の高いアプリケーションを提供するリファレンスアーキテクチャをサンプルとして提供します。Caché、Ensemble、HealthShare、TrakCare、およびDeepSee、iKnow、Zen、Zen Mojoといった関連する組み込みテクノロジーに適用可能です。 Azureには、リソースを作成して操作するための、Azure ClassicとAzure Resource Managerという2つのデプロイメントモデルがあります。 この記事で説明する情報は、Azure Resource Managerモデル(ARM)に基づきます。 要約 Microsoft Azureクラウドプラットフォームは、InterSystems製品すべてを完全にサポートできるクラウドサービスとして、IaaS(サービスとしてのインフラストラクチャ)向けの機能の豊富な環境を提供しています。 あらゆるプラットフォームやデプロイメントモデルと同様に、パフォーマンス、可用性、運用、管理手順などの環境に関わるすべての側面が正しく機能するように注意を払う必要があります。 この記事では、こういった各分野の詳細について説明しています。 #Azure #Mirroring #クラウド #Caché #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 472
記事 Mihoko Iijima · 2020年10月27日 10m read 【はじめてのInterSystems IRIS】Interoperability(相互運用性):コンポーネントの作成(ビジネス・サービス) この記事はこちらの投稿の続きの内容です。 前回の記事では、システム統合に必要なコンポーネントの中から、プロダクション内の処理の調整役となるビジネス・プロセスの作成について解説しました。 今回の記事では、プロダクションの情報入力窓口である、ビジネス・サービスの作成について解説します。 #REST API #ビジネスサービス #初心者 #相互運用性 #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 471
記事 Mihoko Iijima · 2021年1月15日 2m read 文字列の前後の半角スペース及び全角スペースを取り除く方法 これは InterSystems FAQ サイトの記事です。 $ZSTRIP() 関数を使用します。 この関数を使用すると、指定文字列から、文字のタイプと文字を削除できます。 下記の例のように、第2引数で、"<"、">"、"<>"を指定することにより、SQLのLTRIM、RTRIM、TRIM関数と同等の処理が可能になります。 #ObjectScript #ヒントとコツ #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 471
記事 Toshihiko Minamoto · 2022年1月6日 9m read IRISデータベースへのPython JDBC接続 - 簡易メモ キーワード: Python、JDBC、SQL、IRIS、Jupyterノートブック、Pandas、Numpy、および機械学習 1. 目的 これは、デモの目的で、Jupyterノートブック内でPython 3によってIRIS JDBCドライバーを呼び出し、SQL構文でIRISデータベースインスタンスにデータを読み書きする、5分程度の簡単なメモです。 昨年、私はCacheデータベースへのPythonバインディング(セクション4.7)について簡単に触れました。 そこで、Pythonを使ってIRISデータベースに接続し、そのデータをPandasデータフレームとNumPy配列に読み込んで通常の分析を行ってから、事前処理済みまたは正規化されたデータをML/DLパイプラインに通すためにIRISに書き込む作業においてのオプションと議論について要約しましょう。 すぐに思い浮かぶ簡単なオプションがいくつかあります。 #JDBC #ODBC #Python #機械学習 #InterSystems IRIS 2 0 0 471
記事 Tomohiro Iwamoto · 2021年2月16日 19m read InterSystems IRIS デプロイガイド - AWS CloudFormation テンプレート - Windows編 目的 CloudFormationの記事は、Linux系のものが多いですが、Windowsでも自動化したいという需要がありそうですので、オリジナル記事を元に、CloudFormationを使用してミラークラスターをWindowsサーバにデプロイする例を実装してみました。また、簡単な実行例も追加しました。 ソースコード一式はこちらのGitレポジトリにあります。 更新: 2021年3月1日 ワンライナーで踏み台ホスト経由でWindowsに公開鍵認証する方法を追記しました 更新: 2022年11月29日 QuickStartの形式に合わせて大幅に変更しました。以前の内容はこちらに保存してあります。 更新: 2022年12月21日 踏み台ホストの使用を止め、代わりにAWS System Manager(SSM)を有効化しました。プライベートサブネット上のインスタンスへのアクセスが簡素化されます。以前の内容はこちらに保存してあります。 #AWS #Mirroring #クラウド #デプロイ #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 466
記事 Megumi Kakechi · 2021年6月3日 5m read Javaから配列のような複数項目のデータを渡す方法 Java のプログラムで $List 構造のデータを扱うには、InterSystems 製品が提供する IRISList クラスを使用することが可能です。 こちらは、IRIS Native と同様に JDBCドライバの拡張機能の一部として提供しております。 Native API for Java Quick Reference(英語のみ) こちらでは、InterSystems 製品上に $List 構造を扱うクラスメソッドを作成し、それをストアドプロシージャとして公開し Java から呼び出すサンプルをご紹介します。 【使用可能バージョン】 IRIS 2020.1 以降に同梱されている JDBC ドライババージョン 3.1.0 以降。ただし、JDBCで使用する場合は 3.2.0以降(IRIS2021.1以降)。 #Java #JDBC #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 465
記事 Mihoko Iijima · 2021年8月23日 4m read データベースファイルのサイズを圧縮する方法 これは InterSystems FAQ サイトの記事です。 ※データベースファイルとは、IRIS.DAT、および、CACHE.DATのことを指します。 Caché/Ensemble 2018.1.4、IRIS 2019.1.2/2020.1.0 以降のバージョンより、データベースファイル のサイズの縮小に、データベースの「圧縮」と「未使用領域の削除」機能をあわせて使用できます。 #システム管理 #ヒントとコツ #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 1 0 0 457
記事 Toshihiko Minamoto · 2020年11月12日 15m read Prometheus で InterSystems Caché を監視する Prometheus は時系列データの収集に適した監視システムです。 #システム管理 #監視 #視覚化 #Caché 0 3 0 444
記事 Mihoko Iijima · 2021年5月23日 2m read VDOC (仮想ドキュメント)とは? これは InterSystems FAQ サイトの記事です。 仮想ドキュメント(以降VDOC)とは複雑な構造のドキュメント(メッセージ)を効率良く高速に処理するために考えられたメッセージ処理の仕組みです。 HL7に代表される EDI 標準は電子データ交換のための汎用的なかなり複雑なメッセージ形式を含んでいます。 また、メッセージの種類を増やすと運用が複雑になってしまうため、1 つのメッセージに様々なデータを詰め込む傾向があります。 その結果 1 つのメッセージは複雑かつデータ量が多いものになりがちです。 一方、実際のメッセージ交換では、メッセージの全てのデータを処理することはまれで一部のデータのみが必要となるケースがほとんどです。 #HL7 #XML #相互運用性 #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 440
記事 Mihoko Iijima · 2020年6月28日 1m read 【はじめての InterSystems IRIS】セルフラーニングビデオ:アクセス編:Python から PyODBC を使って IRIS に接続してみよう Python から InterSystems IRIS へ接続する方法の1つである「PyODBC」(※)の利用方法をご説明します。 ※ Python からのアクセスは、PyODBCの他に、Native API を利用した接続方法もあります。Native APIを利用してIRISのグローバル変数にアクセスする方法については、別の記事でご説明します。 #ODBC #Python #ビデオ #初心者 #InterSystems IRIS #InterSystems IRIS for Health #学習ポータル 0 4 0 435
記事 Tomohiro Iwamoto · 2020年6月5日 18m read InterSystemsデータプラットフォームとパフォーマンス –パート3: CPUに注目 今週は、ハードウェアの主な”食品群” (^_^) の1つであるCPUに注目します。お客様から、次のようなシナリオについてのアドバイスを求められました。お客様の本番サーバーはサポート終了に近づいており、ハードウェアを交換する時期が来ています。 また、仮想化によってサーバーを一元的に管理できるようにし、ベアメタルか仮想化によりキャパシティを適正化したいとも考えています。 今日はCPUに焦点を当てますが、後日の記事では、メモリやIOといったほかの主要食品群を適正化するアプローチについて説明したいと思います。 では、質問を整理しましょう。 #システム管理 #パフォーマンス #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 431
記事 Mihoko Iijima · 2020年6月28日 1m read 【はじめての InterSystems IRIS】セルフラーニングビデオ:基本その2:InterSystems IRIS で開発をはじめよう! 基本操作編ビデオシリーズ:その2 IRIS で開発を始めるために必要な準備について以下の内容をご説明します。 管理ポータルの起動方法 ネームスペースの作成方法 IDEからIRISへ接続する方法 もくじ 最初から ~ 6:50 管理ポータルの開き方とメニューについて 7:03 ~ 12:50 ネームスペースとデータベースについて 12:50 ~ 17:10 ネームスペース、データベースの作成実演 17:10 ~ 20:50 スタジオを使用する場合の設定内容 #ビデオ #初心者 #InterSystems IRIS #InterSystems IRIS for Health #学習ポータル 0 0 0 429
記事 Megumi Kakechi · 2022年8月22日 14m read IRISで使用できるユーティリティ一覧 InterSystems IRIS で使用できるユーティリティの一部を一覧でご紹介します。 以下の表の各ユーティリティ名をクリックすると、ユーティリティの詳細情報をご覧いただけます。 #システム管理 #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 6 2 0 426
質問 Seiji Hirose · 2021年2月23日 Excel(VBA)でのIRISアクセスについて 弊社では、Cacheの時からExcel(VBA)を使用して、Cache側のクラス定義を抽出して画面に表示する、という開発サポートツールを作成して使用していました。 今回、IRISベースでの開発に移行するにあたって、このExcel(VBA)の動作確認をしました。 実施したことは、VBAのエディタ画面にあるメニューから「ツール」→「参照設定」へと進み、表示される選択リストの「CacheActiveX3.0[IRIS] Type Library」を選択しなおすことで、VBAのコードを変更することなく動作する事が確認できました。 このようなExcel(VBA)への対応はカットされたのではないかと不安がありましたが、流石ですね、ちゃんとカバーされていました。 なお、Type Libraryの名称が「CacheActiveX」で始まっていたのはご愛嬌でしょうか?Cache経験者であれば、問題ないと思いましたが、IRISから使い始めた方にとっては、少々困惑されるかも、と感じました。 Excel(VBA)でIRISに接続する事例がどの程度存在するのかは不明ですが、Excel(VBA)でIRISに接続できると便利だと感じています。今時ですから、ODBC を使った方が分かりやすいかも知れませんね。 #InterSystems IRIS 1 8 0 423
記事 Tomohiro Iwamoto · 2020年8月13日 7m read AWS上にて稼働中のInterSystems IRISの管理ポータルとの通信を暗号化(https)する方法 本記事について InterSystems IRISは、管理ポータルへのアクセス方法がデフォルトではhttpとなっており、クライアントが社内、サーバがクラウドという配置の場合、なんらかの方法でトラフィックを暗号化したいと考える方も多いかと思います。そこで、AWS上にて稼働中のIRISの管理ポータル(あるいは各種RESTサービス)との通信を暗号化する方法をいくつかご紹介したいと思います。 本記事では、アクセスにIRIS組み込みのapacheサーバを使用しています。ベンチマーク目的や本番環境のアプリケーションからのアクセス方法としては使用しないでください。短期間・少人数での開発・動作検証・管理目的でのアクセスを暗号化する事を想定しています。 ドメイン名とメジャーな認証局発行のSSLサーバ証明書を用意できればベストなのですが、上記のような用途の場合、コスト面でなかなか難しいと思います。ですので、下記の証明書の使用を想定しています。- 自己署名(いわゆるオレオレ証明書)- 自分で建てた認証局で署名した証明書(いわゆるオレオレ認証局) また、下記のような実行環境を想定しています。 #AWS #セキュリティ #管理ポータル #開発環境 #InterSystems IRIS #InterSystems IRIS for Health 1 0 0 422
記事 Toshihiko Minamoto · 2021年3月15日 16m read InterSystems IRIS のグローバルを使ったトランザクション。 InterSystems IRIS では、情報を格納する「グローバル」というユニークなデータ構造をサポートしています。 基本的に、グローバルとは、マルチレベルのインデックスを持つ永続配列であり、トランザクションの実行やツリー構造のスピーディなトラバーサルといった機能が備えられているほか、ObjectScript として知られるプログラミング言語にも対応しています。 ここから先、少なくともコードサンプルについては、グローバルの基礎を理解されているという想定のもとに話しを進めていきます。 グローバルはデータを保存するための魔法の剣です パート1 グローバルはデータを保存するための魔法の剣ですパート2 - ツリーグローバルはデータを保存するための魔法の剣です パート3 - 疎な配列 #グローバル #データベース #データベースのトランザクション処理 #Caché #InterSystems IRIS 0 0 0 419
記事 Minoru Horita · 2020年7月28日 2m read Python Gateway パート V:Execute関数 この連載記事では、InterSystemsデータプラットフォーム用のPython Gatewayについて説明します。 また、InterSystems IRISからPythonコードなどを実行します。 このプロジェクトは、InterSystems IRIS環境にPythonの力を与えます。 任意のPythonコードを実行する InterSystems IRISからPythonへのシームレスなデータ転送 Python相互運用アダプタでインテリジェントな相互運用ビジネスプロセスを構築する InterSystems IRISからのPythonコンテキストの保存、調査、変更、復元 その他の記事 現時点での連載計画です(変更される可能性があります)。 #Python #InterSystems IRIS Open Exchange app 0 0 0 416
記事 Mihoko Iijima · 2022年2月4日 7m read Embedded Python 試してみました 開発者の皆さん、Python好きの皆さん、こんにちは! ドキュメントをみながら IRIS 2021.2 に追加された Embedded Python を試してみました! IRIS にログインしてるのに Pythonシェルに切り替えできて Python のコードが書けたり、Python で import iris するだけで SQL を実行できたりグローバルを操作できるので、おぉ!✨という感じです。 ぜひ、みなさんも体感してみてください! では早速。 まず、IRISにログインします。Windows ならターミナルを開きます。Windows 以外は以下実行します。 #Embedded Python #ObjectScript #Python #SQL #オブジェクトデータモデル #初心者 #InterSystems IRIS #InterSystems IRIS for Health 4 0 0 407
記事 Mihoko Iijima · 2020年10月27日 12m read 【はじめてのInterSystems IRIS】Interoperability(相互運用性):コンポーネントの作成(ビジネス・オペレーション) この記事はこちらの投稿の続きの内容です。 前回の記事では、コンポーネント間のデータ送受信に使用される メッセージ について、作成するときの考え方や定義方法を確認しました。 今回の記事では、コンポーネントの作成方法の中から、ビジネス・オペレーションの作成について解説します。 #ビジネスオペレーション #初心者 #相互運用性 #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 407
記事 Mihoko Iijima · 2020年7月20日 1m read 【はじめてのInterSystems IRIS】セルフラーニングビデオ:アクセス編:IRIS で作成する REST サーバの仕組み IRIS で作成する REST サーバの仕組みを解説します。 このビデオには、以下の関連ビデオがあります。 #REST API #ビデオ #初心者 #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 406
記事 Mihoko Iijima · 2020年10月27日 8m read 【はじめてのInterSystems IRIS】Interoperability(相互運用性):コンポーネントの作成(ビジネス・プロセス) この記事はこちらの投稿の続きの内容です。 前回の記事では、システム統合に必要なコンポーネントの中から、ビジネス・オペレーションの作成について解説しました。 今回の記事では、確認した2つのビジネス・オペレーションを順番を守って呼び出しを行うビジネス・プロセスの作成について解説します。 #ビジネスプロセス(BPL) #初心者 #相互運用性 #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 404
記事 Toshihiko Minamoto · 2021年1月19日 5m read 気象データを取得するセンサーをBME280に変更する 皆さん、こんにちは。寒い日が続きますね。前々回の記事でDHT11とBMP180を使って作成したのですが、実際に外に置いて計測してみると、氷点下の場合、12~13℃となってしまい、正しく計測できませんでした。(先にデータシートを確認しておけばよかったのですが、DHT11、BMP180共に0℃以上になっていました...)そこで代わりのセンサーが無いか探していたところ、BME280というセンサーが見つかりました。-40℃から85℃まで測れ、BMP180と同じBosch製で値段も数百円。 #IoT #InterSystems IRIS 0 0 0 399
記事 Toshihiko Minamoto · 2020年12月21日 9m read $LIST のフォーマットと%DynamicArray 、%DynamicObject クラス $LIST のフォーマットと%DynamicArray、%DynamicObject クラス IRIS には、様々なデータ値を含むシーケンスを作成する方法がいくつかあります (以前は Cache にもありました)。 長年に渡り使用されているデータシーケンスの 1 つに $LIST の文字列があります。 より最近のデータシーケンスには %DynamicArray クラスと %DynamicObject クラスがあり、両者ともに JSON の文字列表現に対応する IRIS サポートの一部となっています。 これら 2 つのシーケンスにはそれぞれ非常に異なるトレードオフがあります。 $LIST の文字列形式 $LIST 形式は、かつてメモリアドレスのスペースが小さいだけでなく、ディスクドライブも小さく、読み取り速度が遅かった時代に考案されました。 $LIST の形式は、複数の異なるデータ型で構成されるシーケンスをバイト数を可能な限り抑えながら 8 ビットの一般的な文字列にパッキングするためにデザインされました。 $LIST のシーケンスは、ObjectScript の $LISTBUILD 関数を使って作成します。 #JSON #ObjectScript #ベストプラクティス #Caché #InterSystems IRIS 0 0 0 397
記事 Toshihiko Minamoto · 2020年8月17日 25m read VM Backups and Caché freeze/thaw scripts この記事では、スナップショットを使用したソリューションとの統合の例を使って、外部バックアップによる Caché のバックアップ方法を紹介します。 このところ私が目にするソリューションの大半は、Linux の VMware にデプロイされているため、この記事の大半では、例として、ソリューションが VMware スナップショットテクノロジーをどのように統合しているかを説明しています。 Caché バックアップ - すぐ使えますか? Caché をインストールすると、Caché データベースを中断せずにバックアップできる Caché オンラインバックアップが含まれています。 しかし、システムがスケールアップするにつれ、より効率的なバックアップソリューションを検討する必要があります。 Caché データベースを含み、システムをバックアップするには、スナップショットテクノロジーに統合された外部バックアップをお勧めします。 #Mirroring #ヒントとコツ #インターシステムズビジネスソリューションとアーキテクチャ #システム管理 #デプロイ #バックアップ #Caché #InterSystems IRIS #InterSystems IRIS for Health #ドキュメント 0 0 0 397
記事 Toshihiko Minamoto · 2021年10月28日 8m read REST経由でファイル転送しプロパティに格納する - パート1 #REST API #InterSystems IRIS Open Exchange app 0 0 0 393
記事 Tomohiro Iwamoto · 2020年7月16日 25m read InterSystemsデータプラットフォームとパフォーマンス - パート9 InterSystems IRIS VMwareのベストプラクティスガイド この記事ではVMware ESXi 5.5以降の環境にCaché 2015以降を導入する場合の構成、システムのサイジング、およびキャパシティ計画のガイドラインを示します。 ここでは、皆さんがVMware vSphere仮想化プラットフォームについてすでに理解していることを前提としています。 このガイドの推奨事項は特定のハードウェアやサイト固有の実装に特化したものではなく、vSphereの導入を計画して構成するための完全なガイドとして意図されたものでもありません。これは、皆さんが選択可能なベストプラクティス構成をチェックリストにしたものです。 これらの推奨事項は、皆さんの熟練したVMware実装チームが特定のサイトのために評価することを想定しています。 #システム管理 #Caché #InterSystems IRIS #InterSystems IRIS for Health #ドキュメント 0 0 0 392
記事 Mihoko Iijima · 2022年6月28日 5m read 【はじめてのInterSystems IRIS】Embedded Python セルフラーニングビデオシリーズ公開! 開発者の皆さん、こんにちは! この記事では、Embedded Pythonをご自身の好きなタイミングで学習できる📚セルフラーニングビデオ📚の YouTube プレイリストをご紹介します! 👆こんな具合に👆学習内容別 Embedded Python セルフラーニングビデオを公開しています! この記事では、これから Embedded Python でプログラミングを開始してみたい方向けに最適なビデオをご紹介します! #Embedded Python #SQL #オブジェクトデータモデル #グローバル #ビデオ #初心者 #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 390
記事 Mihoko Iijima · 2020年9月29日 2m read SQLで最後に更新したIDを取得するには? これはInterSystems FAQ サイトの記事です。 LAST_IDENTITY() SQL関数を使用すると取得できます。※ この関数は、埋め込み SQL または ODBC 利用時に使用できます。ダイナミック SQL、SQL シェル、または管理ポータルの SQL インタフェースによる値には設定されません。 簡単な埋め込み SQL での例をご紹介します。 #ODBC #SQL #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 388
記事 Tomohiro Iwamoto · 2020年6月5日 27m read InterSystemsデータプラットフォームとパフォーマンス-パート4: メモリの確認 この記事では、InterSystemsデータプラットフォームで実行するデータベースアプリケーションにおけるグローバルバッファ、ルーチンバッファ、gmheap、locksizeなどの共有メモリ要件のサイジングアプローチを説明し、サーバー構成時およびCachéアプリケーションの仮想化時に検討すべきパフォーマンスのヒントをいくつか紹介します。 これまでと同じように、Cachéについて話すときは、すべてのデータプラットフォーム(Ensemble、HealthShare、iKnow、Caché)を指しています。 #システム管理 #パフォーマンス #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 388
記事 Tomoko Furuzono · 2021年6月29日 2m read .NETからInterSystems IRISへ接続する方法 これは、InterSystems FAQサイトの記事です。以下の7つの技術を用いて、VB.NETからInterSystems IRISへ接続し使用することができます。 (A) InterSystems IRIS ADO.NET Managed Provider を利用するInterSystems ADO.NET Managed Provider では、ADO.NET 準拠データベースとして InterSystems IRIS にアクセスでき、データへの簡単なリレーショナル・アクセスを提供します。特に ADO.NET を以前に使用したことのあるユーザにお勧めです。詳細は、以下ドキュメントをご参照ください。InterSystems IRIS ADO.NET Mnaged Providerについて #.NET #InterSystems IRIS 0 0 0 386