SAS Event Stream Processingとは
- 製品の概要
- Event Stream Processingアプリケーションの作成
- Event Stream Processingモデルとは
- SAS Event Stream Processing on SAS Cloudの使用
製品の概要
SAS Event Stream Processingを使用すると、多数のイベントの連続フローを迅速に処理および分析することができます。それは、様々なSASソリューションと連携し、製造業、ヘルスケア、エネルギー、公益事業、金融サービス、サイバーセキュリティ、不正検知などのリアルタイムストリーミングイベント分析を提供します。
イベントは、と呼ばれる高スループット、待ち時間が少ないデータフローを通じて配信されます。イベントストリームは、次を使用するアプリケーションでパブリッシュされます。
- コネクタクラスまたはアダプタ実行可能ファイル
- C、JAVA、またはPythonパブリッシュ/サブスクライブAPI
- SAS Event Stream Processing Streamviewer
- SAS Event Stream Processing Studio
Jupyter Labでは、PythonのオープンソースパッケージであるESPPyを使用して、Event Stream Processingモデルをプログラミングし、ESPサーバーに接続できます。
Event Stream Processingアプリケーションは、イベントストリームに対してリアルタイムな分析を実行できます。Event Stream Processingの一般的な使用例には、次のものが含まれますが、これらに限定されません。
- センサーデータの監視と管理
- 運用システムの状態監視と管理
- オブジェクトの検出と分類
- サイバーセキュリティ分析
- 資本市場取引システム
- 不正検知と防止
- パーソナライズドマーケティング
次の表では、製品の2つのバリアントについて説明します。
|
製品バリアント |
説明 | |
|---|---|---|
|
SAS Event Stream Processing |
このバリアントは、ESPサーバー、コマンドラインクライアント、および次のコンポーネントを含むポートフォリオを提供します。 | |
|
コンポーネント |
コンポーネントの説明 | |
|
SAS Event Stream Processing Analytics |
高度なアナリティクスと機械学習のテクニックで、イベントストリーム処理のプロジェクトを管理することができます。 詳細は、SAS Event Stream Processing: ストリーミング分析の適用を参照してください。 | |
|
SAS Event Stream Processing Studio |
Webベースのクライアントで、これを使用すると、Event Stream Processingプロジェクトの作成、編集、アップロード、テストを行うことができます。 詳細は、SAS Event Stream Processing: SAS Event Stream Processing Studioの使用を参照してください。 | |
|
SAS Event Stream Processing Streamviewer |
Webベースのダッシュボードツールで、これを使用すると、モデルを流れるイベントを視覚化できます。 詳細は、SAS Event Stream Processing: SAS Event Stream Processing Streamviewerの使用を参照してください。 | |
|
SAS Event Stream Manager |
SAS Event Stream Processing環境を管理できるようにするWebベースのクライアントです。 詳細については、SAS Event Stream Managerについてを参照してください。 | |
|
このバリアントを使用するには、製品コンポーネントの構築済みのDockerイメージを取得し、Kubernetesクラスタに配置します。2つの方法のいずれかの方法で配置することができます。
| ||
|
SAS Event Stream Processing(エッジコンピューティング用) |
このバリアントは、コンポーネントを小規模なエッジシステムに簡単に配置するための構成を提供します。このバリアントをオンプレミスに配置することができます。あるいは、2つのDockerイメージのどちらかをインストールすることができます。
エッジコンピューティング用のSAS Event Stream Processingの詳細については、SAS Event Stream Processing for Edge Computing: 配置ガイドを参照してください。 | |
Event Stream Processingアプリケーションの作成
概念的には、イベントは、フィールドの集合として記録できる、特定可能な時間に発生するものです。Event Stream Processingアプリケーションを作成する際に、次の質問に答えてください。
- アプリケーションにはどのようなイベントストリームが、どのようなプロトコルやフォーマットでパブリッシュされますか。
- データはどうなりますか?イベントストリームはどのように変換され、分析されますか?
- 結果として得られるイベントストリームは何ですか?どのようなアプリケーションがこれらのイベントストリームをどのフォーマットとプロトコルでサブスクライブしていますか。
これらの質問に回答することにより、イベントストリーム処理モデルの構造を作成できます。
Event Stream Processingモデルとは
Event Stream Processingモデルは、パブリッシャからの入力イベントストリームを、サブスクライバが結果的に消費する、意味のあるイベントストリームに変換し分析する方法を指定します。次の図は、モデル階層を示しています。
Event Stream Processingのモデル階層
-
モデル階層の最上位にがあります。ESPサーバーはエンジンインスタンスです。
-
エンジンには、それぞれ一意の名前が付けられた1つ以上のプロジェクトが含まれています。プロジェクトは、サイズがプロジェクト属性として定義されている専用で実行されます。プロジェクトでスレッドのプールを使用すると、より効率的な処理が可能になります。
-
プロジェクトは1つ以上のを含むコンテナです。連続クエリは有向グラフで表されます。このグラフは、1つまたは複数のパラレルパスの方向に続く結合ノードのセットです。連続クエリは、データ変換であり、受信イベントストリームの分析であるデータフローです。
-
各クエリには固有の名前が付けられ、1つ以上のから始まります。
-
ソースウィンドウは、通常、1つ以上のに接続されます。派生ウィンドウは、データ内のパターンを検出したり、データを変換したり、データを集計したり、データを分析したり、データに基づいて計算を実行したりすることができます。それらは他の派生ウィンドウに接続することができます。
-
Windowsはエッジによって接続されており、 それは関連する方向を持っています。このコンテキストでは、エッジは2つ以上のウィンドウ間の接続を指定するプログラム要素です。
-
は、イベントストリームをエンジンとの間でパブリッシュまたはサブスクライブします。コネクタはエンジンに対してインプロセスになっています。
-
を使用して、同じマシンまたはネットワーク上の別のマシンからイベントストリームウィンドウにサブスクライブすることができます。同様に、パブリッシュ/サブスクライブAPIを使用して、実行中のイベントストリームプロセッサプロジェクトのソースウィンドウにイベントストリームをパブリッシュすることができます。
-
は、ネットワーク接続可能なスタンドアロンの実行可能プログラムです。アダプタは、パブリッシュ/サブスクライブAPIを使用して、次を行うイベントストリームをパブリッシュします。
- ソースウィンドウにイベントストリームをパブリッシュします。
- 任意のウィンドウからイベントストリームをサブスクライブします。
モデリング層のいくつかのオブジェクトは、時間間隔をマイクロ秒単位で測定します。次の間隔はミリ秒単位で測定されます。
- パターンのタイムアウト期間
- 時間ベースの保持における保持期間
- 周期的なウィンドウ出力のためのパルス間隔
ほとんどの非リアルタイムなオペレーティングシステムは、約10ミリ秒の割り込み粒度を持っています。したがって、10ミリ秒より短い時間間隔を指定すると、予測できない結果につながる可能性があります。
SAS Event Stream Processing on SAS Cloudの使用
概要
SAS Cloudは、コンテナ技術を使用して、SASソフトウェアをサービスとして提供します。ソフトウェアまたは関連するインフラストラクチャをインストール、更新、または保守することなく、SASソフトウェアの機能を試すことができます。
無料トライアルにアクセスする
- 次を参照してください。www.sas.com/esp.ページ右上のGet Free Trialをクリックします。
- ユーザープロファイルを設定しエンドユーザーライセンス契約(EULA)を確認して同意します。その後、受信トレイで追加の手順を確認するよう通知されます。
- リンクを含むメールメッセージからトライアル環境にアクセスします。
注: 最初のトライアルは30日間続きます。その後、さらに30日間トライアルを延長できます。
SAS Event Stream Processing on SAS Cloudを開く
- 環境にサインインした後、製品タイルをクリックして、SAS Event Stream Processing on SAS Cloudを開きます。
製品タイル

