この記事では、2023年3月1日~31日の期間に開催された「技術文書ライティングコンテスト:InterSystems IRISチュートリアル」に応募された24作品の中から、Heloisa Paivaさんが投稿されたシンプルですぐに試せる記事をご紹介します。


はじめに

このチュートリアルは、テストやチュートリアル用のサンプル作成など、あらゆる目的でサンプルデータベースを作成するための、私が見つけた最も簡単な方法についての簡単なチュートリアルです。

ネームスペースの作成

  1. ターミナルを開きます。
  2. 次のコマンドを実行します。 "Do $SYSTEM.SQL.Shell()" (※または :sql の入力でもSQLシェルに切り替えできます)
  3. "CREATE DATABASE " コマンドを実行します。実行時、作成したいネームスペース名をコマンドの引数に指定します。(TESTネームスペースを作成する例:CREATE DATABASE TEST)

これで、管理ポータルから新しいネームスペースを作成するより簡単で素早い方法でネームスペースを作成できます。

1 0
0 87

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

サブスクリプトレベルマッピングされたグローバルを、トップノードから全体をkillする場合、<SLMSPAN>エラーとなり削除ができません。

これは、サブスクリプトレベルマッピングされたグローバルについては、マッピングを跨いだサブスクリプト範囲の kill コマンドは行えないためです。

1 0
0 61

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

こちらの記事👉「Apache Webサーバ(プライベートWebサーバ: PWS)インストレーションの廃止」でご案内していましたが、コミュニティエディションを除くInterSystems製品のバージョン2023.2以降では、プライベートWebサーバ(*)を使用した管理ポータル/Webアクセスを非推奨に変更しました。

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

新規インストール/アップグレードインストールによるプライベートWebサーバの利用可否やインストール時の選択項目の違いについての概要は以下表をご参照ください。

1 3
0 152

%Installerという特別なツールを使用すると、目的のIRIS構成を記述するインストールマニフェストを定義できることはご存じでしょうか?
インストールマニフェストに作成したい IRIS 構成を記述すると、インストール中、またはターミナルやコードからマニフェストを実行した際に、構成設定が適用されます。

インストールマニフェストについては、以下の記事でご紹介しておりますので是非ご覧ください(Cachéの記事になりますがIRISでも同様です)。
%InstallerでInterSystems Cachéにアプリケーションをデプロイする


こちらの記事では、実際にマニフェストで追加できる主な項目について、サンプルコードとあわせてご紹介します。
今回は、以下の機能の設定例をご紹介します。

1 0
0 30

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

ターミナルでルーチンやクラスのコンパイルを行う際、コンパイル結果が画面に表示されるのでエラーが発生した場合でも確認しやすいですが、一括コンパイルの場合は、大量のコンパイル結果の中にエラー情報が含まれてしまうためエラー情報だけを取得したい場合には少し工夫が必要です。

以下、ルーチン/クラスの一括コンパイル時の結果からエラー情報を取得する方法をご紹介します。

0 0
0 137
記事
· 2024年3月18日 1m read
SQLベンチマークプログラム

InterSystems IRISのSQLの性能を評価する簡単なベンチマークテストを公開します。

また、このベンチマークプログラムで測定した過去の様々なハードウェアでのベンチマーク結果も公開します。

ハードウェアの進歩、インターシステムズの新しいテクノロジーの追加や性能改善によって、性能が劇的に変化しています。

現在のハードウェアの性能を考慮すると、少し物足りない感じが否めないですが、過去との結果の公正な比較という意味であえて、データの規模に関しては過去と同一条件でベンチマーク実施した結果となっています。

データの規模に関してはデータ件数を増やすことで変更できるようになっています。(現時点では500万件)

またこのベンチマークプログラムはインターシステムズ製品用に実装されていますが、使用しているテーブル構造は比較的シンプルなもので、また使用しているSQL文も標準的なものなので、他データベースシステムでも同じベンチマークを実施することはそんなに困難ではありません。

ベンチマークプログラムのリポジトリ

0 0
0 22

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

%SYSTEMパッケージには沢山の便利なシステムクラスがあり、Embedded Pythonでも一般クラスと同様に%SYSTEMパッケージ以下クラスを操作できます(iris.cls("クラス名").メソッド名()で呼び出せます)。

ObjectScriptでは、$SYSTEM特殊変数を利用して、%SYSTEMパッケージ以下クラスのメソッドを呼び出すことができますが、Embedded Pythonでは、iris.system を利用して実行することができます。

以下実行例をご紹介します。

現在のネームスペースを取得する

