SailGP: Oracle Cloudでのリアルタイム・ストリーム分析プラットフォーム・デプロイメント
5秒未満で、SailGPは30,000を超えるデータ・ポイントとストリーム・レース・メトリックをリアルタイムで収集および分析し、作成者がF50ベッセルを頻繁に移動できるようにし、世界中のチーム数十億のファンと接続できるようにします。
オフシーズン中の優位性を維持するため、SailGPは、Oracle Cloud Infrastructureで実行されるOracleのストリーミング・アナリティクス、機械学習、自律型データ・ウェアハウスおよびビジュアライゼーション・テクノロジを使用してトレーニング・シミュレータを構築しています。
アーキテクチャ
SailGPのF50ファイリング・カタマランズは、世界中の複数の祖国の賞品のシーズンを通して競争しているため、船内センサーは、1ボート当たり70 kbpsの70kbpsで約30,000個のデータ・ポイントを取得します。
一部のデータ・ポイントには、ボートの姿勢、速度、ピッチ、水と風の状態、船体バイオメトリクスがあります。各チームの指標は、SailGPのメディア・パートナにブロードキャストされ、チームのアプリを通じて共有されます。そして、アクションに近づくことを強く求めている何十億ものファンに楽しまれました。F50船からのデータは、衛星接続を介して、専用の1Gbps FastConnectを使用してOracle Cloud Infrastructureで実行されているOracle Autonomous Data Warehouse (ADW)に転送されます。レースの場所によっては、FastConnectサービスが使用できない場合があります。このような場合、IPSec/VPN接続に置き換えられます。
フロー全体には、100を超えるセンサーを搭載したF50ヨットからのデータの収集が含まれます。F50sの中には、圧力センサーから単純なデータを収集するものもあれば、ジャイロスコープとGPSからより複雑なデータを収集するものもあります。収集すると、データは、メディア・データ・システム・サーバー(MDSS)およびPIサーバーの前処理のためにコンピュート・インスタンスに分散されます。その後、データは独自の形式からJSON形式に変換され、データを処理し、関連するイベントを検出するOracle Stream Analyticsに送信されます。その後、データはOracle Autonomous Data Warehouseに送信され、複雑な分析が実行され、そのデータがOracle REST Data Servicesを介してメディア・パートナが使用できるようになります。
Oracle Autonomous Data Warehouseは、レプリケーションにOracle Cloud Infrastructure GoldenGateを使用して、SailGPのMySQLサーバー(主にレガシー・アプリケーションおよびデータに使用)からデータをフィードする場合にも使用されます。
SailGPsクラウド・アーキテクチャには、次のコンポーネントが含まれています。
- SailGPのF50sにマウントされているセンサーは、データをローカルに収集し、競合中にリアルタイムで分析および表示するために必要なデータのサブセットをストリーミングします。
- SailGPカスタム・アプリケーションを実行するPIサーバーは、センサーから1Hz、5Hzおよび10Hzのテレメトリ・シグナルを受信し、それらをOracle Stream Analyticsエンジンに送信し、データをOracle Autonomous Data Warehouseにロードします。PIサーバーは、競合中のストリーミング・データと、レース後のオフロード・データのバッチ処理の両方に使用されます。バッチ・データの量はストリーミング・データのボリュームより10倍高く、Oracle Cloud Infrastructure Object Storageにロードされてから、Oracle Autonomous Data Warehouseで処理されます。
- 別のSailGPカスタム・アプリケーションを実行するメディア・データ・システム・サーバー(MDSS)は、センサーから1Hzのテレメトリ・シグナルを受信し、MySQLサーバーを使用してそのデータを処理し、最後に処理されたデータをOracle Autonomous Data Warehouseにロードします。MDSSサーバーとのすべてのメッセージでは、TCP/IPプロトコルおよび独自の形式が使用され、JSON形式に変換されます。
- SailGPカスタム・アプリケーションを実行している3番目のアプリケーション・サーバーは、データ集計などの時系列データの統計を計算するために使用されます。
- Oracle Cloud Marketplaceイメージに基づくOracle Stream Analyticsサーバーは、Oracle Autonomous Data Warehouseのストリーミング・サービスからオフロードされたデータを収集します。トピック数は、最大60個のパーティションに調整されました。スループット制限は、書込み用に1 Mbps、読取り用に2 Mbpsに調整されました。
- 1秒ごとに、Oracle MySQLサーバーは、Oracle Cloud InfrastructureからOracle Autonomous Data Warehouseへの受信データの処理およびレプリケートに使用されます。
- Oracle Cloud MarketplaceイメージからのOracle REST Data Servicesサーバーは、Oracle Autonomous Data WarehouseからSailGPのメディア・パートナにデータを公開するために使用されます。
- メディア・パートナは、Oracle Flexible Load Balancerを介してOracle REST Data Servicesを使用してブロードキャストを表示します。遅延状態のファクタリングでは、SailGPのシステムからメディア・パートナまでデータを取得するのに約3秒かかります。
- SailGPは、帯域幅範囲が10 Mbps - 400 MbpsのOracle Flexible Load Balancerを使用し、Oracle Cloud Marketplaceイメージに加えてE3およびE4フレックスVMシェイプを使用して様々なコンポーネントをデプロイします。
- 通知およびロギング・サービスは、仮想マシン(VM)のCPUおよびRAMリソースをスケーリングするタイミングをSailGPに認識するのに役立ちます。
- セキュリティのため、SailGPはOracle Identity and Access Managementポリシーを使用し、Oracle Identity Cloud ServiceおよびOracle Cloud Guardとのフェデレーション・アクセスを使用して、SailGPのセキュリティ対策全般を強化するために生成されるセキュリティ推奨事項を評価します。Oracle Networkセキュリティ・グループ(NSG)は、一部の仮想マシン(VM)に仮想ファイアウォールを提供し、さらに緊密なセキュリティを実現します。管理者およびその他の認可されたユーザーは、必要に応じてVMを開いて、SailGPの本番システムに接続できます。
- SailGPのデプロイメント全体では、パブリック・サブネットにOracle Flexible Load Balancerがあるコンパートメントを1つ使用し、残りのコンポーネントはプライベート・サブネットに住んでいます。
- Oracle Cloud InfrastructureでSailGPフットプリントを拡張する将来の計画には、センサー障害や付録異常に対するGrafana 8、機械学習、APEXおよび予測アナリティクス・サービスの統合が含まれます。
次の図は、このリファレンス・アーキテクチャを示しています。
このアーキテクチャには次のコンポーネントがあります。
- リージョン
Oracle Cloud Infrastructureリージョンは、可用性ドメインと呼ばれる1つ以上のデータ・センターを含む、ローカライズされた地理的領域です。リージョンは他のリージョンから独立し、広大な距離(国または大陸間)を分離できます。
このアーキテクチャのすべてのリソースは、単一のリージョンにデプロイされます。
- テナント
テナンシは、Oracle Cloud Infrastructureのサインアップ時にOracle Cloud内でOracleが設定する、セキュアで分離されたパーティションです。テナンシ内のOracle Cloudでリソースを作成、編成および管理できます。
- 可用性ドメイン
可用性ドメインは、リージョン内のスタンドアロンの独立したデータ・センターです。各可用性ドメインの物理リソースは、フォルト・トレランスを提供する他の可用性ドメインのリソースから分離されます。可用性ドメインでは、電源や冷却、内部の可用性ドメイン・ネットワークなどのインフラストラクチャは共有されません。そのため、ある可用性ドメインでの障害が、リージョン内の他の可用性ドメインに影響することはほとんどありません。
このアーキテクチャのすべてのリソースは、単一の可用性ドメインにデプロイされます。
- フォルト・ドメイン
フォルト・ドメインは、アベイラビリティ・ドメイン内のハードウェアおよびインフラストラクチャのグループ。各可用性ドメインには、独立した電源とハードウェアを備えた3つのフォルト・ドメインがあります。複数のフォルト・ドメインにリソースを分散すると、アプリケーションは物理サーバーの障害、システム・メンテナンスおよびフォルト・ドメイン内の電源障害を許容できます。
- コンパートメント
コンパートメントは、Oracle Cloud Infrastructureテナンシ内のリージョン間論理パーティションです。コンパートメントを使用して、Oracle Cloudでリソースを編成し、リソースへのアクセスを制御して、使用の割当て制限を設定します。特定のコンパートメント内のリソースへのアクセスを制御するには、リソースにアクセスできるユーザーおよび実行できるアクションを指定するポリシーを定義します。
- 仮想クラウド・ネットワーク(VCN)とサブネット
VCNは、Oracle Cloud Infrastructureリージョンで設定する、カスタマイズ可能なソフトウェア定義のネットワークです。VCNは、従来のデータ・センター・ネットワークと同様に、ネットワーク環境を完全に制御できます。VCNには複数の重複しないCIDRブロックを含めることができ、VCNの作成後に変更できます。VCNをサブネットに分割できます。サブネットは、リージョンまたは可用性ドメインにスコープ指定できます。各サブネットは、VCN内の他のサブネットと重複しない連続したアドレスの範囲で構成されます。サブネットのサイズは、作成後に変更できます。サブネットはパブリックまたはプライベートにできます。
- セキュリティ・リスト
サブネットごとに、サブネット内外で許可されるトラフィックのソース、宛先およびタイプを指定するセキュリティ・ルールを作成できます。
- クラウド・ガード
Oracle Cloud Guardを使用して、Oracle Cloud Infrastructureでのリソースのセキュリティをモニターおよび保守できます。クラウド・ガードは、ディセクタ・レシピを使用して、セキュリティ脆弱性のリソースを調査し、オペレータおよびユーザーをリスクのあるアクティビティを監視します。構成ミスや安全でないアクティビティが検出された場合、クラウド・ガードは是正措置を推奨し、定義できるレスポンダ・レシピに基づいてこれらのアクションの実行を支援します。
- 動的ルーティング・ゲートウェイ(DRG)
DRGは、VCNとリージョン外のネットワーク間のプライベート・ネットワーク・トラフィックのパス(別のOracle Cloud Infrastructureリージョン内のVCN、オンプレミス・ネットワーク、または別のクラウド・プロバイダのネットワークなど)を提供する仮想ルーターです。
- インターネット・ゲートウェイ
インターネット・ゲートウェイを使用すると、VCN内のパブリック・サブネットとパブリック・インターネット間のトラフィックが許可されます。
- FastConnect
Oracle Cloud Infrastructure FastConnectは、データ・センターとOracle Cloud Infrastructure間の専用のプライベート接続を簡単に作成する方法を提供します。FastConnectは、高帯域幅オプションを提供し、インターネットベースの接続と比較してより信頼性の高いネットワーク・エクスペリエンスを提供します。
- ロード・バランサ
Oracle Cloud Infrastructure Load Balancingサービスは、バックエンド内の単一エントリ・ポイントから複数のサーバーへの自動トラフィック分散を提供します。
- オブジェクト・ストレージ
オブジェクト・ストレージを使用すると、データベースのバックアップ、分析データ、イメージやビデオなどのリッチ・コンテンツなど、あらゆるコンテンツ・タイプの構造化データと非構造化データにすばやくアクセスできます。インターネットまたはクラウド・プラットフォーム内部から、安全かつセキュアにデータを直接格納し、取得できます。パフォーマンスやサービスの信頼性を低下させることなく、ストレージをシームレスにスケーリングできます。標準ストレージは、迅速、即時、頻繁にアクセスするために必要な「ホット」ストレージに使用します。長期間保持し、ほとんどアクセスしない「コールド」ストレージにはアーカイブストレージを使用します。
- Compute
Oracle Cloud Infrastructure Computeサービスでは、クラウドでコンピュート・ホストをプロビジョニングおよび管理できます。CPU、メモリー、ネットワーク帯域幅およびストレージのリソース要件を満たすシェイプを使用してコンピュート・インスタンスを起動できます。コンピュート・インスタンスを作成したら、そのコンピュート・インスタンスに安全にアクセスして再起動し、ボリュームをアタッチおよびデタッチしてから、不要になったら終了できます。
- GoldenGate
Oracle Cloud Infrastructure GoldenGateは、オンプレミスまたは任意のクラウドに存在するソースからのデータ取込みを可能にするフルマネージド・サービスです。GoldenGateによるCDCテクノロジを利用して、データの侵入性が低く効率的な取得を実現し、Oracle Autonomous Data Warehouseへの配信をリアルタイムかつ大規模に行い、関連する情報をできるかぎり迅速に利用できるようにします。
- Autonomous Data Warehouse
Oracle Autonomous Data Warehouseは、データ・ウェアハウスのワークロード向けに最適化された、自動運転、自己保護、自己修復型のデータベース・サービスです。ハードウェアの構成や管理、ソフトウェアのインストールを行う必要はありません。Oracle Cloud Infrastructureでは、データベースの作成およびデータベースのバックアップ、パッチ適用、アップグレードおよびチューニングを処理します。