- 無料トライアル期間が終了する前にファイルをダウンロードしてコンピュータに保存するには、次の3つのインターフェイスから1つ以上を選択します。
利用可能なインターフェイス

- 3つのインターフェイスの操作に関する詳細については、次のトピックにアクセスしてください。
SAS Event Stream Processing Developer JupyterLabでの作業
- このインターフェイスをクリックして、WebベースのユーザーインターフェイスであるJupyterLabで作業します。そこで、すぐに使えるJupyter NotebooksにアクセスしてPythonコードを実行できます。これにより、データサイエンティストがSAS
Event Stream Processingプロジェクトを設計、テスト、ESPサーバーに配置するためのPythonのオープンソースパッケージであるESPPyを操作できます。
注: JupyterLabに精通していると、このインターフェイスを使用したエクスペリエンスが向上しますが、必須ではありません。
- 右側に表示される詳細なREADMEファイルをお読みください。このファイルは、環境に関する詳細情報と追加リソースのリストを提供します。
- 左側のEvent_Stream_Processingフォルダをダブルクリックします。
フォルダの初期セット

- 表示されるフォルダのセットから、ESP_Pythonをダブルクリックします。
Event Stream Processingフォルダ

- 3つのフォルダが表示されます。利用可能なJupyter Notebooksにアクセスするには、これらのフォルダのいずれかをダブルクリックします。
Jupyter Notebooksフォルダ

