検索

クリアフィルター
お知らせ
Makiko Kokubun · 2021年10月17日

InterSystems Virtual Summit 2021: データにおけるイノベーション

開発者の皆さん、こんにちは! インターシステムズでは、今年も年次カンファレンス InterSystems Virtual Summit 2021を開催致します。 ⚡️ 事前登録はこちらから ⚡️ データにおけるイノベーション - #VSummit21 今年の InterSystems Virtual Summit では、健全なデータ、パワフルな分析機能、そしてインターシステムズのテクノロジーを活用したスマートなデータファブリックによって、さらにDXを加速させ、顧客に価値を提供する方法を提供します。インターシステムズの専門家、世界をリードするソートリーダー、そして世界中のインターシステムズのお客様の声をお聞きください。 🗓 10月26日(火) - 29日(金) 👉 基調講演 | Experience Labs(体験ラボ) | フォーカスセッション(オンデマンド配信) | 参加費は無料です(事前登録制) スケジュール Day 1 :10月26日(火)日本時間 午前10時開始インターシステムズの経営陣、ソートリーダー、お客様による基調講演 Day 2 :10月27日(水)日本時間 午前10時開始InterSystems IRIS®, InterSystems IRIS for Health™, HealthShare®, TrakCare® の製品ディレクタによる基調講演と、今後の製品ロードマップをご紹介する「What's New and Next」 Days 3 、4:10月28日(木)、29日(金)すべてのフォーカスセッションをオンデマンド配信します。ぜひ、ご興味のあるセッションをご覧ください。また、Experience Labs(体験ラボ)も開催します。オンデマンドのフォーカスセッションは、日本時間 28日(木)よりご覧いただけます。 日本時間のスケジュールはこちらから。 事前登録はこちらから. Virtual Summit 2021でお会いすることを楽しみにしています!
お知らせ
Mihoko Iijima · 2022年2月7日

テクノロジーボーナス詳細:InterSystems Python コンテスト2022

開発者の皆さん、こんにちは! InterSystems Python コンテスト 2022 のテクノロジーボーナスについてご案内します。 以下のテクノロジを使いコンテストにご応募いただくと、ボーナス点を獲得できます! Embedded Python - 4 Python Native API - 3 Python Pex - 3 ObjectScript を使用しない - 5 アンケート への回答- 2 Docker コンテナの使用 - 2 ZPM パッケージによるデプロイ - 2 オンラインデモ公開 - 2 コミュニティに記事を投稿する - 2 コミュニティに2つ目の記事を投稿する - 1 YouTubeでビデオを公開する - 3 詳細は以下の通りです。 Embedded Python - 4 points アプリケーションに Embedded Python を使用すると4ポイント獲得できます。(Embedded Python を使用するには、InterSystems IRIS 2021.2 を使用する必要があります。) Python Native API - 3 points InterSystems IRIS は、Python から IRIS にアクセスするための方法として Python Native API もあります。この API を使用してアプリケーションを開発した場合、追加で3ポイント獲得できます。 Python Pex - 3 points InterSystems IRIS には Python Pex モジュールがあり、Python で InterSystems Interoperability プロダクションを開発するオプションが提供されています。Python Pex を使用された場合、追加で3ポイント獲得できます。また、Python pex の代わりに、Guillaume Ronguier さんのサンプルにある python.pex ホイール を使用することもできます。 ObjectScript を使用しない- 5 points 今回のコンテストでは、いくつかの python APIをご紹介しています。InterSystems IRIS を使用して Python ソリューションを構築し、ObjectScript を 1 行も記述せずに開発するチャレンジもあります!(例えば、IRISクラスを使用するばあい、 Embedded Python メソッドのみを記述する など。) ObjectScript を1行も書かずにアプリケーションを構築された場合、追加で5点ポイント獲得できます。 アンケートへ回答 - 2 アンケートへ回答いただくと、追加で2ポイント獲得できます。今週末にアンケートのリンク先をお知らせします。 Docker コンテナの使用 - 2 points 応募するアプリケーションが Docker コンテナ版 InterSystems IRIS を使用している場合、Docker コンテナボーナスポイントを獲得できます。テンプレートの用意もあります。 ZPM パッケージによるデプロイ - 2 points フルスタックアプリケーションの ZPM(ObjectScript Package Manager) パッケージをビルドして公開し、一緒にデプロイできるようにすると、ボーナスポイントを獲得できます。 zpm "install your-multi-model-solution" ZPM クライアントをインストールして IRIS にログインしてコマンドを実行します。 ZPM について/ZPM Documentation オンラインデモ公開 - 2 points オンラインデモとしてアプリケーションをクラウドにプロビジョニングすると、ボーナスポイントを獲得できます。 開発環境テンプレートやその他のデプロイメントオプションを使用することができます。例 サンプルアプリケーションの使用方法についてはビデオをご参照ください。 コミュニティに記事を投稿する - 2 points コミュニティに応募したアプリケーションの概要を説明する記事を投稿するとポイントを獲得できます。 コミュニティに2つ目の記事を投稿する - 1 point 2つ目の記事を投稿する、または投稿したアプリケーション概要の翻訳記事を投稿することで、さらボーナスポイントを獲得できます。(3記事以降はポイントが加算されません。) Video on YouTube - 3 points 開発した作品の動画を作成し、YouTube に掲載した場合、3ポイント獲得できます。 ※ ボーナスポイントについては、変更される可能性もあります。予めご了承ください。
お知らせ
Mihoko Iijima · 2022年2月22日

★投票開始!★InterSystems Python コンテスト

開発者の皆さん、こんにちは! InterSystems Python コンテストの投票が始まりました!これはベストアプリケーションだ🔥と思う作品に投票をお願いします! 🔥 投票はこちらから! 🔥 投票方法は以下ご参照ください。 Experts nomination: インターシステムズの経験豊富な審査員がベストアプリを選び、Expert Nominationで賞品をノミネートします。 ⭐️ @Benjamin.DeBoe, Product Manager⭐️ @Raj.Singh5479, Product Manager ⭐️ @Robert.Kuszewski, Product Manager⭐️ @Stefan.Wittmann, Product Manager⭐️ @Thomas.Dyar, Product Specialist⭐️ @Aleksandar.Kovacevic, Sales Engineer⭐️ @Eduard.Lebedyuk, Sales Engineer⭐️ @Sergey.Lukyanchikov, Sales Engineer⭐️ @Guillaume.Rongier7183, Sales Engineer⭐️ @Alexander.Woodhead, Technical Specialist ⭐️ @Jon.Willeke, Distinguished Quality Development Engineer⭐️ @Evgeny.Shvarov, Developer Ecosystem Manager Community nomination: 開発者コミュニティのメンバーは、お好みのアプリケーションに対して1位~3位を指定しながら投票できます。 開発者コミュニティでのあなたの状態 順位 1位 2位 3位 開発者コミュニティに記事を掲載したり、OpenExchange(OEX)にアプリをアップロードしたことがある方 9点 6点 3点 開発者コミュニティに1つの記事を掲載した、または 1アプリケーションを OEX にアップロードしたことがある方 6点 4点 2点 開発者コミュニティへコメントや質問を投稿したことがある方 3点 2点 1点 エキスパートレベル 順位 1位 2位 3位 グローバルマスターズの VIP レベル または、InterSystems Product Managers 15点 10点 5点 グローバルマスターズの Ambassador レベル 12点 8点 4点 グローバルマスターズの Expert レベル または DC モデレーター 9点 6点 3点 グローバルマスターズの Specialist レベル 6点 4点 2点 グローバルマスターズの Advocate レベル または インターシステムズの従業員 3点 2点 1点 今回も「ブラインド投票」とします 各応募作品への投票数は、誰にも分らないようになっています。1日1回、この記事のコメント欄に投票数を公開する予定です。 コンテストページ の表示順は、コンテストに応募した時期が早ければ早いほど、上位に表示されます。 メモ:新しいコメントの通知を受けるために、この投稿を購読することをお忘れなく!(記事末尾の ベルのアイコンをクリックするだけ!) 投票に参加するには Open Exchange へのサインインします(開発者コミュニティのアカウントを使用してください)。 投票ボタンは、開発者コミュニティ内で、質問/回答/記事の掲載/投稿に対するコメント など 記載いただいた方に対して有効になります。 ボタンが押せない場合は、コミュニティへのコメントやオリジナルの記事など、書き込みお願いします!詳細は、こちらの記事をご参照ください。 気が変わった場合は? - 選択をキャンセルして別のアプリケーションに投票できます。 ぜひ 🔥これだ🔥 と思う作品に投票お願いします! メモ:コンテストへ応募された作品は、投票週間中にバグを修正したり、アプリケーションを改良したりすることができますので、アプリケーションのリリースを見逃さずに購読してください。
お知らせ
Mihoko Iijima · 2023年1月30日

テクノロジーボーナス詳細:InterSystems デベロッパーツール 2023

