お知らせ Mihoko Iijima · 11月 11, 2024

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

2回目の開催となったミートアップですが、11月8日(金)に無事、開催を終えることができました。ご参加いただきましたメンバーの皆様、ありがとうございました!

今年のミートアップでは、ワークショップを開催してみました。13時半~17時半の約4時間(!)もの間、ご持参いただいたパソコンでもくもくと進めていただいていたように思えます。

ミートアップのワークショップで使用した内容は、全て以下リポジトリに公開しております。

👉https://github.com/Intersystems-jp/meetup2024WorkShop

 


以下、写真を添えながら当日の様子を少しご紹介します。

第1部は、ワークショップを合計5種類用意いたしました。

Python入門」、「Embedded PythonでIRISデータにアクセスしよう」までは、全員一緒のタイミングで説明を聞いていただきながら、内容を確認するワークショップを行いました。

10分間の休憩を挟んだ後は、ご用意しました3種のワークショップ:「WSGI-Flask」「NiceGUI+SQL Alchemyを使ってアプリケーションをつくってみよう」「機械学習で手書き数字の識別に挑戦」のなかから好きな内容にチャレンジいただきました。

0
0 209
お知らせ Mihoko Iijima · 10月 20, 2024

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

11月8日(金)は開発者コミュニティのミートアップ開催日です。申し込みはお済でしょうか??

昨年、大阪で初回ミートアップを開催した際、コミュニティメンバー同士での交流をとても楽しみにしてくださる方が多かった印象を受けました。

そこで、今年はメンバー同士の結束をより高められたら・・と思い、ミートアップ2024Tシャツを作成しました!

 

0
0 131
お知らせ Mihoko Iijima · 10月 20, 2024

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

🖋 InterSystems Japan 技術文書ライティングコンテスト2024:IRISに関連した記事 🖋の応募受付期間が終了し、残るは投票のみとなりました!

第2回目のコンテストは✨6作品✨の応募がありました!

コミュニティメンバーは「イイネ」 をクリックすることで投票できます。2024年10月31日(木)23時59分59秒 まで投票受付中です。

素晴らしい6作品のなかから、🔥これだ!🔥と思う記事の「イイネ」をクリックしてください。

以下、投票方法についてご案内します。

(1) 開発者コミュニティにログインする。

ログインアカウントをお持ちでない方は、コミュニティページ上部の  (下図赤枠)をクリックし、アカウント登録を行って下さい。

クリックした後の流れは「アカウント作成方法」の記事をご参照ください。

(2) 投稿記事一覧ページに移動します。

投稿記事を👀じっくり読みます👀

(3) 「いいね」をクリックします。

投稿記事一覧ページ上でクリックする場合はそれぞれの投稿画面左下にあるのマークをクリックします。クリック前はグレーの表示ですがクリック後に変わります。

各記事を参照している状態で「いいね」をクリックする場合は、画面左側にアイコン一覧が縦に並んでいますのでのマークをクリックします。

 

良い記事が見つかったらをクリックして作者を応援しましょう!📣

0
0 109
お知らせ Mihoko Iijima · 10月 1, 2024

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

USコミュニティで現在開催しているいつもとちょっと違ったコーディングではないイベント:🚶‍♀️InterSystems ウォーキング・チャレンジ🚶‍♂️をご案内します!

(通勤通学でよく歩いている方、賞品Getのチャンスです!)

InterSystemsのウォーキング・チャレンジは、あなたの心を充電し、フィットネスを高めるのに役立ちます。 リューベックからリューネブルクまで、何世紀も前にヨーロッパを結んだ伝説の交易路「塩の道」を歩くバーチャルな旅に出かけましょう。

そして、トレッドミル、スマートウォッチ、メダルなどのエキサイティングな賞品をゲットしましょう!

👟🚶🧑‍🦼Lace Up, Step Out, and Code Better! 🔋💻💪

📅 期間:2024年9月23日~10月20日 11月8日まで(11月22日18時CETにこのチャレンジは終了します)

参加されたい方、以下詳細をご参照ください。

0
0 101
お知らせ Mihoko Iijima · 9月 6, 2024

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

今年も開発者コミュニティミートアップを東京にて開催いたします!(10月1日:お申込みサイトオープンいたしました!)

日 時:2024年11月8日(金)13時半~19時

場 所:AP東京八重洲 13階