一般クラスと同じ呼び出し方の例

0 0
0 63
記事
· 2023年9月28日 22m read
OpenAPI Suite - パート 1

コミュニティの皆さん、こんにちは。

私が作成した OpenAPI-Suite という最新のパッケージをご紹介します。これは、OpenAPI 仕様バージョン 3.0 から ObjectScript コードを生成するツールセットです。 簡単に言うと、これらのパッケージでは以下を行うことができます。

  • サーバーサイドクラスの生成。 ^%REST による生成コードに非常に似ていますが、バージョン 3.0 がサポートされていることに付加価値があります。
  • HTTP クライアントクラスの生成。
  • クライアントプロダクション(ビジネスサービス、ビジネスオペレーション、ビジネスプロセス、Ens.Request、Ens.Response)クラスの生成。
  • コードの生成とダウンロードまたはサーバーでの直接コンパイルを行う Web インターフェース。
  • バージョン 1.x からバージョン 3.0 への仕様の変換。
  • 0 0
    0 53

    インターシステムズは、InterSystems IRIS Data Platform の2024.1 リリースを一般提供開始(GA)したことを発表しました。
    2024.1 は、拡張メンテナンス(EM)リリースです。


    【リリースハイライト】

    今回のリリースには、以下のような数々の興味深いアップデートが含まれます:

    1. ObjectScript でのベクトルの使用: データ操作を最適化する強力な機能
    2. ベクトル検索 (実験的機能): 効率的なデータ検索のための最先端機能
    3. マルチボリュームデータベース: スケーラビリティとストレージ管理の強化
    4. ファスト・オンライン・バックアップ(実験的機能): バックアッププロセスの合理化
    5. 複数のスーパーサーバポート: ネットワーク構成の柔軟性を提供
    6. その他多数!


    【ドキュメント】

    注目機能の詳細は、以下のリンクからご覧いただけます。
    InterSystems IRIS 2024.1 (英語)

    0 0
    0 67

    この記事では、InterSystems IRIS の学習に関連したトピックについて、開発者コミュニティでの厳選された記事にアクセスすることができます。機械学習や Embedded Python、JSON、API と REST アプリ、InterSystems環境の構築と管理、DockerとCloud、VSCode、SQL、Analytics/BI、グローバル、セキュリティ、DevOps、インターオペラビリティNative API、それぞれでランク付けされたトップの記事を見ることができます。ぜひ、楽しみながら学んでください!

    機械学習

    機械学習は、高度なデータ分析を構築し、優れた効率で手動活動を自動化するための必須技術です。既存のデータから学習する認知モデルを作成し、自己調整されたアルゴリズムに基づいて予測、確率計算、分類、識別、「非創造的」な人間の活動の自動化を実行します。

    0 0
    1 123

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

    先日のウェビナーでご紹介した「ワークフローコンポーネント」をお試しいただけるサンプルを公開しました。👉 https://github.com/Intersystems-jp/WorkFlow-DC

    《サンプルのテーマ》

    店舗で販売している商品に付けるPOPメッセージ候補を予めテーブルに登録できる仕組みが既にある、と仮定しています。

    IRISの Interoperability を利用してPOPメッセージ候補が登録されるテーブルに対して一定間隔でSELECT文を実行し、未処理のメッセージを取得します。
    新たなレコードが存在する場合、ワークフローコンポーネントを利用して担当者に審査を依頼します。

    担当者は、ワークフローユーザポータルを使用して、POPメッセージ候補の承認/却下を指示できるようにしています。

    0 0
    0 142
    記事
    · 2023年10月18日 7m read
    OpenAPI Suite - パート 2

    コミュニティの皆さん、こんにちは。

    パート 1 では、すべてのパッケージ、使用されているライブラリ、および REST サービスについて説明しました。

    次は、コンバーターサービスとバリデーターサービスについて詳しく説明したいと思います。

    OpenAPI-Suite はデフォルトで、仕様バージョンが 3.0 未満である場合に HTTP リクエストを converter.swagger.io に送信し、別の HTTP リクエストを validator.swagger.io に送信して仕様ドキュメントの構造を単純化します。

    オンラインユーティリティの使用は便利ではありますが、場合によっては独自のコンバーターとバリデーターのインスタンスを使用する方が便利な場合もあります。 たとえば、OpenAPI-Suite が ObjectScript 開発者向けに組織のサーバーに提供されている場合、外部サービスへのリクエストを回避する方が好ましいことがあります(プライバシーやリクエストレートの制限を回避するため)。

    以下を実行してください。

    docker run -d -p 8085:8080 --name swagger-converter swaggerapi/swagger-converter:latest
    docker run -d -p 8086:8080 --name swagger-validator-v2 swaggerapi/swagger-validator-v2:latest

    0 0
    0 46
    記事
    · 2024年4月4日 10m read
    OpenAI と IRIS の統合

    皆さんもご存知のように、人工知能の世界はもう生活の中に存在しており、誰もが利用従っています。

    多数のプラットフォームが、無料、サブスクリプション、または非公開の形式で、人工知能サービスを提供していますが、 コンピューティングの世界で「話題」となったことから、特に注目されているサービスは OpenAI です。最も有名な ChatGPT および DALL-E が主な原因と言えます。

    0 0
    0 35

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

    Apache環境でRESTを動かすための設定方法は以下のとおりです。


    1. Webゲートウェイをインストールします

    添付(Webゲートウェイインストール手順.pdf)の手順に従い、Webゲートウェイをインストールします。
    Webゲートウェイをインストールする前に、Apacheを停止してください。

    0 0
    0 258

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

    この記事では、システム連携の自動的な流れの中にユーザからの指示を介入できる「ワークフローコンポーネント」のサンプル でご紹介した内容を、お手元のIRIS、IRIS for Healthを利用して体験いただくための手順を解説します。

    なお、ワークフローコンポーネントでどんなことができるのか?の概要説明については、ウェビナーをご参照ください。

    A.事前準備

    1) InterSystems IRIS または、IRIS for Healthのインストール環境をご用意ください。

    まだインストール環境がない場合は、コミュニティエディション(コンテナ版かキット版)をご利用ください。

    0 0
    0 197

    この記事では、2023年3月1日~31日の期間に開催された「技術文書ライティングコンテスト:InterSystems IRISチュートリアル」に応募された24作品の中から、Open Exchangeに公開されている sqlalchemy-iris を利用してPythonとSQLでIRISのデータを操作する方法を投稿された Heloisa Paivaさんの記事をご紹介します。

    Open Exchangeは、世界各地にいる開発者コミュニティメンバーが開発したインターシステムズ製品で利用できるサンプルアプリが登録されているページで、自由にダウンロードしてご利用いただけます。

    Heloisaさんの記事のように公開されている Open Exchange の利用例があると、「ちょっと使ってみたいな・・」と思われているメンバーの方への情報共有ができてとても有用な記事になると思います!丁度日本で初開催の「技術文書ライティングコンテスト」開催中ですので、ぜひ使用例や感想など、投稿してみてください!💪

    0 0
    0 227

     

    人工知能は、命令によってテキストから画像を生成したり、単純な指示によって物語を差作成したりすることだけに限られていません。

    多様な写真を作成したり、既存の写真に特殊な背景を含めたりすることもできます。

    また、話者の言語や速度に関係なく、音声のトランスクリプションを取得することも可能です。

    では、ファイル管理の仕組みを調べてみましょう。

    0 0
    0 31

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

    Pythonで、IRISサーバ外部から、IRISの処理を呼び出したりIRISのデータを扱いたい場合には、Native API for Pythonを使用します。
    モジュールのインポートは、

    import irisnative


    で、行います。

    詳細は、下記ドキュメント及び、各関連トピックをご参照ください。
    [ドキュメント] InterSystems Native SDK for Python

    0 0
    0 23

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

    この記事では、ワークフローコンポーネントを使ってみよう!~使用手順解説~ でご紹介したユーザ操作画面(ユーザポータル)を任意のWebアプリに変更する際に便利な REST API の使用方法をご紹介します。

    ワークフロー用 REST APIですが、開発者コミュニティのサンプル公開ページ:Open Exchange に公開されているAPIでどなたでも自由にご利用いただけます。

    Open Exchangeの検索ボックスに「Workflow rest」と入力すると出てきます。EnsembleWorkflow が対象のサンプルです。

    ちなみに、2023年6月2日時点で724のアプリケーションが公開されているようです👀

    0 0
    0 134

    はじめに

    InterSystems IRIS 2020.1 には、Java または .NET で記述されたコンポーネントで IRIS 相互運用性プロダクションの開発を容易にする PEX(プロダクション拡張フレームワーク)が含まれています。

    この PEX により、Java または .NET の知識を備える統合開発者は、InterSystems IRIS 相互運用性フレームワークの力、スケーラビリティ、および堅牢性を利用し、すぐに生産性を高めることができます。

    IRIS 相互運用性フレームワークエキスパートに対し、PEX は既存の Java 言語または .NET 言語の外部コンポーネントとの統合を簡単にリッチ化することができます。

    0 0
    0 55

    大規模言語モデル(OpenAI の GPT-4 など)の発明と一般化によって、最近までは手動での処理が非現実的または不可能ですらあった大量の非構造化データを使用できる革新的なソリューションの波が押し寄せています。 データ検索(検索拡張生成に関する優れた紹介については、Don Woodlock の ML301 コースをご覧ください)、センチメント分析、完全自律型の AI エージェントなど、様々なアプリケーションが存在します。

    0 0
    0 22

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

    【任意のXMLドキュメントの読み込み】
    任意のXMLドキュメントの読み込み・書き出しを行うには、%XML.TextReaderクラスを使用します。
    Parseメソッド(※ドキュメントがファイルの場合はParseFile())を使用してドキュメントをParseし、各ノードのプロパティを取得します。

    例えば、下記のXMLの場合、

    <emp empid="1">
    <name>Suzuki</name>
    <address>Tokyo</address>
    </emp>

    各赤枠が、"ノード"の単位となり、

    0 0
    0 29

    InterSystems IRIS data platform がサポートするプラットフォームやフレームワークを取り巻く変更点について、みなさまから良く質問をいただきます。この記事では、サポート対象プラットフォームで最近おこなわれた変更点や今後予定されている変更点に関する情報を共有させていただきます。ただ、将来の予測は難しい側面があり、ロードマップは約束されたものではないということを十分ご理解くださいませ。

    0 0
    0 236

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

    多くの方が、Open Exchange と GitHub で InterSystems ObjectScript ライブラリを公開しています。

    でも、開発者がプロジェクトの使用とコラボレーションを簡単に行えるようにするにはどうしていますか?

    この記事では、ファイルの標準セットをリポジトリにコピーするだけで、ObjectScript プロジェクトを簡単に起動して作業する方法をご紹介します。

    では始めましょう!

    0 0
    0 54
    記事
    · 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 262

    はじめに

    InterSystems は、最新の CPU 命令セット拡張機能を活用するために、IRIS を最適化したいと考えています。製品のパフォーマンスに対しては素晴らしいことですが、CPU が新しい IRIS ビルドにサポートされるかを知るにはどうすればよいでしょうか。ここでは、CPU のマイクロアーキテクチャファミリと CPU の特定の命令セット拡張機能を知る方法について説明します。

    0 0
    0 52

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

    SQLのINSERT/UPDATE/DELETE文で大量のデータを更新する際に、高速化する方法をご紹介します。
    以下の2つの手順を実行することで、更新処理のパフォーマンスを向上させることが可能です。

    1.INSERT/UPDATE/DELETE時にインデックスを作成せず、あとでまとめて作成する

    2.INSERT/UPDATE/DELETE時にジャーナルをOFFにする

    1は、%NOINDEX キーワードを指定してインデックスの生成を後でまとめて行うことで、インデックスの構築を抑制しパフォーマンスを向上させる方法です。

    クエリ実行例は、以下のようになります。

    0 0
    0 68

    Docker による Apache Web ゲートウェイ

    コミュニティの皆さん、こんにちは。

    この記事では、以下を使用して、Docker でプログラムによって Apache Web ゲートウェイを構成します。

    • HTTPS プロトコル
    • Web ゲートウェイと IRIS インスタンス間の安全な通信を確保する TLS/SSL

    画像

    イメージには、Web ゲートウェイ用と IRIS インスタンス用の 2 つを使用します。

    すべての必要なファイルは、こちらの GitHub リポジトリで入手可能です。

    では、git clone から始めましょう。

    0 0
    0 140

    2023.2 の開発者プレビュープログラムの一環として、3番目の開発者プレビューを公開いたします。今回リリースされたのは、InterSystems IRIS と InterSystems IRIS for Health です。

    本リリースの注目点

    2023.2では、多くの機能修正と改善に加えて、時間認識モデリング強化された外部テーブル読み込み専用の FEDERATED テーブルといった新機能が含まれる予定です。これら新機能の一部は、今回の開発者プレビュー版にはまだ含まれていません。ご注意ください。

    0 0
    0 80

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

    クエリパフォーマンスを左右するクエリプランは、テーブルチューニングを行った結果の統計情報を元に生成されます。

    ある環境で期待したプランになったけれど、他の環境では意図したプランにならない場合、(期待したプランとなる)既存環境からテーブル統計情報をエクスポートして別の環境にインポートし、同じ統計情報をもとにしたクエリプランで実行することができます。

    0 0
    0 26