記事 Megumi Kakechi · 2021年11月15日 1m read Webゲートウェイ/CSPゲートウェイの設定についての注意点(Apache) これは InterSystems FAQ サイトの記事です。 SELinuxの機能が有効になっているとファイルアクセス時にセキュリティコンテキストのチェックで permission エラーになります。 CSP のページについても同様に permission エラーになっているため、Apache にて 403 Forbidden エラーになります。 以下の設定でSELinuxの機能を無効にすることで回避できます。 設定ファイル /etc/selinux/config の SELINUX=disableに設定し、OS の再起動を行います。 例: #セキュリティ #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 261
記事 Megumi Kakechi · 2022年2月23日 1m read ジャーナルファイルの使用量をチェックする方法 これは、InterSystems FAQサイトの記事です。現ジャーナルファイル名の取得は、ジャーナリング API を利用します。 ##class(%SYS.Journal.System).GetCurrentFileName() 現ジャーナルファイルの使用量bytesの取得は、ジャーナリング API を利用します。 ##class(%SYS.Journal.System).GetCurrentFileOffset() 実行例は以下の通りです。 #ジャーナリング #ヒントとコツ #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 120
記事 Toshihiko Minamoto · 2022年6月2日 15m read プログラムでミラーをセットアップする方法 コミュニティの皆さん、こんにちは。 今までにミラーリング環境をセットアップされたことはありますか? プライベートネットワーク、仮想 IP アドレス、および SSL 構成を設定したことはありますか? この作業を何度か繰り返すと、証明書の生成や各 IRIS インスタンスの構成にはたくさんの手動による作業が必要で、時間がかかる作業であることに気づきました。 頻繁にこの作業を行わなければならない方にとっては、面倒な作業です。 たとえば、品質管理チームでは、新しいバージョンのアプリケーションをテストするたびに、新しい環境を作成しなければならないでしょう。 サポートチームであれば、複雑な問題を再現する環境を作成しなくてはならないかもしれません。 となれば、こういった環境を素早く作成できるツールが絶対に必要です。 この記事では、以下を使用するミラー環境のセットアップ例を紹介します。 #DevOps #Mirroring #InterSystems IRIS Open Exchange app 0 0 0 244
記事 Hiroshi Sato · 2022年7月20日 2m read タスクの起動でエラーが発生した時にメールで通知する方法 タスク成功時・失敗時、それぞれ通知メールを送信することができます。 そのためには事前にターミナルからTASKMGRルーチン を実行して、メールサーバを登録する必要があります。 > zn "%SYS" > do ^TASKMGR1) タスク作成2) タスク編集3) タスク一覧4) タスク削除5) タスク一時停止6) タスク再開7) タスク実行8) タスクリポート9) タスクマネージャオプション10) 終了 そして、メニューから9) タスクマネージャーオプションを選んで #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 249
記事 Hiroshi Sato · 2022年7月25日 1m read InterSystems ObjectScriptの型キャストサポートについて これは InterSystems FAQ サイトの記事です。 ObjectScript言語は、Java言語等がサポートしている型キャストをサポートしていません。 ただし、メソッドのキャストはサポートしています。 詳細は以下ドキュメントページをご参照ください。 メソッドのキャスト【IRIS】メソッドのキャスト #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 149
記事 Toshihiko Minamoto · 2022年9月20日 6m read データ移行ツール パート III: DB2 から IRISへ これは、市場に出回っている主なデータベースから InterSystems IRIS への移行に関する連載第 3 回目の記事です。 このパートでは、DB2 からの移行手続きを説明します。前の記事で説明したとおり、現時点ではいくつかの移行オプションが存在しますが、 最も一般的なオプションは、DBeaver(https://openexchange.intersystems.com/package/DBeaver)または SQLGateway を使用する 2 つの方法です。 最初のオプションはこの記事で紹介しますが、2 つ目のオプションは Robert Cemper が書いた「SQLgateway を使ったデータベース移行」(https://community.intersystems.com/post/db-migration-using-sqlgateway)という優れた記事で紹介されています。 # データのインポートとエクスポート #InterSystems IRIS 0 0 0 208
記事 Toshihiko Minamoto · 2022年10月19日 9m read Django 入門 パート 1 しばらく前、IRIS 用 Django の新しいドライバーを導入しました。 そこで実際に、IRIS で Django を使用する方法を見てみましょう。 #Python #InterSystems IRIS Open Exchange app 0 0 0 307
記事 Megumi Kakechi · 2022年11月28日 2m read IRIS SQLでは OFFSET/LIMIT句のような機能をサポートしていますか? Question: IRISでは、PostgreSQLやMySQLで使うことができる、開始位置や取得件数を指定する OFFSET句やLIMIT句をサポートしているでしょうか? Answer: 残念ながらサポートしていません。ただ、代わりに使える同様の方法がありますのでご紹介します。 以下のようなSQLクエリをIRIS SQLで行うとします。 #SQL #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 242
記事 Megumi Kakechi · 2023年2月27日 2m read Webゲートウェイをインストール後、503エラーでサイトにアクセスできません Question: Windows環境にて、新規サーバにWebゲートウェイ(Web Gateway)をインストールしたところ「HTTP Error 503. The service is unavailable.」エラーで接続ができません。対処法を教えてください。 Answer: IRIS2022.1以降のバージョンでは、Visual Studio 2015 Visual C++ 再頒布可能パッケージ(64bit) のインストールが必須となりました。IRISをインストールされているお客様は、IRISのインストール時に VC++ 2015 再頒布可能パッケージもインストールされるため気にする必要はありませんが、Webゲートウェイのみインストールされる場合は別途インストールする必要があります。 #CSP #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 188
記事 Mihoko Iijima · 2023年3月23日 11m read PyODBC経由でIRISに接続するAWS Lambda関数を作成するまでの流れ 開発者の皆さん、こんにちは。 AWSのEC2インスタンス(Ubuntu 20.04を選択)にIRISをインストールした環境を事前に用意した状態からの流れですが、AWS Lambda 関数からPyODBC経由でIRISに接続するまでの流れを試してみました。 Native APIを利用する流れについては、「AWS Lambda の IRIS Python Native API IRIS」をご参照ください。 参考にしたAWSドキュメント:https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/lambda-python.html 以下の流れでご紹介します。 1. レイヤーを作成する 2. Lambda関数を作成する。 3. 1,2の流れをCloudformationで行う例 例で使用しているコード一式はこちらにあります👉https://github.com/Intersystems-jp/iris-pyodbc-lambda #AWS #Python #クラウド #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 473
記事 Toshihiko Minamoto · 2023年12月20日 15m read Dockerfile と共同開発ユーザー。InterSystems IRIS で ObjectScript プロジェクトの共同作業を実行するには 開発者の皆さん、こんにちは! 多くの方が、Open Exchange と GitHub で InterSystems ObjectScript ライブラリを公開しています。 でも、開発者がプロジェクトの使用とコラボレーションを簡単に行えるようにするにはどうしていますか? この記事では、ファイルの標準セットをリポジトリにコピーするだけで、ObjectScript プロジェクトを簡単に起動して作業する方法をご紹介します。 では始めましょう! #Docker #Git #ObjectScript #チュートリアル #ベストプラクティス #開発環境 #InterSystems IRIS #Open Exchange Open Exchange app 0 0 0 54
記事 Hiroshi Sato · 2024年3月18日 1m read SQLベンチマークプログラム InterSystems IRISのSQLの性能を評価する簡単なベンチマークテストを公開します。 また、このベンチマークプログラムで測定した過去の様々なハードウェアでのベンチマーク結果も公開します。 ハードウェアの進歩、インターシステムズの新しいテクノロジーの追加や性能改善によって、性能が劇的に変化しています。 現在のハードウェアの性能を考慮すると、少し物足りない感じが否めないですが、過去との結果の公正な比較という意味であえて、データの規模に関しては過去と同一条件でベンチマーク実施した結果となっています。 データの規模に関してはデータ件数を増やすことで変更できるようになっています。(現時点では500万件) またこのベンチマークプログラムはインターシステムズ製品用に実装されていますが、使用しているテーブル構造は比較的シンプルなもので、また使用しているSQL文も標準的なものなので、他データベースシステムでも同じベンチマークを実施することはそんなに困難ではありません。 ベンチマークプログラムのリポジトリ #Caché #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 21
記事 Toshihiko Minamoto · 2020年6月3日 6m read InterSystems IRISによる水平スケーラビリティ 先週、私たちはInterSystems IRIS Data Platformを発表しました。これは、トランザクション、分析、またはその両方に関係なく、あらゆるデータの取り組みに対応する新しい包括的なプラットフォームです。 CachéとEnsembleでお客様が慣れ親しんでいる多くの機能が取り込まれていますが、この記事では、プラットフォームの新機能の1つであるSQLシャーディングについてもう少し詳しく説明します。これはスケーラビリティに関する強力な新機能です。 #AI #ECP #SQL #シャーディング #分散データ管理 #分析 #機械学習 #InterSystems IRIS 0 0 0 305
記事 Minoru Horita · 2020年6月29日 8m read Python Gateway パート I:はじめに この連載記事では、InterSystemsデータプラットフォーム用のPython Gatewayについて説明します。 また、InterSystems IRISの最新のAI/MLツールを利用してPythonコードなどを実行します。 このプロジェクトは、InterSystems IRIS環境にPythonの力を与えます。 #AI #Python #機械学習 #言語 #InterSystems IRIS Open Exchange app 0 0 0 243
記事 Minoru Horita · 2020年8月6日 2m read Python Gateway パート VI: Jupyter この連載記事では、InterSystemsデータプラットフォーム用のPython Gatewayについて説明します。 また、InterSystems IRISからPythonコードなどを実行します。 このプロジェクトは、InterSystems IRIS環境にPythonの力を与えます。 任意のPythonコードを実行する InterSystems IRISからPythonへのシームレスなデータ転送 Python相互運用アダプタでインテリジェントな相互運用ビジネスプロセスを構築する InterSystems IRISからのPythonコンテキストの保存、調査、変更、復元 その他の記事 現時点での連載計画です(変更される可能性があります)。 パート I:概要、展望、紹介 パート II:インストールとトラブルシューティング パート III:基本機能 パート IV:相互運用アダプタ パート V:Execute関数 パート VI: Jupyter Notebook <-- 現在、この記事を参照しています パート VII:動的ゲートウェイ パート VIII:プロキシゲートウェイ パート IX:使用事例とML Toolkit はじめに Jupyter Notebookは実コード、数式、図、説明文を含むドキュメントを作成および共有できるオープンソースのWebアプリケーションです。 この拡張機能を使用すると、InterSystems IRIS BPLのプロセスをJupyterノートブックとして参照および編集できます。 #Python #収束解析 #機械学習 #InterSystems IRIS Open Exchange app 0 0 0 152
記事 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 533
記事 Tomoko Furuzono · 2020年11月24日 4m read 例:PHPから Caché Web サービスへの接続 最近、InterSystems 内で PHP から Caché ベースの Web サービスに接続が必要になる事例がいくつかありました。 これらの最初の事例とは、実はこの開発者コミュニティそのものであり、他の InterSystems サイト/アプリケーションとのシングルサインオンに Web サービスを使用しています。 次の例は、パスワード認証を使用して PHP から Caché ベースの Web サービス(具体的には SAMPLES ネームスペースの Web サービス)に接続する方法を示しています。 (注意: この例は、/csp/samples に対してパスワード認証が有効になっていることを前提としています。) #Code Snippet #SOAP #フロントエンド #Caché 0 0 0 261
記事 Mihoko Iijima · 2020年10月22日 9m read VSCode を使ってみよう! 皆さんこんにちは!Virtual Summit ご覧いただけていますでしょうか。 Virtual Summit で VSCode の ObjectScript 用エクステンションバージョン1.0 のリリースが👏正式発表👏されましたので、さっそく利用方法を投稿してみました。 #初心者 #InterSystems IRIS #InterSystems IRIS for Health #VSCode 0 1 0 2.9K
記事 Megumi Kakechi · 2020年10月29日 1m read InterSystems IRIS で取り扱える変数の最大文字数 これはInterSystems FAQ サイトの記事です。 1変数に最大 3,641,144 文字まで格納できます。 この制限は、InterSystems IRIS上で取り扱う全ての文字列が対象となるため、ローカル変数やメソッドの引数・戻り値も対象となります。 最大文字について詳しくは、以下ドキュメントをご参照ください。 最大文字列長について #システム管理 #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 188
記事 Toshihiko Minamoto · 2020年12月4日 5m read SOAP(Web)サービスでの OAuth2 の使用 みなさん、こんにちは。 数日前、SOAP(Web)サービスを使用して、REST に基づく新しいアプリケーション API と同じ認証を使用できるように、既存のレガシーアプリケーションを拡張したい、とお客様から伺いました。 新しいアプリケーションは OAuth2 を使用しているため、課題は明らかでした。SOAP リクエストを含むアクセストークンをどのようにしてサーバーに渡すか、ということです。 Google でしばらく調べてみたところ、SOAP エンベロープにヘッダー要素を追加してから、アクセストークンを検証するために必要なことを Web サービス実装が実行できるようにするのが 1 つの実現方法であることがわかりました。 #SOAP #セキュリティ #ベストプラクティス #Caché #InterSystems IRIS 0 0 0 574
記事 Mihoko Iijima · 2020年11月20日 3m read InterSystems 製品を初めて使用する方向け学習コンテンツなど これはInterSystems FAQ サイトの記事です。 現在ご覧いただいている開発者コミュニティの中では、初心者(beginner)タグ があり、下記セルフラーニング用資料/ビデオをご用意しています。ぜひご参照ください。 【はじめての InterSystems IRIS】セルフラーニングビデオ 索引 【はじめてのInterSystems IRIS】セルフラーニングビデオ:アクセス編:IRIS で作成する REST サーバの仕組み Python から IRIS にアクセスしてみよう! Python の NativeAPI に挑戦 Python から PyODBC を使って IRIS に接続してみよう 【はじめてのInterSystems IRIS】Interoperability(相互運用性)を使ってみよう! 【はじめてのInterSystems IRIS】Embedded Python セルフラーニングビデオシリーズ公開! ObjectScript クックブック 「ObjectScript」の基本の使い方から、困ったときのヒント集、エラーの読み方などを解説しています。 セルフラーニングビデオ以外にも、過去に開催したウェビナーアーカイブビデオも公開しています👉「開発者向けウェビナー:アーカイブビデオ一覧」 ぜひご参照ください。 #初心者 #Caché #Ensemble #InterSystems IRIS #InterSystems IRIS for Health 0 0 1 395
記事 Megumi Kakechi · 2020年12月13日 1m read %ZSTARTルーチンの内容に不具合がありインスタンスが起動しなくなった場合の対処法 これはInterSystems FAQ サイトの記事です %ZSTARTルーチンを インスタンス開始時に起動しないように構成設定用ファイルを手動で変更します。 【注意】インスタンスの起動環境の変更は、通常管理ポータルで行うものなので、以下に説明する方法は、%ZSTART の SYSTEM ラベルの動作を無効化する方法以外では利用しないようにしてください(別のパラメータを誤って修正してしまった場合、起動できなくなる可能性がありますのでご注意ください)。 1. インスタンス のインストールディレクトリ以下にある構成設定用ファイル(cache.cpf/iris.cpf)をテキストエディタで開きます。 ※構成ファイルは、事前にバックアップ(コピー)していただくことを推奨します。 2. [Startup]セクションにあるSystemStartの値を0に変更し、保存します。 3. ファイル変更後、一旦 インスタンスを通常の方法で停止し、再度開始してください。 #システム管理 #ヒントとコツ #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 101
記事 Toshihiko Minamoto · 2021年3月1日 11m read グローバルをクラスにマッピングする技術 (4/3) グローバルをクラスにマッピングする技術 (4/3) 三連載のはずが 4 記事目に突入してしまいました。『銀河ヒッチハイク・ガイド』のファンという方はいませんか? 古くなった MUMPS アプリケーションに新たな生命を吹き込みたいとお考えですか? 以下にご紹介するステップを実行すれば、グローバルをクラスにマッピングし、美しいデータを Object や SQL に公開できます。 上の内容に馴染みが無い方は、以下の記事を初めからお読みください。 グローバルをクラスにマッピングする技術 (1/3) グローバルをクラスにマッピングする技術 (2/3) グローバルをクラスにマッピングする技術 (3/3) #マッピング #SQL #オブジェクトデータモデル #グローバル #Caché 0 0 0 146
記事 Toshihiko Minamoto · 2021年3月31日 13m read Caché のメソッドジェネレータを使ったコード生成の検証 デベロッパーの方なら、反復的なコードを書いた経験があると思います。 プログラムを使ってコードを生成できたら楽なのに、と考えたことがあるかもしれません。 まさに自分のことだと思った方、ぜひこの記事をお読みください! まずは例をお見せします。 注意: 次の例で使用する %DynamicObject インターフェースは Caché 2016.2 以上のバージョンが必要です。 このクラスに馴染みのない方は、Using JSON in Caché と題したドキュメンテーションをお読みください。 とても重宝すると思います! #オブジェクトデータモデル #コンパイラ #Caché #InterSystems IRIS 0 0 0 169
記事 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 554
記事 Mihoko Iijima · 2021年3月9日 3m read アプリケーションエラー(^ERRORS)をコマンドで取得する方法 これは InterSystems FAQ サイトの記事です。 SYS.ApplicationError クラスの ErrorList クエリを使用します。 注意1:%SYS ネームスペースで実行します。 #ヒントとコツ #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 95
記事 Hiroshi Sato · 2022年3月23日 2m read 現在使用しているリレーショナルデータベースで壁に突き当たっています。インターシステムズのテクノロジを利用することはできますか。 もし現在ご使用のデータベース技術で壁に突き当たっていると感じておられるならば、是非InterSystems IRIS Data Platformへの移行をご検討ください。 (以下IRIS) IRISに移行するに際して、現行のプログラム資産を全て書き換える必要はありません。 IRISに移行する際には、以下の手順で進めることを推奨しております。 アプリケーションコードをそのまま流用し、動作させるために、現在のデータベースからIRISへの移行を行います。 既存のRDBMSのデータ定義(DDL文で記述されたもの)をIRISに取り込むことで、リレーショナルとオブジェクトの両モデルからアクセスが可能となるため、必要に応じてオブジェクト・アクセスが妥当である処理に対しては、アプリケーションプログラムの修正など、対応策が選択できます。 さらにXMLやJSONなどのドキュメント形式のデータの取り扱いも容易ですので、RestFullなアプリケーション構築にも向いています。 #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 139
記事 Mihoko Iijima · 2021年3月26日 1m read IRISTEMP / CACHETEMP 上のグローバルのみを参照する方法について これは InterSystems FAQ サイトの記事です。 管理ポータルを使用して確認する場合は、以下の手順で参照できます。 管理ポータル > [システムエクスプローラ] > [グローバル] の画面で、ネームスペースではなく データベース を指定し、IRISTEMP / CACHETEMP データベースを選択すると参照できます。 #グローバル #ヒントとコツ #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 201
記事 Mihoko Iijima · 2021年4月2日 2m read コンソールログに "Failed to allocate xxxMB shared memory using large pages..." のエラーメッセージが出ているとき これは InterSystems FAQ サイトの記事です。 MM/DD-hh:mm:ss:938 ( 0) 1 Failed to allocate xxxMB shared memory using large pages. Switching to small pages.MM/DD-hh:mm:ss:938 ( 0) 0 Allocated xxxMB shared memory: yyyMB global buffers, zzzMB routine buffers コンソールログ(cconsole.log/messages.log)に上記のようなメッセージがある場合は、Large Page でのメモリ確保に失敗して、Small Page でメモリを確保したことを示しています。 Allocated xxxMB が設定サイズと同じ場合、Small Pageでメモリ確保ができていますので、設定サイズを減らす必要はありません。 #Microsoft Windows #システム管理 #ヒントとコツ #Caché #Ensemble #HealthShare #InterSystems IRIS #InterSystems IRIS for Health 0 0 0 1.5K
記事 Shintaro Kaminaka · 2021年4月15日 7m read IRIS for Health上でFHIRリポジトリ+OAuth2認可サーバ/リソースサーバ構成を構築するパート3(OAuth2スコープ編) 開発者の皆さん、こんにちは。 以前の記事でIRIS for Health上でFHIRリポジトリを構築し、OAuth2認証を構成する方法をご紹介しました。 IRIS for Health 2020.4がリリースされ、FHIRリポジトリのアクセストークンをチェックする機能が追加になりました。 ドキュメントはAccess Token Scopesです。 この記事ではドキュメントの記載も抜粋しながらこの機能を紹介していきます。 #FHIR #OAuth2 #セキュリティ #InterSystems IRIS for Health 0 0 0 419