<JR各線をご利用の場合>「東京駅」八重洲中央口より徒歩6分
<東京メトロ銀座線をご利用の場合>「日本橋駅」徒歩約5分/「京橋駅」徒歩約4分
<都営浅草線をご利用の場合>「宝町駅」徒歩約4分

※ヤエチカ24番出口から出るとわかりやすいです。
 

参加費:無料

定 員:50名
※定員に達した際は調整をお願いすることもございます。予めご了承下さい。

申 込:(申込受付終了しました)

3
0 450
お知らせ Mihoko Iijima · 9月 4, 2024

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

開発者コミュニティ AI 懸賞企画 お楽しみいただけましたか? まだまだ改良の必要がありそうですが、DC AIを利用して何か新しい回答が得られていることを願っています。

この投稿では、優勝者を発表します!🎊(抽選の様子を動画でご紹介しています。ぜひご覧ください!)

4
0 106
お知らせ Mihoko Iijima · 9月 2, 2024

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

USコミュニティのコンテスト情報が更新されました。今回は、コミュニティメンバーの開発の手助けになるような便利ツールの作成がテーマです。

🏆 InterSystemsデベロッパーツールコンテスト 🏆

※ 日本のコミュニティの 第2回 InterSystems Japan 技術文書ライティングコンテスト 開催!とは異なるコンテストです。ご注意ください!

InterSystems IRIS を使用して、より迅速な開発、より質的なコードの貢献、ソリューションのテスト、デプロイ、サポート、または監視に役立つアプリケーションをご応募ください。

期間:2024年9月9日~29日

賞品総額: $14,000


0
0 106
記事 Mihoko Iijima · 8月 21, 2024 3m read

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

9月2日から、🖋第2回 InterSystems Japan 技術文書ライティングコンテスト🖋 が始まります!応募の準備はばっちりでしょうか?👀

この記事では、昨年開催したコンテストに応募いただいた作品を審査員コメントを添えてご紹介します。

(審査員コメントは昨年11月に開催したミートアップ内で行ったコンテスト表彰式で紹介した内容です)

@Akio Hashimoto さんが投稿された DockerにIRISを構築する簡単なチュートリアル

審査員コメント:

  • IRISのコンテナを作成する手順を必要十分に、かつシンプルに説明されている。
  • まずはコンテナ版IRISを動かしてみたい!と思っている方に最適なチュートリアルだと思いました。

@Junichi Sakata さんが投稿された  Embedded Pythonの使い所は?

審査員コメント:

  • Embedded Pythonを使うと何がうれしいのか?について、具体的に試された内容とまとめがかかれていてとても参考になる記事

@Yuji Ohata さんが投稿された AWS環境を用いたCI/CDの仕組みの紹介。

審査員コメント:

  • 普遍的なトピック(CI/CD)を、IRISでのケースに当てはめながら分かりやすく説明されていた。
0
0 137
記事 Mihoko Iijima · 8月 9, 2024 36m read

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

この記事は、2024年7月に開催された「InterSystems Pythonプログラミングコンテスト2024」でエキスパート投票、コミュニティ投票の両方で1位を獲得された @Henry Pereira さん @José Pereira さん @Henrique Dias Dias さんが開発された sqlzilla について、アプリを動かしてみた感想と、中の構造について @José Pereira さんが投稿された「Text to IRIS with LangChain」の翻訳をご紹介します。

第2回 InterSystems Japan 技術文書ライティングコンテスト 開催! では、生成AIに関連する記事を投稿いただくと、ボーナスポイントを4点獲得できます📢 @José Pereira さんの記事を💡ヒント💡に皆様の操作体験談、アイデアなどを共有いただければと思います。

開発されたアプリSQLzilla についての概要ですが、Open Exchangesqlzilla のREADMEに以下のように紹介されています。

「SQLzilla は、Python と AI のパワーを活用して、自然言語の SQL クエリ生成を通じてデータ アクセスを簡素化し、複雑なデータ クエリとプログラミング経験の少ないユーザーとの間のギャップを埋めます。」

1
0 169
お知らせ Mihoko Iijima · 8月 2, 2024

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

昨年初めて開催した日本の InterSystems 開発者コミュニティのコンテストですが、📣今年も開催します!📣

テーマは昨年と同じで InterSystems IRIS/InterSystems IRIS for Health に関連した内容であればどのような内容でもご応募いただけます。

🖋 InterSystems Japan 技術文書ライティングコンテスト2024:IRISに関連した記事 🖋