開発者の皆さん、こんにちは! InterSystems デベロッパーツールコンテスト 2023のテクノロジーボーナスが発表されました! Embedded Python の利用 Docker コンテナの利用 ZPM パッケージを使ったデプロイ オンラインデモの公開 Code Quality をパスする コミュニティに記事を書く コミュニティに2つ目の記事を書く YouTubeにビデオを公開する はじめてチャレンジされた方 InterSystems Idea 内 Community Opportunityの実装 獲得ポイントについて詳細は、以下ご参照ください。 Embedded Python の利用 - 3 points あなたのアプリケーションで Embedded Python を使用している場合、3ポイント獲得できます。Embedded Pythonを使用するためには、IRIS 2021.2以降のバージョンをご利用ください。 Docker コンテナの利用 - 2 points InterSysetms IRISが稼働している docker コンテナを使用している場合、Docker コンテナボーナスを獲得できます。 テンプレートはこちらにあります。 ご参考:開発環境テンプレート(IRIS プログラミングコンテストで使用していたテンプレート)の一覧 ZPM パッケージによるデプロイ- 2 points 以下のようにデプロイできる ZPM(InterSystems Package Manager)であなたのFull Stackアプリケーションを公開するとボーナスポイントを獲得できます。 zpm "install your-multi-model-solution" 上記コマンドをZPMクライアントがインストールされたIRISで実行します。 ZPM について/ZPM Documentation オンラインデモの公開 - 2 points オンラインデモとしてアプリケーションをクラウドにプロビジョニングすると、3ポイント獲得できます。開発環境テンプレートやその他のデプロイメントオプションを使用することができます。例サンプルアプリケーションの使用方法についてはビデオをご参照ください。 Code quality をパスしてBug 0件 を表示させる - 1 point コードの静的制御のためのcode quality Github actionを組み込み、ObjectScriptの Bug 0件 と表示させるとボーナスポイントを獲得できます。 コミュニティに記事を投稿する - 2 points コミュニティに応募したアプリケーションの概要を説明する記事を投稿すると2ポイントを獲得できます。異なる言語への翻訳も含まれます。 コミュニティに2つ目の記事を投稿する - 1 point 2つ目の記事を投稿する、または投稿したアプリケーション概要の翻訳記事を投稿することで、さらボーナスポイントを獲得できます。(3記事以降はポイントが加算されません。) YouTubeにビデオを公開する - 3 points 開発した作品の動画を作成し、YouTube に掲載した場合、3ポイント獲得できます。 例)過去投稿されたビデオ 初めてチャレンジされた方 - 3 points InterSystems Open Exhangeコンテストに初めて参加された場合、3ポイント獲得できます! InterSystems Idea の Community Oppotunity の実装 - 3 points InterSystems Ideaポータルに投稿されているCommunity Opportunityのアイデアを開発ツールとして実装された場合、2ポイント獲得できます! ※ ボーナスポイントについては、変更される可能性もあります。予めご了承ください。 ぜひ、コンテストにチャレンジしてみてください!
記事
Tomohiro Iwamoto · 2020年6月3日

InterSystemsデータプラットフォームとパフォーマンス – パート1 

アプリケーションがデプロイされ、すべてが問題なく動作しています。 素晴らしいですね! しかし、その後突然電話が鳴り止まなくなりました。アプリケーションが時々「遅くなる」というユーザーからの苦情の電話です。 これは一体どういうことなのでしょうか? なぜ時々遅くなるのでしょうか? このような速度低下を検出し、解決するにはどのようなツールと統計情報に注目すべきなのでしょうか? お使いのシステムのインフラはユーザーの負荷に対応できていますか? 本番環境を調べる前に、どのようなインフラ設計上の問題を問うべきなのでしょうか? 新しいハードウェアのキャパシティプランニングを、必要以上の設備投資を行うことなく自信を持って行うにはどうすればよいのでしょうか? どうすれば電話がかかってこなくなるのでしょうか? そもそも電話がかかってこないようにするには、どうすればよかったのでしょうか? このシリーズの他の記事のリストはこちら 長い道のりの始まり これは、システムパフォーマンスの監視、確認、トラブルシューティングに使用できるツールとメトリック、およびパフォーマンスに影響を与えるシステムとアーキテクチャの設計上の考慮事項について説明する連載の最初の投稿です。 途中、Caché、オペレーティングシステム、ハードウェア、仮想化、およびコメントのフィードバックで話題になっているその他の領域のパフォーマンスを理解するため、本題からそれる場面がかなりあります。 フィードバックグループに従い、パフォーマンスデータからデプロイ済みのアプリケーションとインフラのメリットと制限を詳しく確認し、その後に選りすぐれた設計とキャパシティプランニングに戻ります。 言うまでもなく、常にパフォーマンスメトリックを確認する必要があります。データに目を向けてさえいれば、ずっと前から分かっていたはずのパフォーマンスの問題に顧客が驚いているのは残念なことです。 しかし、当然ながらここではどのデータが原因なのかということが問題です。 まずは現在のシステムの健全性を感じ取れるよう、いくつかの基本的なCachéとシステムのメトリックを収集することから始めましょう。 後の投稿では、主なメトリックの意味について詳しく説明します。 システム監視には、Cachéの内外から利用できる多くのオプションがあります。この連載では、それらの多くについて説明します。 まずは、すべてのCachéシステムに最初からインストールされている継続的データ収集ツールである、^pButtonsを見てみましょう。 次の投稿を確認し、pButtonsの最新コピーがあることを確認してください。 https://community.intersystems.com/post/intersystems-data-platforms-and-performance-%E2%80%93-how-update-pbuttons システムパフォーマンスメトリックの収集 - ^pButtons Caché pButtonsユーティリティは、作成したログファイルから読み取り可能なHTMLパフォーマンスレポートを生成します。 pButtonsから出力されるパフォーマンスメトリックは、簡単に抽出、グラフ化、確認できます。 pButtons のhtmlファイルに収集されるデータには、次のものがあります。 Caché の設定:構成、ドライブの割り当てなど。 mgstat:Cachéのパフォーマンスメトリック - ほとんどの値は1秒あたりの平均です。 Unix:vmstatとiostat:オペレーティングシステムのリソースとパフォーマンスに関するメトリック。 Windows:パフォーマンスモニター:Windowsのリソースとパフォーマンスに関するメトリック。 その他の有用なメトリック。 pButtons によるデータ収集はシステムのパフォーマンスにほとんど影響を与えません。メトリックはすでにシステムによって収集されており、pButtonsは単にこれらをパッケージ化し、整理して転送しやすくするだけです。 ベースラインを維持し、傾向分析と問題解決に役立てるため、業務サイクル全体を通して毎日pButtonで24時間(午前0時から午前0時)のデータを収集することをお勧めします。 例えば、月末処理からデータを取得する場合など、業務サイクルが1カ月以上になる場合もあります。 他に外部パフォーマンス監視システムや収集システムを使用していない場合は、年間を通じてpButtonsを実行できます。 次の重要な点を考慮する必要があります。 ディスク容量がいっぱいにならないようにするため、ログディレクトリを本番データとは異なる場所に変更し、蓄積した出力ファイルをそちらに保管するようにしてください! オペレーティングシステムのスクリプトを実行するか、定期的にpButtonsのファイルを圧縮してアーカイブしてください。このファイルは肥大化する可能性があるため、これはWindowsでは特に重要です。 定期的にデータを確認してください! すぐに分析が必要な問題が発生した場合は、pButtonsのデータをプレビューすることができます(データはすぐに収集されます)が、メトリックは引き続き継続的に保存され、1日の終わりに収集されます。 プレビュー、実行の停止、独自のデータ収集の追加など、pButtonの詳細については、最新のCachéドキュメントの「Cachéモニタリングガイド」を参照してください。 http://docs.intersystems.com pButtonsのHTMLファイルデータは(CVSファイルなどに)分離・抽出可能で、スクリプトを作成したり、単にカットアンドペーストしたりして、グラフの描画やその他の分析に利用することができます。 次の投稿の後半では、出力例をグラフで確認します。 もちろん、パフォーマンスに緊急の問題がある場合は、WRCにご連絡ください。 pButtonsによる24時間のデータ収集をスケジュールする ^pButtonsはターミナルプロンプトから手動で開始するか、スケジュールすることができます。 毎日24時間の収集をスケジュールするには、以下の手順に従ってください。 1. pButtonsのファイル構造を準備するため、Cachéターミナルを起動して%SYSネームスペースに切り替え、pButtonsを手動で1回実行します。 %SYS>d ^pButtons Current log directory: /db/backup/benchout/pButtonsOut/ Available profiles: 1 12hours - 12 hour run sampling every 10 seconds 2 24hours - 24 hour run sampling every 10 seconds 3 30mins - 30 minute run sampling every 1 second 4 4hours - 4 hour run sampling every 5 seconds 5 8hours - 8 hour run sampling every 10 seconds 6 test - A 5 minute TEST run sampling every 30 seconds テストを行うには6番のオプションを選択してください。 30秒ごとにサンプリングする5分間のテスト実行です。 この番号は異なる場合がありますが、"test"というわかりやすい項目名になっています。 テスト中にCollect^pButtonsを実行すると(以下に例を示します)、runidを含む情報が表示されます。 この場合は、「20160303_1851_test」です。 %SYS>d Collect^pButtons Current Performance runs: 20160303_1851_test ready in 6 minutes 48 seconds nothing available to collect at the moment. %SYS> この5分間の実行が終わるまで、6分48秒かかることに注意してください。 ログを収集してhtml形式にまとめる時間を確保するため、pButtonsでは実行のたびに2分の猶予期間が追加されます。 2. 重要! pButtonsのログ出力ディレクトリを変更してください。デフォルトの出力先は <cache install path>/mgr フォルダーです。 UNIXの場合、ログディレクトリのパスは例えば次のようになります。 do setlogdir^pButtons("/somewhere_with_lots_of_space/perflogs/") Cachéにディレクトリへの書き込み権限があり、出力ファイルの蓄積に必要なディスク容量が確保されていることを確認してください。 3. 次のコマンドを実行し、30秒間隔で新しい24時間プロファイルを作成します。 write $$addprofile^pButtons("My_24hours_30sec","24 hours 30 sec interval",30,2880) pButtonsにプロファイルが追加されたことを確認してください。 %SYS>d ^pButtons Current log directory: /db/backup/benchout/pButtonsOut/ Available profiles: 1 12hours - 12 hour run sampling every 10 seconds 2 24hours - 24 hour run sampling every 10 seconds 3 30mins - 30 minute run sampling every 1 second 4 4hours - 4 hour run sampling every 5 seconds 5 8hours - 8 hour run sampling every 10 seconds 6 My_24hours_30sec- 24 hours 30 sec interval 7 test - A 5 minute TEST run sampling every 30 seconds select profile number to run: 注意:収集間隔は変更できます。通常の監視では30秒で十分です。 pButtonsは間隔ごとにデータを収集するため、出力ファイルが非常に大きくなる可能性があります。そのため、24時間定期的に実行する場合は5秒(…”,5,17280)未満の間隔を指定しないことをお勧めします。 特定の時刻を対象に問題を解決しようとしており、より詳細なデータが必要な場合は、デフォルトプロファイルのいずれかを使用するか、5秒間隔で1時間(…”,5,720)といったより短い期間で新しいカスタムプロファイルを作成してください。 pButtonsは複数同時に実行できるため、24時間のpButtonsと同時に5秒間隔の短いpButtonsを実行することができます。 4. ヒント UNIXサイトの場合は、diskコマンドを確認してください。 「iostat」コマンドで使用されるデフォルトのパラメーターには、ディスクの応答時間が含まれていない場合があります。 最初に、現在設定されているディスクコマンドを表示します。 %SYS>zw ^pButtons("cmds","disk") ^pButtons("cmds","disk")=2 ^pButtons("cmds","disk",1)=$lb("iostat","iostat ","interval"," ","count"," > ") ^pButtons("cmds","disk",2)=$lb("sar -d","sar -d ","interval"," ","count"," > ") ディスク統計を収集するには、適切なコマンドを使用し、運用中のUNIXに合わせて構文を編集してください。 末尾のスペースに注意してください。 以下にいくつかの例を示します。 LINUX: set $li(^pButtons("cmds","disk",1),2)="iostat -xt " AIX: set $li(^pButtons("cmds","disk",1),2)="iostat -sadD " VxFS: set ^pButtons("cmds","disk",3)=$lb("vxstat","vxstat -g DISKGROUP -i ","interval"," -c ","count"," > ") iostatコマンドとsarコマンドの両方を実行すると、非常に大きなpButton htmlファイルを作成できます。 筆者の場合、通常のパフォーマンスレビューではiostatのみを使用しています。 コマンドを1つだけ設定するには、以下のように記述します。 set ^pButtons("cmds","disk")=1 pButtonsの設定に関する詳細は、オンラインドキュメントを参照してください。 5. Management Portal > System Operation > Task Managerで、pButtonsを真夜中に起動するようにスケジュールします。 Namespace: %SYS Task Type: RunLegacyTask ExecuteCode: Do run^pButtons("My_24hours_30sec") Task Priority: Normal User: superuser How often: Once daily at 00:00:01 pButtonsデータの収集 InterSystemsデータプラットフォームのより新しいバージョンのpButtonsには、自動収集機能があります。 データを手動で収集してhtmlファイルにまとめるには、%SYSネームスペースで次のコマンドを実行し、未処理のpButtons html出力ファイルを生成します。 do Collect^pButtons htmlファイルは、手順2で設定したlogdirにあります(設定していない場合は、今すぐ設定してください!)。 設定していない場合、デフォルトの場所は <Caché install dir/mgr> になります。 ファイル名は <hostname_instance_Name_date_time_profileName.html> になります(例:vsan-tc-db1_H2015_20160218_0255_test.html)。 Windowsパフォーマンスモニターの考慮事項 オペレーティングシステムがWindowsの場合、Windowsパフォーマンスモニター(perfmon)を使用して、収集対象の他のメトリックと同期してデータを収集できます。 pButtonsの古いCachéディストリビューションでは、Windowsパフォーマンスモニターを手動で構成する必要があります。 この投稿のコメントで要望があれば、パフォーマンスカウンターを定義してpButtonsと同じ期間と間隔で監視とスケジュール実行を行うためのパフォーマンスモニター用のテンプレートを作成する方法について記事を書きます。 概要 この投稿により、考察すべきデータの収集が始まりました。 週の後半には、サンプルデータとその意味を見ていきます。 皆さんは自分のシステムで収集したデータを追跡できます。 それではまた。 http://docs.intersystems.com
記事
Tomohiro Iwamoto · 2020年6月4日