- ノートブックをダブルクリックして開きます。
利用可能なJupyter Notebooks フォルダ
ノートブック
説明
基本機能
MASストア - ストアの管理
モジュールを作成してそのコンテンツを操作するために、SAS Micro Analytic Service(MAS)ストアと対話します。
MASストア - ESPでのモジュールの使用
SAS Micro Analytic Service(MAS)オブジェクトを作成し、それを計算ウィンドウのモジュールとして使用します。
プロジェクト定義(ファイル)
CSVファイルからのSAS Event Stream Processingストリーミングデータの基本機能を示します。
プロジェクト定義(MQTT)
MQTTブローカーからのSAS Event Stream Processingストリーミングデータの基本機能を示します。
ストリーミング分析
異常検出
SAS Event Stream Processingを使用して、SASキャンパスの駐車投光器のエネルギー消費を監視する方法を示します。
ジオフェンス
パリの街路を横切る"車"がジオフェンスに進入したことを検出します。
画像分類 - モデル生成
機械学習 DLPyを使用して、新しい画像認識モデルを学習させます。次に、ESPPyを使用して、そのモデルで新しい画像をスコアリングします。
画像分類 - モデルインファレンス
分析ストア(ASTORE)ファイルに含まれているモデルを使用して、データの画像処理とオンラインスコアリングを実行します。
感情分析
非構造化データを使用したストリーミング分析を使用して、製品レビューの感情分析を実行します。
時系列ラグモニタリング
時系列データのラグモニタリングを実行します(計算ウィンドウを使用したオンラインデータ変換)。
ストリーミングの可視化
ジオフェンス
パリの街路を横切る"車"がジオフェンスに進入したことを検出します。
リアルタイム気象監視
さまざまな米国の都市のリアルタイムの気象データを表示する一連のウィジェットを作成します。
- ノートブックは、Pythonコードを含むセルのセットで構成されています。コードを実行するには、セルをクリックして強調表示します。
Jupyter Notebooksのセル

- ノートブックの上部にあるツールバーの
をクリックして、コードを実行します。実行に成功すると、セルの左側に数字が表示されます。
正常に実行されたセル

ESPPyの詳細については、SAS Event Stream Processing: Pythonインターフェイスの使用を参照してください。
SAS Event Stream Processing Studioでの作業
- このインターフェイスをクリックして、プロジェクトを開いてテストできる使いやすいWebベースのクライアントであるSAS Event Stream Processing
Studioを操作します。ユーザーインターフェイスは、最初に、調査する既製のプロジェクトのリストを表示します。
ESP Studioの初期インターフェイス