🎁 参加賞:投稿いただいた方全員に👚開発者コミュニティ特製Tシャツ👕をプレゼントいたします!

🏆 特別賞:選ばれた3作品に特別賞があります。

8/30更新:賞品情報追加しました!ぜひご確認ください!👇

4
0 373
記事 Mihoko Iijima · 7月 16, 2024 9m read

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

管理ポータル > [システム管理] > [セキュリティ] 以下の設定は、%SYSネームスペースにあるSecurityパッケージ以下クラスが提供するメソッドを利用することでプログラムから作成することができます。

以下シナリオに合わせたセキュリティ設定例をご紹介します。

シナリオ:RESTアプリケーション用設定を作成する

事前準備

シナリオの中で使用するソースを2種類インポートします。

アプリケーション用RESTディスパッチクラスをインポートします。

Class Test.REST Extends %CSP.REST
{

Parameter CHARSET = "utf-8";
Parameter CONTENTTYPE = "application/json";
Parameter CONVERTINPUTSTREAM = 1;
XData UrlMap [ XMLNamespace = "http://www.intersystems.
0
0 161
記事 Mihoko Iijima · 7月 11, 2024 4m read

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

管理ポータル > [システム管理] > [セキュリティ] 以下の設定は、%SYSネームスペースにあるSecurityパッケージ以下クラスが提供するメソッドを利用することでプログラムから作成することができます。

ユーザ設定については、Security.UsersクラスCreate()メソッドを使えば作成できますが、ユーザを作成するだけでは適切な権限が付与されずに目的のデータにアクセスできない状況もあります。

例)testAユーザ作成

    %SYS>set st=##class(Security.Users).Create("testA",,"testA","これはテストユーザです","USER")
    
    %SYS>write st
    1

    上記メソッドで作成した結果は以下の通りです。(ロール付与無し、テーブルに対する権限の割り当てもなしの状態)

     

    以降の解説では、以下のシナリオをもとにした設定を行っていきます。

    シナリオ:アプリケーション開発者用ロールとユーザを作成する

    1) アプリケーション開発者のtestAは、USERネームスペースにログインするアプリケーション開発者です(=%DevelopmentリソースのUse許可を与えます)。

    0
    0 119
    記事 Mihoko Iijima · 7月 9, 2024 2m read

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

    メッセージログ(messages.log)/コンソールログ(cconsole.log) に以下のようなメッセージが表示される場合があります。

    03/22/18-14:27:34:624 (1851) 2 [SYSTEM MONITOR] WriteDaemon Alert: Write Daemon still on pass 320186

     

    このメッセージ出力は、ライトデーモンのデータベースファイルへの書き込み処理の遅延を示しています。
    その原因としては、ディスクI/O負荷が高く、そのI/O要求量に対してディスク処理性能が不足していることが考えられます。

    ディスクI/O負荷の原因としては以下が考えられます。

    • アプリケーションによるデータへの更新や参照処理が集中した
    • アンチウイルスソフトのスキャンやデータベースバックアップソフト等によるディスクへのI/O負荷

    もしアンチウイルスソフトがインストールされている場合は、「アンチウイルスソフト(セキュリティソフト)のスキャンから除外してほしいリスト」に記述している情報を参考に、InterSystems製品の対象ファイルをスキャンの対象外に設定変更してください。

    0
    0 129
    お知らせ Mihoko Iijima · 7月 8, 2024

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

    💡 第3回 InterSystems アイデアコンテスト が終了しました。今回、🔥 30 もの新しいアイデアが投稿されました! 

    いずれも InterSystems IRIS および関連製品やサービスの改善に焦点が当てられていて、アイデアが実装された場合、開発者にとってより具体的なメリットとなることでしょう。

    この記事では、アイデアコンテストの勝者の皆さんをご紹介します。

      

    0
    0 82
    お知らせ Mihoko Iijima · 7月 8, 2024

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

    次のInterSystems プログラミングコンテストの内容についてご案内します📣

    🏆 InterSystems Python コンテスト 🏆

    期間: 2024年7月15日~2024年8月4日

    賞金総額:$14,000


    0
    0 217
    記事 Mihoko Iijima · 7月 7, 2024 4m read

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

    監査ログはシステムDB内テーブル(%SYS.Audit)に記録されていますので、そのテーブルに対するクエリを実行して抽出したり、%SYS.Auditテーブルに用意されていストアドプロシージャを利用して情報を取得しファイル出力するようにプログラムを用意することもできます。

    以下にご紹介する内容は「監査ログをプログラムで出力(ユーザやイベント指定など)する方法」に関連した内容で、監査ログのファイル出力を管理ポータルの機能を利用した例とプログラムを利用した例でご紹介します。

     

    1. 管理ポータルの印刷機能を使う

    管理ポータル > [システムエクスプローラ] > [SQL]を開き、%SYSネームスペースに接続します。

    システムのチェックを入れ、スキーマに%SYSを指定した後、プロシージャの階層を展開するとプロシージャリストが参照できます。

    %SYS.Audit_ で始まるプロシージャが監査ログに対して実行できるプロシージャです。

    SQL文例)InterSystems製品内ユーザのSuperUserに対する監査ログをストアドプロシージャ:%SYS,Audit_ListByUser を利用して出力しています。

    call %SYS.Audit_ListByUser(,,,,,'SuperUser')

    引数については、クラスリファレンス:%SYS.

    0
    0 160
    記事 Mihoko Iijima · 7月 4, 2024 9m read

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

    PythonスクリプトファイルやPythonで記述されたIRIS内メソッドを呼び出す際、エラーが発生した場合の対応方法をご紹介します。

    説明使用するコードや資料PDFは公開しています👉 test1.pyFS.Utilsクラスコードのコピー元ビデオで解説している資料PDF

    Embedded Python 自習用ビデオをご用意しています(項目別にYouTubeプレイリストをご用意しています)。

    各プレイリストについて詳しくはこちらをご参照ください👉【はじめてのInterSystems IRIS】Embedded Python セルフラーニングビデオシリーズ公開!

    0
    0 449
    記事 Mihoko Iijima · 7月 4, 2024 2m read

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

    InterSystems製品のサーバサイドでファイル入出力を行うと、文字列はシステムで設定されたファイル入出力用文字コードに自動変換され、文字単位でREADします。

    ファイルから入力する文字をバイト単位で操作するためには、自動変換を行わない無変換の状態でファイル入力を行い指定バイトずつ読みながら読んだ分だけUnicodeに手動で変換していく必要があります。

    変換には$ZCONVERT()関数を使用します。($ZCONVERT()には省略形があり$ZCVT()でも同様の操作が行えます。)

    なお、READした指定バイトを変換する際、文字の全バイトが含まれない場合もあるため、途中までの読み取りになった文字列を第4引数に指定する変数に設定できるようになっています。
    次回読み取り時に途中だった文字を自動的に先頭に追加し、$ZCONVERT()の処理を実行します。

    《メモ》ファイル入出力の文字コードについては、以下管理ポータルの画面で確認できます。
    管理ポータル > 構成 > 国際言語設定 > 構成したデフォルト値
     入力/出力テーブルの表の「ファイル」

    以下の文章がファイルにUTF8で保存されているとします。

    2024/4/19:強風でしたが良い天気でした

     

    無変換でファイル入力を行うには、%Stream.

    0
    0 155
    お知らせ Mihoko Iijima · 5月 29, 2024

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

    次のコンテストの開催が決定しました!💡 第3回 InterSystems アイデアコンテスト 💡

    InterSystems アイデアコンテストは開発者コミュニティのメンバー(InterSystems社員も含)であればどなたでもご応募いただけます!

    このコンテストでは、インターシステムズの製品やサービスを強化するための革新的なアイデアを募集しています。あなたのアイデアが他の利用者にもたらす具体的なメリットや、インターシステムズの技術で開発者の体験をどのように向上させるかについて実際の使用事例に基づいた提案をお待ちしています。

    📅 期間:2024年6月10日~2024年7月7日

    🏆 優秀なアイデアには賞品が贈られます!

    🎁 参加賞あります!: コンテストに採用された方全員に参加賞をご用意しています!👕

     

    >> 6月10日よりアイデア募集します! <<

    0
    0 137
    記事 Mihoko Iijima · 5月 20, 2024 2m read

    InterSystems製品のバックアップ方法の中の4つの目方法は「コールドバックアップ」です。

    InterSystems製品を停止できるときに利用できるバックアップ方法です。別サーバに環境を移植するときや、コミュニティエディションから製品版キットのインストール環境にデータベースを移植する場合などにもお使いいただけます。

     

    バックアップ手順

    1. InterSystems製品を停止する

    2. バックアップしたいデータベースを退避する

    3. InterSystems製品を開始する

     

    既存環境から新環境へ移植する場合などの手順

    1. 既存環境のInterSystems製品を停止する。

    既存環境の設定など含めて全てを新環境に移植する場合は、以下記事の退避内容をご確認いただき、ご準備ください。

    2. 新環境にInterSystems製品をインストールする。

    1. の手順でコピーしていた情報をもとに、新環境の構成を設定します。

    3. 新環境のInterSystems製品を停止する。

    4. 既存環境のデータベースファイル(.DAT)を新環境の対象となるデータベースディレクトリに配置する(置換する)

    対象:ユーザ用DB

    5.

    0
    0 156
    記事 Mihoko Iijima · 5月 20, 2024 5m read

    InterSystems製品のバックアップ方法の中の3つの目方法は、「並行外部バックアップ」についてです。

    この方法は外部バックアップと異なり、スナップショットなどのストレージ機能がない環境に向いている方法でオンラインバックアップよりも高速にバックアップできます。(古いバージョンのInterSystems製品でも利用できるバックアップ方法です。)

    ただし、バックアップやリストア手順が複雑になります。

    並行外部バックアップの利用を検討される際は、事前にリストア手順についてもテスト環境などでご確認いただくことを推奨します。

     

    並行外部バックアップ概要

    データベースファイル(.DAT)を通常のコピーコマンドなどで退避します。

    データベースファイルのサイズによってはコピー時間が長くなります。外部バックアップの方法を利用するとライトデーモン凍結時間のタイムアウトを迎えてしまうため、バックアップを正しく完了できません。

    そのため並行外部バックアップでは、ライトデーモンの凍結を行わずデータベースのダーティコピーを行う方法を採用しています。

    ダーティコピーのバックアップファイルだけでは不完全であるため、最後にオンラインバックアップの差分バックアップを行うことで完全なバックアップを取得します。

    最後の手順に差分バックアップを行うため、オンラインバックアップと同様にデータベースリストを事前に作成する必要があります。

    0
    0 229
    記事 Mihoko Iijima · 5月 16, 2024 27m read

    この記事は、「インターシステムズ製品をバックアップする前に確認したいこと」に続く記事で、InterSystems製品のバックアップの手法の中の「オンラインバックアップ」の仕組みと、バックアップ・リストア手順について解説します。

    オンラインバックアップは、InterSystems製品が用意するバックアップ機能を利用する方法で、バックアップ対象に設定した全データベースの使用済ブロックをバックアップする方法です。

    InterSystems製品のデータベースには、サーバ側で記述したコード、テーブル定義/クラス定義、データ(レコード、永続オブジェクト、グローバル)が格納されていますので、これらすべてが1つのファイルにバックアップされます。

    データ量が増えればバックアップファイルサイズも大きくなります。 また、データ量の増加に伴いバックアップ時間も長くなります。

    バックアップ時間に制限のない環境や、ユーザからのアクセスがない環境(例:ディザスタリカバリの目的で配置しているミラーリングの非同期メンバ)のバックアップ方法としては最適ですが、バックアップ時間に制限がある場合は不向きです。

    バックアップ時間をできるだけ短くしたい場合は、推奨方法である「外部バックアップ」や、手順が少し複雑になりますが「並行外部バックアップ」を取り入れるなどご検討ください。

    0
    0 422
    記事 Mihoko Iijima · 5月 16, 2024 26m read

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

    この記事は、「インターシステムズ製品をバックアップする前に確認したいこと」に続く記事で、InterSystems製品のバックアップの手法の中の「外部バックアップ」の仕組みと、バックアップ・リストア手順について解説します。

    まず、「外部バックアップ」とは、InterSystems製品の専用ルーチン使用せず、InterSystems製品以外のバックアップソリューションを使用してデータベースをバックアップする方法で、現時点の推奨されるバックアップ方法です。

    詳細な説明、手順については、ドキュメント「外部バックアップ」をご参照ください。

    外部バックアップでは、主に、論理ディスク・ボリュームの有効な "スナップショット" を迅速に作成するテクノロジと共に使用します。

    例えば、

    • Windowsサーバの場合は、VSS(ボリューム・シャドウ・コピー・サービス)と組み合わせて利用する
    • AWSのEBS Snapshotと組み合わせて利用する

    スナップショット・テクノロジが使用できないシステムであっても、後述する「特別な考慮」で対応できればご利用いただけます。

    それでは早速、外部バックアップの前後で必要となるIRIS側の手続きと、バックアップとリストアについて確認していきましょう!

    0
    0 422