InterSystemsデータプラットフォームとパフォーマンス – パート2  

前回の投稿では、pButtonsを使用してパフォーマンスメトリックを24時間収集する処理をスケジュールしました。 この投稿では、収集対象の主なメトリックのいくつかと、それらの土台となるシステムハードウェアがどのように関連しているかを見ていきます。 また、Caché(または任意のInterSystemsデータプラットフォーム)メトリックとシステムメトリックの関係についても調べます。 さらに、これらのメトリックを使用してシステムの毎日の健全性を把握し、パフォーマンスの問題を診断する方法もご紹介します。 このシリーズの他の記事のリストはこちら 2016年10月に編集... pButtonsデータを .csv ファイルに抽出するスクリプトの例はこちらで確認できます。 2018年3月に編集... 画像が消えていましたが、元に戻しました。 ハードウェア食品グループ この連載を読み進めていくと、パフォーマンスに影響を与えるサーバーコンポーネントを次のように分類できることが分かってきます。 - CPU - メモリ - ストレージIO - ネットワークIO これらのコンポーネントのいずれかに負荷がかかっている場合、システムのパフォーマンスとユーザーエクスペリエンスが低下する可能性があります。 これらのコンポーネントはすべて相互に関連しているため、1つのコンポーネントに対する変更が別のコンポーネントに影響する可能性があり、予期しない結果が生じることがあります。 私はストレージアレイのIOボトルネックを解消するとCPU使用率が100%に跳ね上がり、ユーザーエクスペリエンスがさらに悪化した例を見たことがあります。これは、システムが突然自由に作業量を増やせるようになったものの、ユーザー活動とスループットの増加に対応するためのCPUリソースがなかったために発生したものです。 また、Cachéシステムの動作がサーバーコンポーネントにどのように直接影響を与えるかも説明します。 ストレージのIOリソースが限られている場合はシステムメモリを増やし、Cachéグローバルのバッファーに割り当てるメモリを増やすことで、好ましい変化をもたらすことが可能になります。これにより、システムストレージの読み取りIOを減らすことができます(ただし、CPU負荷が上がる可能性があります!)。 定期的に、あるいはユーザーが問題を報告したときに確認すべき最も分かりやすいシステムメトリックの1つにCPUの使用率が挙げられます。 top や nmon(LinuxやAIXの場合)、またはWindowsパフォーマンスモニターを見てみましょう。 ほとんどのシステム管理者はCPUデータを定期的に確認しているため、特にそのデータがグラフィカルに表示されている場合などは一目でシステムの現在の状態を把握できます。要はそのシステムが正常であるか、潜在的な異常動作によって突発的に負荷が上がっているか、あるいは問題が発生しているかということです。 この投稿ではCPUメトリックをざっと確認しますが、Cachéメトリックを集中して取り上げます。まずは mgstat のデータを参照し、グラフィカルに表示したデータからシステムの正常性を一目で把握できることを確認します。 mgstatの概要 mgstatはpButtonsに含まれ、その中で実行されるCachéコマンドの1つです。 mgstatは、システムの正常性を把握するのに役立つ基本的なパフォーマンスメトリックを収集するのに最適なツールです。 この記事ではpButtonsを24時間実行して収集したmgstatのデータを確認しますが、pButtonの外部でデータを取り込みたい場合は、mgstatを必要に応じて対話形式で実行するか、Cachéターミナルからバックグラウンドジョブとして実行することができます。 オンデマンドで、%SYS名前空間からmgstatを実行するには、一般的に次の形式を使用します。 do mgstat(sample_time,number_of_samples,"/file_path/file.csv",page_length) 例えば、5秒のサンプル期間で1時間実行するバックグラウンドジョブを実行し、csvファイルに出力する場合は次のようになります。 job ^mgstat(5,720,"/data/mgstat_todays_date_and_time.csv") 一部のカラムを省略して結果を画面に表示する場合は、次のようにdsp132エントリを使用します。 出力の違いについては、実際に皆さんで確かめてみてください。 do dsp132^mgstat(5,720,"",60) mgstat の出力結果のカラムに関する詳細は、次のCachéの最新ドキュメントの「Caché監視ガイド」をご確認ください: InterSystemsオンラインドキュメント mgstatデータの参照 pButtonsは目的のデータを探しやすくし、パフォーマンスの問題を診断するWRCのサポート担当者に送信するためのパッケージ化を行うため、収集したデータを単一のHTMLファイルにまとめます。 ただし、pButtonsを手動で実行してデータをグラフィカルに表示したい場合は、コマンドラインスクリプトや単純なカットアンドペーストを駆使してデータをcsvファイルに再分割し、Excelなどでグラフ化することができます。 この投稿では、mgstatメトリックのいくつかを掘り下げ、データを一目見ただけでシステムのパフォーマンスが優れているか、ユーザーエクスペリエンスに影響を与える発生中の問題や潜在的な問題が存在するかどうかを確認できることをご説明します。 GlorefsとCPU 次のグラフは、病院向けアプリケーションを高い処理頻度で実行しているサイトのデータベースサーバーのCPU使用率を示しています。 多くの外来診療所では朝に活動のピークが訪れ、使用率は昼休みに急激に下がり、その後午後から夕方にかけて次第に低下していることが分かります。 この例では、Windowsパフォーマンスモニターの「(_Total)\% Processor Time」(グラフの形状が稼働日の分布測定に適しています)からデータを取得しました。異常な山や谷が見つからないため、このサイトではこのデータは正常であると考えられます。 皆さんもご自身のサイトに対して同じことを行えば、「正常時」のベースラインを取得することができます。 大幅な急上昇、特に異常な急上昇は問題が存在することを示している可能性があります。今後の投稿では、CPUに注目します。 参考までに、このデータベースサーバーは2つのE5-2670 8コアプロセッサーを搭載したDell R720であり、サーバーには128 GBのメモリが搭載され、48 GBのグローバルバッファーが割り当てられています。 次のグラフでは、CPUのグラフと同じ日のmgstat — Glorefs(グローバル参照)またはデータベースアクセス数のデータをより詳細に示しています。 Glorefsはその時点の負荷を代表するものとして、発生している作業量を示します。グローバルが参照されるとCPU時間が消費されますが、Cachéはグローバルメモリバッファプールを使用しているため、物理的な読み取り操作などの、他のシステムリソースが消費されるとは限りません。 一般的なCachéアプリケーションでは、GlorefとCPU使用率の間に非常に強い相関があります。 このCPUとglorefのデータを別の視点から見た場合、glorefsを減らすとCPU使用率が減り、コア数の少ないサーバーにデプロイしたり、既存システムをさらに拡張したりできるようになるということが分かります。 アプリケーションをさらに効率化することで、グローバル参照を削減する方法もありそうです。この考えは後の投稿で再検討します。 PhyRdsとRdratio mgstatのデータをグラフ化したPhyRds(物理的読み込み)とRdratio(読み込み比率)はシステムパフォーマンスから予想される詳細な情報を把握し、キャパシティプランニングを立てるのに役立ちます。 今後の投稿では、CachéのストレージIOについて詳しく説明します。 PhyRdsはディスクからCachéデータベースへの単純な物理読み取りIOPS(I/O毎秒)で、論理ディスクと物理ディスクに対応するオペレーティングシステムのメトリックに反映されているものと同じ値が表示されます。 ただし、オペレーティングシステムのIOPSにはCaché以外のアプリケーションに起因するIOPSも表示されている可能性があります。 予想されるIOPSを考慮せずにストレージのサイジングを行うと確実に失敗することになります。適切なキャパシティプランニングを行うには、システムがピークに達している状態でのIOPSを知る必要があります。 次のグラフは、午前0:00から15:30までのPhyRdsを示しています。 05:30から10:00の間に物理的読み込みが大幅に増加していることに注目してください。 その他には11:00と14:00になる直前に短めのピークが発生しています。 これらの原因は何だと思いますか? 皆さんのサーバーではこのようなピークが見られますか? Rdratioからは、より興味深い結果を得ることができます。このグラフは物理ブロックの読み取りに対する論理ブロックの読み取りの比率を表しています。 つまり、メモリからのグローバルバッファ(論理ブロック)からの読み取り回数と、桁違いに遅いディスクからの読み取り回数の比率を表しています。 Rdratioが高いほうが望ましく、長時間にわたってほぼゼロ近くまで低下するのは望ましくありません。 読み込みが多い時間帯に合わせてRdratioがゼロ近くに低下していることが分かります。 私はこのサイトについて、システムが長時間にわたって重くなっているとの電話連絡がユーザーからIT部門に入り始めたため、調査するように依頼されました。 私がシステムの調査を依頼された最初の数週間は、この現象はランダムに発生しているように思われました。 しかし、私は比較的簡単にこのような高いPhyRdsと低いRdratioのパターンとサポートへの問い合わせ回数に相関関係があることを発見しました。pButtonsが毎日24時間実行されるようにスケジュールされていたおかげで、数週間前のデータに遡って調査することができたからです。 さらなる分析を続けた結果、新しいシフト勤務者が適切なインデックスを使用しない劣悪なクエリと「不正な」パラメーターを組み合わせて入力するレポートをいくつか実行し、データベースの読み込みを増やしていたことを突き止めました。 それが、一見ランダムに見える遅延の原因だったのです。 これらの実行時間の長いレポートはデータをグローバルバッファに読み込んでいるため、対話ユーザーのデータはメモリではなく物理ストレージから取得されています。その結果、読み取りを処理するストレージに負荷がかかっています。 PhyRdsとRdratioを監視すれば、システムの健全性に関する情報を取得できます。また、劣悪なレポートやクエリの存在を突き止めることもできるかもしれません。 高いPhyRdsには妥当な原因があると思われます。そのような場合は、レポートを決まった時間に実行する必要があるでしょう。 物理メモリ容量が大きい最新の64ビットオペレーティングシステムとサーバーを使えば、本番システムのPhyRdsを最小化できるはずです。 お使いのシステムでPhyRdsが高い値を示している場合は、次のようないくつかの対策を検討することができます。 - データベースの(グローバル)バッファ数(およびシステムメモリ)を増やしてパフォーマンスを向上させる。 - 実行時間の長いレポートや抽出処理を営業時間外に実行するようにする。 - 実行時間の長い読み取り専用レポート、バッチジョブ、データ抽出処理を別のシャドウサーバーか非同期ミラーで実行し、対話ユーザーへの影響を最小限に抑え、CPUやIOPSなどのシステムリソースの利用負荷をオフロードする。 一般的に低いPhyRdsは望ましく、それはシステムをサイジングする際の目標でもあります。 ただし、PhyRdsが低くてもユーザーがパフォーマンスに不満を抱いている場合は、ストレージがボトルネックではないことを確かめるため、他にもチェックできることがあります。システムが必要なサービスを提供できなくなっていることが原因で、読み取りが少なくなっている可能性があります。 ストレージについては、今後の記事で詳しく見ていきます。 概要 この投稿では、pButtonsで収集されたメトリックをグラフ化し、システムの健全性を一目で確認する方法について説明しました。 今後の投稿では、システムメトリックとCachéメトリックの関係に加えて、これらを使用して将来の計画を立てる方法について詳しく説明します。
お知らせ
Mihoko Iijima · 2023年6月12日