ESP Studioインターフェイスを介して利用可能なプロジェクト プロジェクト
説明
anomaly_detection
異常検出は、残りのデータのパターンに対して異常と見なされるデータポイントを識別するために使用されます。このプロジェクトは、SAS Event Stream Processingを使用して、SASキャンパスの駐車投光器のエネルギー消費を監視する方法を示します。
healthcare_false_positives
ヘルスケアでは、患者のステータスに関連するアラームが過剰であるため、誤検知(存在しない場合の条件の肯定フラグ)の問題が蔓延しています。アラートが意味をなさない場合、医師や看護師は患者を無視する可能性があります。アラートの数を最小限に抑えるために、このプロジェクトでは、患者のさまざまなバイタルサインの読み取り値と病歴が考慮されるパターンを定義します。しきい値は短期間の複数の読み取り値に対して定義され、しきい値を超えない限りアラームはトリガーされません。
manufacturing_vibration_analytics
機器の老朽化は製造においては不確定な問題であり、大きな損傷がある場合は修理に費用がかかる可能性があります。このプロジェクトでは、予防保守の必要性を予測するために、製造機器の振動イベントが監視されます。振動集団がしきい値を超えているかどうかを判断するために、各イベントにスコアを付けます。しきい値を超えている場合、異常として分類されます。期間内に十分な異常が発生した場合、SAS Event Stream Processingは、モーターの速度を下げることで機器を保護するように機能します。
project_definition_file
このプロジェクトは、CSVファイルからのSAS Event Stream Processingストリーミングデータの基本機能を示します。
project_definition_mqtt
このプロジェクトは、MQTTブローカーからのSAS Event Stream Processingストリーミングデータの基本機能を示します。
retail_smart_shelf
在庫と利益を最大化するために、最小限の待ち時間で顧客が何を購入しているかを感知することで、需要を満たすための供給を提供するより効果的な方法が保証されます。このプロジェクトでは、水筒を含む4種類の棚の重量センサーの読み取り値に基づいて、棚の占有率のシミュレーションデータを使用します。"ほぼ在庫なし"、"間違った商品"、"在庫不足"、"在庫なし"、"棚がすぐに空になる"という状態を知らせるアラートを提供します。
time_series_lag_monitoring
時系列ラグモニタリングでは、ターゲット時系列と1つ以上の追加時系列との間の相互相関を計算するアルゴリズムです。このプロジェクトは、計算ウィンドウを使用して時系列データのラグモニタリングを実行します。
utilities_pmu
Phasor Measurement Units (PMU)は、以前のシステムが提供していたよりも高速かつ忠実に送電網の測定を行います。従来のシステムでは3〜4秒ごとに読み取りを行っていましたが、1秒あたり30回の測定レートで電力周波数、電圧、電流、フェーザー角度を測定します。
このプロジェクトは、グリッドを安定させることを目的とし、送電網に影響を与えるイベントを検出して理解するプロセスを示しています。分析フローには次の3つの領域があります。
- イベント検出: "何かが起こりましたか"
- イベント識別: "何が起きましたか"
- イベントの資格: "どのくらい悪かったのですか"
- プロジェクトをダブルクリックしてSAS Event Stream Processing Studio Modelerで開き、モデルをデータフロー図として表示します。この図によりウィンドウがどのように関連して互いに流れ込むかを表示および制御できます。
異常検出プロジェクト

- ESPサーバーをクリックして、インターフェイスに関連付けられているESPサーバーにアクセスします。ESPトライアルサーバーが実行中(ステータスは緑)で、デフォルトに設定されていることに注意してください。
ESPトライアルサーバー

- パネルの下部で、energy_solar_farmプロジェクトが実行されている(開始済み)ことに注意してください。
重要 このプロジェクトをロード、アンロード、実行、または停止しないでください。これは、事前にロードされたSAS Streamviewerダッシュボードにイベントをストリーミングしています。
この環境をナビゲートし、その環境内でプロジェクトを使用する方法を示すビデオは、SAS Event Stream Processingの学習とサポートのページにあります。SAS Event Stream Processing Studioを使用する方法の詳細については、SAS Event Stream Processing: SAS Event Stream Processing Studioの使用を参照してください。
SAS Event Stream Processing Streamviewerでの作業
- イベントストリーム処理モデルを介してストリーミングするイベントを可視化できるクライアントであるSAS Event Stream Processing Streamviewerを操作するには、このインターフェイスをクリックします。トライアル環境には、ユーザーが調査して使用する事前に作成されたダッシュボードが用意されています。
- トライアル環境でSAS ESP Streamviewerを開くと、上部に次のツールバーが表示されます。
ESP Streamviewerツールバー

をクリックし、利用可能なビルド済みのダッシュボードを表示します。ビルド済みのダッシュボード ダッシュボード
関連プロジェクト
エネルギー — ソーラーファーム
事前にロードされたソーラーファームプロジェクト
ユーティリティ — スマートグリッド
SAS ESP Studioインターフェイスで、まずutilities_pmuをテストモードで実行する必要があります。
ヘルスケア — 誤検知
SAS ESP Studioインターフェイスで、まずhealthcare_false_positivesをテストモードで実行する必要があります。
製造 — モーター振動
SAS ESP Studioインターフェイスで、まずmanufacturing_vibration_analyticsをテストモードで実行する必要があります。
ユーティリティ — スマートキャンパス
SAS ESP Studioインターフェイスで、まずrunanomaly_detectionをテストモードで実行する必要があります。
- ダッシュボードの1つをクリックし、
をクリックしてダッシュボードを開きます。
たとえば、これはビルド済みのソーラーファームダッシュボードです。
ソーラーファームダッシュボード

イベントは関連するモデルを介してストリーミングされるため、テーブルとグラフは動的に更新されます。
この環境をナビゲートし、その環境内でダッシュボードを使用する方法を示すビデオは、SAS Event Stream Processingの学習とサポートのページにあります。SAS Event Stream Processing Streamviewerを使用する方法の詳細については、SAS Event Stream Processing: SAS Event Stream Processing Streamviewerの使用を参照してください。