テクノロジーボーナス詳細:InterSystems グランプリ・コンテスト 2023

開発者の皆さん、こんにちは! InterSystems グランプリコンテスト2023 では、InterSystems IRIS data platform を使用する機能であればどんな内容でもご応募いただけます。 以下の機能を含めた場合、ボーナスポイントを獲得できます。 詳細は以下の通りです。 LLM AI や LangChain の使用:Chat GPT、Bard など - 6ポイント InterSystems FHIR SQL Builder- 5ポイント InterSystems FHIR - 3ポイント IntegratedML - 4ポイント Native API - 3ポイント Embedded Python - 4ポイント Interoperability - 3ポイント Production EXtension(PEX) - 2ポイント Adaptive Analytics (AtScale) のキューブの利用 - 3ポイント Tableau, PowerBI, Logi の利用 - 3ポイント InterSystems IRIS BI - 3ポイント Docker container の利用 - 2ポイント ZPM Package によるデプロイ - 2ポイント オンラインデモ - 2ポイント ユニットテスト - 2ポイント InterSystems Community Idea に投稿された内容の実装 - 4ポイント コミュニティ(USコミュニティ)に記事を投稿する(最初の記事) - 2ポイント コミュニティ(USコミュニティ)に2つ目の記事を投稿する - 1ポイント Code Qualityをパスする - 1ポイント はじめてチャレンジされた方 - 3ポイント YouTubeにビデオを公開- 3ポイント LLM AI や LangChain の使用:Chat GPT、Bardなど - 6ポイント ChatGPT、Bard やPaLM, LLaMA などの他のAIエンジンを使用したLangChain ライブラリ や Large Language Models (LLM)を使用したソリューションを構築すると6ポイントのボーナスポイントを獲得できます。AutoGPTの使用もカウントされます。 Open Exchangeでは、iris-openai、chatGPT telegram botなど、いくつかの例があります。 InterSystems FHIR SQL Builder - 5ポイント InterSystems FHIR SQL Builder は、InterSystems IRIS for Health の機能で、FHIRリソースをSQLテーブルへマッピングし、アプリケーションでSQLクエリを介してFHIRリソースにアクセスできるよう手助けをするツールです。 FHIR SQLビルダーについて(日本語):21:13~ ドキュメントはこちら オンラインコースはこちら Open Exchangeのサンプル 注意: InterSystems FHIR SQL Builderをコンテスト応募作品に含める場合、InterSystems FHIR as a ServiceおよびIRIS For Healthのボーナス3ポイントは含まれません。 InterSystems FHIR as a Service and IRIS For Health - 3 ポイント InterSystems FHIR Server (FHIRaaS) を使用した新しいアプリケーションの構築や既存のアプリケーションのテストを行う開発者の皆様を募集します。ポータルにサインインしデプロイメントを行い、プログラミングコンテストのアプリケーション用にAWS上のInterSystems FHIRサーバーの使用してください。 また、InterSystems IRIS for Health、docker版を使用してFHIRアプリケーションを構築することができます。dockerイメージ構築時にFHIRサーバーを準備するIRIS-FHIR-Templateも使用できます。FHIR API 4.0.1のドキュメントはこちらです。詳しくは、InterSystems IRIS for Healthのドキュメントをご覧ください。 IntegratedML の使用 - 4ポイント 1. あなたのAI/MLソリューションにInterSystems IntegratedMLを使用してください。以下の開発環境テンプレートもご利用いただけます。(テンプレートの使い方については「開発環境テンプレート(IRIS プログラミングコンテストで使用していたテンプレート)の一覧」もご参照ください) InterSystems IntegratedMLテンプレート 2. データインポートツールの使用: テキストファイルからのデータのインポート(管理ポータル利用) CSVGEN - ZPMパッケージを利用して使用するCSVインポートユーティリティ CSVGEN-UI - ZPMパッケージを利用して使用するCSVGENの専用WebUI 3. ドキュメント: IntegratedMLの使用 4. オンラインラーニング&ビデオ オンラインラーニング:Learn IntegratedML in InterSystems IRIS オンラインラーニング:Preparing Your Data for Machine Learning オンラインラーニング:Predictive Modeling with the Machine Learning Toolkit オンラインラーニング:IntegratedML Resource Guide IntegratedML ー SQLから始める機械学習 IntegratedML と DataRobot の連携デモ InterSystems Native API usage - 3 ポイント InterSystems Native APIオプションを使用したフルスタックアプリケーションを開発された場合、3ポイント獲得できます。 Native APIオプションはこちら👉: .NET, Java, Python, Node.js. Learn more InterSystems Native APIについて Embedded Python - 4 ポイント Embedded Python をあなたのアプリケーションに使用した場合、ボーナスポイントを4ポイント獲得できます。(IRIS 2021.2以降のバージョンをご利用ください) 注意:Native API for Pythonも使用している場合は、Embedded Pythonのボーナスポイントのみカウントします。 Interoperability Productions にBPLやDTLを使用した場合 - 3ポイント IRIS Interoperability プロダクションの主要な特徴の1つに、ビジネス・プロセス言語 (BPL)で記述可能なビジネスプロセスがあげられます。 ドキュメント:ビジネス・プロセスの定義 ビジネス・ルールは Interoperabilityプロダクションで使用するビジネス・プロセス内の処理フローの分岐に利用するような値を開発コードから分離して保存しておくことができる定義で、ルールが変更されても開発コード(ビジネス・プロセス)に影響を与えないため、変更に強い環境を提供できます。InterSystems IRISでは、ルールエディタ/ObjectScript どちらを利用してもルールの開発が行えます。 あなたのアプリケーションがInteroperabilityプロダクションでビジネス・プロセス、またはビジネス・ルールを使用している場合、ボーナスポイントを獲得できます。 Business Rule の例(クラス定義) ビジネス・ルールの開発 2023.1以降では、ルールエディタが新しいGUIに変わりました。新しいGUIでの利用方法については英語ドキュメントをご参照下さい。 Production EXtension (PEX) の使用 - 2ポイント PEX は、Interoperability プロダクションのPython、Java、.NET用エクステンションです。 PEXのデモ PEX : 外部言語によるプロダクションの開発 InterSystems IRIS は、Python Pex モジュールもあり、PythonからInterSysetms IRIS Interoperabilityのプロダクションを開発することができます。これを使用するとボーナスポイントを3ポイント獲得できます。 また、Guillaume Ronguier氏によって紹介された代替のpython.pexホイールも使用可能です。 Python Interoperability は、@Guillaume.Rongier7183 が提供する Python上のInterSystems IRIS用PEXアドオンモジュールです。 この他、PEXの記事もあります。PEXの例 Adaptive Analytics (AtScale) キューブを使用した場合 - 3ポイント InterSystems Adaptive Analytics は、分析ソリューションに AtScale キューブを作成し使用するオプションを提供しています。 コンテスト用に用意したAtScaleサーバー(URLと認証情報はDiscord Channelで収集可能)を使ってキューブを使うか、新規に作成してJDBCでIRISサーバーに接続することが可能です。 AtScaleを使ったAnalyticsソリューションの可視化レイヤーは、Tableau、PowerBI、Excel、Logiで作成することができます。 InterSystems IRIS Adaptive Analytics、AtScale documentation オンラインラーニング Tableau, PowerBI, Logi を使用した場合 - 3ポイント Tableau、PowerBI、Logiで作成したビジュアライゼーションについて、それぞれ3ポイント獲得できます。 ビジュアライゼーションは、IRIS BIサーバーの直接接続、またはAtScaleとの接続を介して行うことができます。 Logiは、InterSystems Reportsソリューションの一部として利用可能です。InterSystems WRCでコンポーザーをダウンロードできます。一時的なライセンスは、discord channelで収集することができます。 オンラインラーニング InterSystems IRIS BI - 3ポイント InterSystems IRIS Business Intelligence は IRIS の機能で、IRIS の永続的なデータに対して BI キューブやピボットを作成し、インタラクティブなダッシュボードを使用してユーザーに情報を提供することができる機能です。 InterSystems IRIS Business Intelligence の概要 基本のテンプレート: iris-analytics-template には、IRIS BIキューブ、ピボット、ダッシュボードの例が含まれています。 また、以下のOpen Exchangeにある公開ソリューションもあります。 Samples BI Covid19 analytics Analyze This Game of Throne Analytics Pivot Subscriptions Error Globals Analytics 開発テンプレート(IRIS Analytics Template)の使い方のご紹介(第8回 InterSystems IRIS Analytics コンテスト) サンプルキューブの解説、ピボットの作成、ダッシュボードの作成方法の解説が含まれています Creating InterSystems IRIS BI Solutions Using Docker & VSCode (video) The Freedom of Visualization Choice: InterSystems BI (video) InterSystems BI(DeepSee) Overview (online course) InterSystems BI(DeepSee) Analyzer Basics (online course) Docker コンテナの使用 - 2ポイント アプリケーションは、Docker コンテナで動作する InterSystems IRIS を使用する場合、「Docker コンテナ」ボーナスが獲得できます。最もシンプルなテンプレートから開始することもできます。 テンプレートについての解説は、「IRISを手軽に使う3つの方法」(12:28~)をご参照ください。 ZPM Package によるデプロイ - 2ポイント 以下のようにデプロイできる ZPM(InterSystems Package Manager)であなたのFull Stackアプリケーションを公開するとボーナスポイントを獲得できます。 zpm "install your-multi-model-solution" 上記コマンドをZPMクライアントがインストールされたIRISで実行します。 ZPM について/ZPM Documentation あなたのプロジェクトをオンラインデモで公開した場合 - 2ポイント オンラインデモとしてアプリケーションをクラウドにプロビジョニングすると、2ポイント獲得できます。開発環境テンプレートやその他のデプロイメントオプションを使用することができます。例サンプルアプリケーションの使用方法についてはビデオをご参照ください。 ユニットテストを使用した場合 - 2ポイント InterSystems IRISコードにユニットテストを含めたアプリケーションは、ボーナスポイントを獲得できます。 ObjectScriptのユニットテストについては、ドキュメント:%UnitTest チュートリアル や コミュニティのテストタグをご参照ください。 InterSystems IdeaのCommunity Opportunity を実装された場合 - 4 ポイント InterSystems Ideaポータルに投稿されている"Community Opportunity" statusのアイデアを実装された場合、4ポイント獲得できます! Developer Communityに記事を初めて投稿する - 2ポイント コミュニティに応募したアプリケーションの概要を説明する記事を投稿すると2ポイントを獲得できます。 Developer Communityに2つ目の記事を投稿する - 1ポイント 2つ目の記事を投稿する、または投稿したアプリケーション概要の翻訳記事を投稿することで、さらボーナスポイントを獲得できます。(3記事以降はポイントが加算されません。) Code quality をパスしてBug 0件 を表示させる - 1ポイント コードの静的制御のためのcode quality Github actionを組み込み、ObjectScriptの Bug 0件 と表示させるとボーナスポイントを獲得できます。 初めてチャレンジされた方 - 3ポイント InterSystems Open Exhangeコンテストに初めて参加された場合、3ポイント獲得できます! Video on YouTube - 3 points 開発した作品の動画を作成し、YouTube に掲載した場合、3ポイント獲得できます。 ※ ボーナスポイントについては、変更される可能性もあります。予めご了承ください。 ぜひ、コンテストにチャレンジしてみてください!
記事
Toshihiko Minamoto · 2020年11月19日

InterSystems IRIS 用の Power BI コネクタ パート I

企業は変化の激しい業界で競争力を維持するため、イノベーションを起こす必要があります。 この製品は企業が迅速かつ安全な意思決定を行い、より正確な将来の実績を目指せるようにします。 ビジネスインテリジェンス(BI)ツールは、企業が試行錯誤に頼ることなくインテリジェントな意思決定を行うのに役立ちます。 このようなインテリジェントな決定は市場で成功するか失敗するかを決定付けます。 Microsoft Power BI は業界をリードするビジネスインテリジェンスツールの 1 つです。 Power BI では数回クリックするだけでマネージャーやアナリストが企業のデータを簡単に探索できます。 これは重要なことです。容易にデータにアクセスして視覚化できれば、それがビジネス上の意思決定に使用される可能性が高くなるからです。 ![](/sites/default/files/inline/images/images/image5.jpg) Power BI には、さまざまなグラフ、チャート、表、マップが含まれています。 そのため、常にデータに合った視覚化を見つけることができます。   ただし、BI ツールの有効性はそれを裏付けるデータによって決まります。 Power BI は多くのデータソースをサポートしており、最近になって InterSystems IRIS がサポート対象のソースに最近追加されました。 Power BI では IRIS に格納されているデータを刺激的な新しい方法で探索できるため、ここではこれら 2 つのすばらしいツールを一緒に使用する方法を取り上げます。   この記事では実際のデータに基づいて IRIS テーブルと Power BI を一緒に使用する方法を説明します。 後続の記事では、IRIS キューブで Power BI を使用する方法について説明します。   プロジェクトの前提条件とセットアップ 開始するには、次のものが必要です。   InterSystems IRIS Data Platform Microsoft Power BI Desktop(2019 年 4 月リリース以降) InterSystems Sample-BI データ   この記事では InterSystems IRIS Data Platform を使用するため、続行するには IRIS のインストール環境にアクセスする必要があります。 必要に応じて InterSystems Web サイトから試用版をダウンロードできます。   Microsoft Power BI Desktop のインストール方法は 2 つです。 インストーラをダウンロードするか、Microsoft Store 経由でインストールしてください。 InterSystems IRIS をインストールしたマシン以外のマシンから Power BI を実行している場合は、そのマシンに InterSystems IRIS ODBC ドライバーを個別にインストールする必要があります。   Power BI でダッシュボードを作成するには、いくつかのデータが必要です。 この記事では InterSystems がこちらの GitHub で提供している HoleFoods データセットを使用します。 続行するには、このリポジトリをクローンするかダウンロードしてください。   私は IRIS で SamplesBI というネームスペースを作成しました。 これは必須ではありませんが、新しいネームスペースを作成する必要がある場合は、IRIS Management Portal で [System Administration] > [Configuration] > [System Configuration] > [Namespace] に移動し、[New Namespace] をクリックしてください。 名前を入力し、データファイルを作成するか既存のファイルを使用します。   InterSystems IRIS ターミナルで、データをインポートする先のネームスペースを入力します。 この場合は SamplesBI を入力しています。     buildsample/Build.SampleBI.cls のフルパスと "ck" コンパイルフラグを指定して $System.OBJ.Load() を実行します。     次のように Build.SampleBI クラスの Build メソッドを実行し、サンプルファイルを含むディレクトリのフルパスを入力します。   Power BI と IRIS の接続 次に、Power BI を IRIS に接続します。 Power BI を開き、[データの取得] をクリックします。 [データベース] を選択すると、InterSystems IRIS コネクタが表示されます。     ホストアドレスを入力します。 ホストアドレスは InterSystems IRIS インスタンス(私の場合は localhost)のホストの IP アドレスであり、ポートはインスタンスのスーパーサーバーポート(IRIS のデフォルトは 57773)であり、ネームスペースは HoleFoods データが配置されている場所です。   常に最新のデータを表示できるよう、[データ接続モード] では「DirectQuery」を選択します。   ![](/sites/default/files/inline/images/images/image6.jpg)   次に、ユーザー名とパスワードを入力して IRIS に接続します。 デフォルトは「_SYSTEM」と「SYS」です。   ![](/sites/default/files/inline/images/images/image2.jpg) IRIS で作成したテーブルとキューブの両方をインポートできます。 まずはいくつかのテーブルをインポートしましょう。   [テーブル] の HoleFoods の下にある以下の項目を確認します。   Country Outlet Product Region SalesTransaction     あともう少しです! テーブル間のリレーションシップについて Power BI に通知するため、[リレーションシップの管理] をクリックします。     次に、[新規] をクリックします。     「SalesTransaction」と「Product relationship」の 2 つのリレーションシップを作りましょう。   上にある「SalesTransaction」テーブルを選択し、「Product」列をクリックします。 次に「Product」テーブルを選択し、「ID」列をクリックします。 [基数] が自動的に「多対一 (*:1)」に変わったことを確認できます。     次の組み合わせでこの手順を繰り返します。   「SalesTransaction(Outlet)」と「Outlet(ID)」 「Outlet(Country)」と「Country(ID)」 「Country(Region)」と「Region(ID)」     これらのリレーションシップは、外部キーと表現されている場合は自動的にインポートされています。   Power BI にはリレーションシップのスキーマビューアーも備わっています。 アプリケーションの左側にあるボタンをクリックすると、データモデルが表示されます。 ![](/sites/default/files/inline/images/images/image24.jpg)   ダッシュボードの作成 これで、ダッシュボードを作成するために必要なものがすべて揃いました。   まずは左側のボタンをクリックし、スキーマビューからレポートビューに切り替えましょう。 [ホーム] タブの [挿入] グループにある [テキストボックス] をクリックしてタイトルを追加します。   [挿入] グループには、レポートを拡張するために使用できるテキスト、図形、画像などの静的要素が含まれています。     最初の視覚化を追加しましょう! [フィールド] ペインで、「Product」の「名前」と「SalesTransaction」の「UnitsSold」を確認します。     次に [スタイル] に移動し、[太字のヘッダー] を選択します。     次に、データ変換を行います。 [フィールド] ペインの [SalesTransaction] の横にある省略記号をクリックします。     次に [クエリの編集] をクリックします。 「Power Query Editor」が開きます。     「DateOfSale」列を選択し、「重複する列」をクリックします。     この新しい列の名前を「Year」に変更し、「日付」をクリックして「年」を選択します。     これらの変更を適用します。 次に新しい列を選択し、[モデリング] タブで [既定の概要] を [集計しない] に変更します。     「折れ線グラフ」視覚化を追加してから Year を軸にドラッグし、「Name」を「Region」から凡例にドラッグし、「AmountOfSale」を「SalesTransaction」から「値」にドラッグします。     HoleFoods の営業チームが 2000 台の販売を目標としていると想定してください。 この場合、チームが目標を達成しているかどうかをどのように判断できますか?   この質問に答えるため、メトリックと目標値のビジュアルを追加しましょう。   [フィールド] ペインの「SalesTransaction」で、「UnitsSold」をオンにして、[ゲージ] グラフをクリックします。 [スタイル] プロパティで [最大値] を 3000 に、[目標値] を 2000 に設定します。     KPI(主要業績評価指標)は有用な意思決定ツールであり、Power BI では便利な KPI ビジュアルを使用できます。   これを追加するには「SalesTransaction」で「AmountOfSale」をオンにし、[視覚化] で [KPI] を選択します。 次に、「Year」を [トレンド軸] にドラッグします。     すべてのグラフとビジュアルの位置を揃えるには、ビジュアルをクリックしてドラッグしてください。エッジまたは中心が別のビジュアルまたはビジュアル一式のエッジまたは中心と位置が揃いそうになると、赤い破線が表示されます。     [表示] タブに移動して、[枠線の表示] と [描画オブジェクトをグリッドにスナップ] を有効にすることもできます。     最後に、HoleFoods のグローバルプレゼンスを示すマップを追加します。 [モデリング] タブで、「Outlet」の Longitude と Latitude を[要約しない] に設定します。     マップツールは、[視覚化] ペインにあります。 マップを追加した後、Latitude フィールドと Longitude フィールドを Outlet からマップ上のそれぞれのプロパティにドラッグします。 また、SalesTransaction から AmountOfSale を [サイズ] プロパティにドラッグし、UnitsSold を [ヒント] にドラッグします。     そして、最終的にダッシュボードが完成しました。   ダッシュボードは Power BI サービスに公開すると共有できます。 そのためには、Power BI アカウントにサインアップする必要があります。 まとめ わずか数分で Power BI を InterSystems IRIS に接続し、素晴らしくインタラクティブな視覚化を行うことができました。   開発者としては、これを素晴らしいことだと思っています。 管理者向けのダッシュボードの開発に数時間や数日を費やすことなく、数分で作業を完了できるからです。 さらに素晴らしいのは、マネージャーが自分でレポートをすばやく簡単に作成する方法を示すことができることです。   開発者は往々にして視覚化の開発を業務の一環として行いますが、普通はその時間をミッションクリティカルなアーキテクチャとアプリケーションの開発に費やしたほうがよいでしょう。 IRIS と Power BI を一緒に使用すると、開発者が時間を効率的に使用できるようになり、マネージャーはダッシュボードの開発、テスト、本番環境への展開を数週間も待つことなく、データにすぐにアクセスして視覚化できるようになります。  
お知らせ
Mihoko Iijima · 2020年10月26日

第7回 InterSystems IRIS プログラミングコンテスト(Interoperability コンテスト)

開発者の皆さんこんにちは!IRIS プログラミングコンテスト 7 回目のテーマが発表されました! 今回のコンテストのテーマは ⚡️ InterSystems Interoperability(相互運用性) Contest ⚡️ です! 日本からのご応募お待ちしております! 応募期間は 2020年11月2日~15日 です! (投票期間は 2020年11月16日~22日、勝者発表は 11月23日を予定しています) 優勝特典 1、審査員から多く票を集めたアプリケーションには、以下の賞金が贈られます。 🥇 1位 - $2,000 🥈 2位 - $1,000 🥉 3位 - $500 2、Developer Community で多く票を集めたソリューションには、以下の賞金が贈られます。 🥇 1位 - $1,000 🥈 2位 - $500 複数の参加者が同数の票を獲得した場合、全参加者が勝者となり賞金は勝者間で分配されます。 参加資格 どなたでもご参加いただけます!(InterSystems 開発者コミュニティのアカウントを作成するだけでご応募いただけます) コンテストのスケジュール 11月2日~15日 応募期間(Open Exchange へ作成されたアプリケーションをアップロードいただける期間=2週間です。この期間内であればアップロード後も自由に編集できます。) 11月16日~22日 投票(1週間) 11月23日 優秀者発表(US時間に発表します) コンテストのテーマ 💡 InterSystems IRIS / IRIS for Health を使用した Interoperability(相互運用性)ソリューションの開発 💡 InterSystems IRIS または InterSystems IRIS for Health を使用した Interoperability(相互運用性)ソリューションの開発または、メンテナンスを支援するソリューションを開発します。 アプリケーションは、IRIS Community Edition、IRIS for Health Community Edition、IRIS Advanced Analytics Community Edition のいずれかで動作する必要があります。 アプリケーションはオープンソースであり、GitHubで公開されている必要があります。 アプリケーションに特別な技術実装を導入すると、技術的なボーナスを獲得できます。ボーナスの詳細については、後日発表します! Helpful resources 1. アプリケーションの例(Open Exchange のアプリケーション) ETL-Interoperability-Adapter HL7 and SMS Interoperability Demo Twitter Sentiment Analysis with IRIS Healthcare HL7 XML RabbitMQ adapter 2. Interoperabilityを使ってみよう!(日本語) Interoperabilityの動作の仕組みやどんな開発が必要になるのか、などを7つの記事でご紹介しています。 3.コンテスト応募方法(このページ末尾のビデオをご参照ください) 4. オンラインコース(無料でお試しいただける learning.intersystems.com 上にあるコース) Interoperability for Business Interoperability QuickStart Interoperability Resource Guide - 2019 5. ビデオ Intelligent Interoperability Interoperability for Health Overview 審査及び投票ルール(英語) インターシステムズ社のプロダクトマネージャ、Developer Communityのモデレータ、グローバルマスターアドボケイト(VIPレベル)等、Developer Community 内での投票も行われます。 コンテストの審査および投票ルールについて詳細はこちらをご覧ください。 ご応募方法について 以下の応募方法ビデオをご参照ください。 以下、コンテストに応募する迄の手順をご説明します。 コンテスト応募までの流れは以下の通りです(※ビデオでは、3番以降の内容をご紹介しています)。 1、IRISプログラミングコンテスト用テンプレートを使用して、開発環境を準備します。 2、コンテスト用アプリケーションを作成します。 3、コンテストの準備が完了したら、ソースコードをローカルのGitリポジトリへコミットします。 初回コミット時に、Gitの初期設定がないためコミットが失敗することがあります。その場合は、以下のコマンドでGitユーザ名とEmailを設定します。 git config --global user.name "ここにユーザ名"git config --global user.email "ここにメールアドレス” 4、ローカルのGitリポジトリのコミットが完了したら、リモートのGitリポジトリを作成します。 リポジトリ作成後、リモートリポジトリのURLをコピーします。 5、リモートのGitリポジトリへPushします。 git push ここにリモートのリポジトリのURL 6、OpenExchangeにログインし、アプリケーションを追加します。 ※事前にDeveloper communityでユーザアカウントを作成する必要があります。ログイン後、Profile→Applications から Application をクリックし、4 でコピーしたリモートのGitリポジトリのURLを設定します。アプリケーションを登録すると、画面右上に「Send Approval」のボタンが表示されるので、クリックします。再度作成したアプリケーションを開くと、「Apply for Contest」ボタンが表示されるので、クリックすると応募が完了します。 テクノロジーボーナスについて追記しています。 詳細は、こちらの記事をご参照ください! Interoperability機能を使った常駐プロセスの作り方 (日本語記事)もあります。 ぜひご参照ください!
お知らせ
Mihoko Iijima · 2020年11月24日

★受賞者発表!★第7回 InterSystems IRIS プログラミングコンテスト(Interoperabilityコンテスト)

開発者の皆さんこんにちは! 第7回 InterSystems IRIS プログラミングコンテスト(Interoperabilityコンテスト) への応募、投票が全て終了しました。コンテストへのご参加、またご興味をお持ちいただきありがとうございました。 今回のお知らせでは、見事受賞されたアプリケーションと開発者の方々を発表します! 🏆 審査員賞 - 特別に選ばれた審査員から最も多くの票を獲得したアプリケーションに贈られます。 🥇 1位 - $2,000 は Open API Client Gen を開発された Lorenzo Scalese さんに贈られました! 🥈 2位 - $1,000 は OCR Service を開発された YURI MARX GOMES さんに贈られました! 🥉 3位 - $250 は IRIS Interoperability Message Viewer を開発された Henrique Gonçalves Dias さんに贈られました! 🥉 3位 - $250 は interoperability-integratedml-adapter を開発された José Roberto Pereira さんに贈られました! 🏆 開発者コミュニティ賞 - 最も多くの票を獲得したアプリケーションに贈られます。 🥇 1位 - $1,000 は OCR Service を開発された YURI MARX GOMES さんに贈られました! 🥈 2位 - $500 は IRIS Interoperability Message Viewer を開発された Henrique Gonçalves Dias さんに贈られました! 🥉 3位 - $250 は Open API Client Gen を開発された Lorenzo Scalese さんに贈られました! 🎊 受賞者の皆様、おめでとうございます!👏 今回の Interoperability コンテストにご注目いただきありがとうございます! さて、次回のコンテストは・・・・・・? InterSystems Analytics コンテストです! 詳細については近日公開します!お見逃しなく!
お知らせ
Mihoko Iijima · 2020年11月24日

第8回 InterSystems IRIS プログラミングコンテスト(Analytics コンテスト)

開発者の皆さんこんにちは!IRIS プログラミングコンテスト 第7回の勝者が発表されたばかりですが、第8回のテーマが発表されました! 今回のコンテストのテーマは 🏆 InterSystems Analytics Contest 🏆 です! さぁ、年内最後のコンテストです!日本からのご応募お待ちしております! 応募期間は 2020年12月7日~20日 です! (投票期間は 2020年12月21日~27日、勝者発表は 12月28日を予定しています) 優勝特典 1、審査員から多く票を集めたアプリケーションには、以下の賞金が贈られます。 🥇 1位 - $2,000 🥈 2位 - $1,000 🥉 3位 - $500 2、Developer Community で多く票を集めたソリューションには、以下の賞金が贈られます。 🥇 1位 - $1,000 🥈 2位 - $500 複数の参加者が同数の票を獲得した場合、全参加者が勝者となり賞金は勝者間で分配されます。 参加資格 どなたでもご参加いただけます!(InterSystems 開発者コミュニティのアカウントを作成するだけでご応募いただけます) コンテストのスケジュール 12月7日~20日 応募期間(Open Exchange へ作成されたアプリケーションをアップロードいただける期間=2週間です。この期間内であればアップロード後も自由に編集できます。) 12月21日~27日 投票(1週間) 12月28日 優秀者発表(US時間に発表します) コンテストのテーマ 💡 InterSystems IRIS を使用した分析ソリューションの開発 💡 1つ以上の InterSystems IRIS 分析機能(IRIS BI、IRIS NLP、IntegratedML、InterSystems Reports)を使用して、シンプルで説得力のある明確な可視化やストーリーを開発してください。 アプリケーションは、IRIS Community Edition、IRIS for Health Community Edition、IRIS Advanced Analytics Community Edition のいずれかで動作する必要があります。 また、アプリケーションはオープンソースであり、GitHubに公開していることも条件の一つです。 アプリケーションに特別な技術実装を導入した場合、技術的なボーナスを獲得できます。ボーナス詳細については後日発表します。 Helpful resources 1. アプリケーションの例(Open Exchange のアプリケーション) IRIS Analytics Template(テンプレートの使い方 日本語解説+ビデオはこちら!) Samples BI Covid19 analytics Analyze This Game of Throne Analytics Pivot Subscriptions Samples Aviation Set Analysis Error Globals Analytics 2.コンテスト応募方法(このページ末尾のビデオをご参照ください) 3. オンラインコースや資料など(英語) DeepSee Overview DeepSee Analyzer Basics InterSystems Reports Resource guide iKnow First Look 4. ビデオ(英語) Creating InterSystems IRIS Analytics Solutions Using Docker & VSCode The Freedom of Visualization Choice: InterSystems BI A look at InterSystems Reports 5. サンプルデータ Adventure Works Synthea 審査及び投票ルール(英語) インターシステムズ社のプロダクトマネージャ、Developer Communityのモデレータ、グローバルマスターアドボケイト(VIPレベル)等、Developer Community 内での投票も行われます。 コンテストの審査および投票ルールについて詳細はこちらをご覧ください。 ご応募方法について 以下の応募方法ビデオをご参照ください。 以下、コンテストに応募する迄の手順をご説明します。 コンテスト応募までの流れは以下の通りです(※ビデオでは、3番以降の内容をご紹介しています)。 1、IRISプログラミングコンテスト用テンプレートを使用して、開発環境を準備します。 2、コンテスト用アプリケーションを作成します。 3、コンテストの準備が完了したら、ソースコードをローカルのGitリポジトリへコミットします。 初回コミット時に、Gitの初期設定がないためコミットが失敗することがあります。その場合は、以下のコマンドでGitユーザ名とEmailを設定します。 git config --global user.name "ここにユーザ名"git config --global user.email "ここにメールアドレス” 4、ローカルのGitリポジトリのコミットが完了したら、リモートのGitリポジトリを作成します。 リポジトリ作成後、リモートリポジトリのURLをコピーします。 5、リモートのGitリポジトリへPushします。 git push ここにリモートのリポジトリのURL 6、OpenExchangeにログインし、アプリケーションを追加します。 ※事前にDeveloper communityでユーザアカウントを作成する必要があります。ログイン後、Profile→Applications から Application をクリックし、4 でコピーしたリモートのGitリポジトリのURLを設定します。アプリケーションを登録すると、画面右上に「Send Approval」のボタンが表示されるので、クリックします。再度作成したアプリケーションを開くと、「Apply for Contest」ボタンが表示されるので、クリックすると応募が完了します。
お知らせ
Mihoko Iijima · 2021年1月11日

テクノロジーボーナス詳細:第9回 InterSystems IRIS プログラミングコンテスト(マルチモデルコンテスト)

開発者の皆さん、こんにちは! 第9回のマルチモデルコンテストの 続報 📣 の「テクノロジーボーナス」についてご紹介します。 InterSystems Globals (key-value) InterSystems SQL InterSystems Objects Your data model ZPM Package deployment Docker container usage 詳細は以下ご参照ください。 InterSystems Globals (key-value) - 2 points InterSystems グローバルは、InterSystems IRIS に任意のデータを格納するために使用される多次元スパース配列です。各グローバル・ノードはキーとみなされ、値(バリュー)を設定することができます。InterSystems IRIS は、グローバルを管理するための ObjectScript のコマンドや Native API を含む一連の API を提供しています。 ObjectScript または Native API を介してグローバルを使用すると、2 ポイント獲得できます。 ツール: 管理ポータルでのグローバルの管理 ドキュメント: 多次元ストレージの使用法 (グローバル) グローバルの使用法 記事: グローバルはデータを保存するための魔法の剣です パート1 The art of mapping Globals to Classes ビデオ: Globals QuickStart InterSystems SQL (iKnow) - 2 points InterSystems IRISは、ObjectScript、REST API、xDBCを介してデータへのSQLアクセスを提供します。 アプリケーションで InterSystems SQL を使用すると、2 ポイント獲得できます。 ツール: VSCode SQL Tools DBeaver 管理ポータルの SQL インタフェースの使用法 Other SQL tools ドキュメント: SQL Access InterSystems SQL リファレンス 記事: InterSystems IRIS のクラスクエリ Your data model - 2 points InterSystems IRISは、独自のデータモデル API を公開するデータプラットフォームとして使用することができます。ObjectScript、REST API、Native API を利用して、時系列、空間、グラフ、RDF/トリプル、カラムストア、ドキュメントストアなどの特殊なデータモデルを提供する独自の API を公開することができます。 新しいデータモデル API を開発すると、2 ポイント獲得できます。 ZPM Package deployment - 2 points フルスタックアプリケーション用の ZPM(ObjectScript Package Manager) パッケージをビルドして公開し、それを使用してデプロイできるようにすると、2 ポイント獲得できます。 以下のコマンド実行例は、 IRIS に ZPM クライアントをインストールしパッケージをインストールしている例です。 zpm "install your-multi-model-solution" 詳しくは、ZPM client や ドキュメント をご参照ください。 Docker container usage - 2 points docker コンテナで動作する InterSystems IRIS を使用すると「Docker コンテナ」のボーナスポイントを獲得できます。 以下の docker コンテナを利用した開発環境テンプレートを使用しても、ボーナスポイントを獲得できます。 IRIS Interoperability Template Interoperability(相互運用性)については、Interoperabilityを使ってみよう!(日本語)の記事もぜひご参照ください(Interoperabilityの動作の仕組みやどんな開発が必要になるのか、などを7つの記事でご紹介しています)。 上記に掲載されている技術の使用方法についてご質問がありましたら、お気軽にコミュニティまでご質問ください! コンテストへのご参加、お待ちしてます! 注意:現在のテクノロジーボーナスリストはコンテスト開始前に変更される可能性もあります。予めご了承ください。
お知らせ
Mihoko Iijima · 2021年1月25日

★投票開始★ 第9回 InterSystems IRIS プログラミングコンテスト(マルチモデルコンテスト)

開発者の皆さん、こんにちは。 第9回 IRIS プログラミングコンテスト(マルチモデルコンテスト)の投票が開始されました! 🔥 これだ!と思う一押し作品に投票お願いします! 🔥 投票期間:1月25日~31日 (1週間) 投票方法は?Expert Nomination または Community Nomination を選択いただき、どの作品がどの順位になるかを指定しながら投票します。 Community Leaderboard: 順位 ポイント 1位 3点 2位 2点 3位 1点 そして、エキスパートノミネーションからの投票は以下の通りです(エキスパートのレベルが上がると獲得できるポイントも増えます!)。 Experts Leaderboard: エキスパートレベル 順位 1位 2位 3位 GM、モデレーター、プロダクトマネージャーのVIPレベル 9点 6点 3点 グローバルマスターズのエキスパートレベル 6点 4点 2点 グローバルマスターズのスペシャリストレベル 3点 2点 1点 エキスパートリーダーボードの投票はコミュニティリーダーボードにもポイント(1位3点、2位2点、3位1点)が加算されます。 投票方法について 投票は Open Exchange コンテストページで行われ、Open Exchange にサインインする必要があります。 投票期間であれば、一度投票した後も別のアプリケーションへ投票し直すこともできます(投票期間は1週間あります)。 なお、コンテスト参加者は投票週間の間にバグの修正やアプリケーションの改善を行うことができますので、アプリケーションのリリース情報についてもお見逃しなく!(サブスクリプション登録が行えます) ➡️ InterSystems オンラインコンテストの新しい投票ルールについて詳細はこちらをご参照ください。
お知らせ
Mihoko Iijima · 2021年2月1日

★受賞者発表!★第9回 InterSystems IRIS プログラミングコンテスト(マルチモデルコンテスト)

開発者の皆さんこんにちは! 第9回 InterSystems IRIS プログラミングコンテスト(マルチモデルコンテスト) への応募、投票が全て終了しました。コンテストへのご参加、またご興味をお持ちいただきありがとうございました。 今回のお知らせでは、見事受賞されたアプリケーションと開発者の方々を発表します! 🏆 Experts Nomination - 特別に選ばれた審査員から最も多くの票を獲得したアプリケーションに贈られます。 🥇 1位 - $2,000 は iris-image-index-demo を開発された @José Roberto Pereira さんに贈られました! 🥈 2位 - $1,000 は zapm を開発された @Sergey Mikhailenk さんに贈られました! 🥉 3位 - $500 は iris-multimodel-suite を開発された @Renato Banzai さんに贈られました! 🏆 Community Nomination - 最も多くの票を獲得したアプリケーションに贈られます。 🥇 1位 - $1,000 は HealthInfoQueryLayer を開発された @Botai Zhang さんに贈られました! 🥈 2位 - $500 は ris-vaccine-tracker を開発された @Henrique Gonçalves Dias さんに贈られました! 🥉 3位 - $250 は iris-image-index-demo を開発された @José Roberto Pereira さんに贈られました! 🎊 受賞者の皆様、おめでとうございます!👏 今回も、コンテストにご注目いただきありがとうございます! さて、次回のコンテストは・・・・・・? InterSystems グランプリ・プログラミングコンテストの開催が発表されました!! なんと、賞金総額ですが 過去最高の 16,000ドル! です!ぜひ、チャレンジしてみてください! ご応募、お待ちしております!☺
記事
Toshihiko Minamoto · 2021年1月13日

Docker コンテナ内で InterSystems IRIS と Package Manager を併用する場合について。

デベロッパーの皆さん、こんにちは! InterSystems Package Manager (ZPM) は、素晴らしいツールですが、インストールせずにすぐ使用できたら、さらに便利です。 それを実現する方法はいくつかあります。以下に dockerfile を使って ZPM をビルドした IRIS コンテナを用意する方法をご紹介します。 [リポジトリ](https://github.com/intersystems-community/objectscript-zpm-template)を作成し、その[dockerfile に数行のコード](https://github.com/intersystems-community/objectscript-zpm-template/commit/6c1018312ca3214048dbed1b7c4307a65fa8563f)を記述しました。これを使えば、最新バージョンの ZPM をダウンロードし、インストールできます。  IRIS コミュニティエディション用のあなたの dockerfile にこれらのコマンドを追加すれば、ZPM がインストールされ、使用できるようになります。 最新の ZPM クライアントをダウンロードするコマンドは以下の通り。 RUN mkdir -p /tmp/deps \ && cd /tmp/deps \ && wget -q https://pm.community.intersystems.com/packages/zpm/latest/installer -O zpm.xml IRIS に ZPM をインストールするコマンドは以下の通り。 " Do \$system.OBJ.Load(\"/tmp/deps/zpm.xml\", \"ck\")" \ これで完了です! このリポジトリで ZPM を試すには、以下を実行します $ git clone https://github.com/intersystems-community/objectscript-zpm-template.git リポジトリをビルドして実行します $ docker-compose up -d Open IRIS terminal: $ docker-compose exec iris iris session iris USER> ZPM を読み出します USER>zpm zpm: USER> ウェブターミナルをインストールします zpm: USER>install webterminal webterminal] Reload START [webterminal] Reload SUCCESS [webterminal] Module object refreshed. [webterminal] Validate START [webterminal] Validate SUCCESS [webterminal] Compile START [webterminal] Compile SUCCESS [webterminal] Activate START [webterminal] Configure START [webterminal] Configure SUCCESS [webterminal] Activate SUCCESS zpm: USER> 是非ご活用ください! ![](/sites/default/files/inline/images/images/Screenshot%202019-09-06%2012_46_59.png) 全体のプロセスはこちらの GIF をご覧ください。 ![](/sites/default/files/inline/images/images/webterm2.gif)