Waste2Go: Oracle Cloud Infrastructureの機能を使用したIoTデータのストリーム
The Founded in 2019 inSãoPaulo、 Brazil、 Waste2Go's missionは、企業が廃棄物を追跡、収集、輸送する方法を改善することです。Waste2Goのクラウドネイティブ・プラットフォームは、センサーをごみ箱に接続することで、ターゲット・コレクション・ポイントでのソリッドまたは液体廃棄の量を監視し、収集に最適なトラック・ルートを提案し、回収サイクルを最適化するために廃棄物のピックアップ、転送および廃棄を追跡します。
アーキテクチャ
Oracle Cloud Infrastructureで実行される本番環境は、ブラジルのサンパウロのOracle Cloudリージョンにあります。アプリケーション・サーバーは2つのサブネットに分散され、各サブネットにはロード・バランサが付いています。これらのサブネットは、フロントエンド環境とバックエンド環境の両方をホストします。
Waste2goは、廃棄ビンにインストールするセンサーがデータをOracle Functionsに簡単に送信できるようにアーキテクチャを設計し、そこでデータを処理してDockerアプリケーションに格納できるようにします。センサーが各ビン内の無駄の量とタイプを取得するとき、Oracle Functionsは暗号化されたデータを収集し、関数内のPythonコードを使用してデータを復号化してから、データをバックエンド・システムに格納します。すべてのデータがダッシュボードに表示され、ユーザーは無駄なボリュームをすばやく簡単に監視したり、保管棚から廃棄物を収集するための最適な時間とルートを決定できます。
Waste2Goのアーキテクチャ図は、次のコンポーネントを示しています。
- 2つのサブネットを持つ1つのVCN
- 2つのロード・バランサ
- Oracle Functions
- Dockerコンテナを実行するコンピュート仮想マシン(VM)
次の図は、このリファレンス・アーキテクチャを示しています。
このアーキテクチャには次のコンポーネントがあります。
- リージョン
Oracle Cloud Infrastructureリージョンは、可用性ドメインと呼ばれる1つ以上のデータ・センターを含む、ローカライズされた地理的領域です。リージョンは他のリージョンから独立し、広大な距離(国または大陸間)を分離できます。
- 可用性ドメイン
可用性ドメインは、リージョン内のスタンドアロンの独立したデータ・センターです。各可用性ドメインの物理リソースは、フォルト・トレランスを提供する他の可用性ドメインのリソースから分離されます。可用性ドメインでは、電源や冷却、内部の可用性ドメイン・ネットワークなどのインフラストラクチャは共有されません。そのため、ある可用性ドメインでの障害が、リージョン内の他の可用性ドメインに影響することはほとんどありません。
- 仮想クラウド・ネットワーク(VCN)とサブネット
VCNは、Oracle Cloud Infrastructureリージョンで設定する、カスタマイズ可能なソフトウェア定義のネットワークです。VCNは、従来のデータ・センター・ネットワークと同様に、ネットワーク環境を完全に制御できます。VCNには複数の重複しないCIDRブロックを含めることができ、VCNの作成後に変更できます。VCNをサブネットに分割できます。サブネットは、リージョンまたは可用性ドメインにスコープ指定できます。各サブネットは、VCN内の他のサブネットと重複しない連続したアドレスの範囲で構成されます。サブネットのサイズは、作成後に変更できます。サブネットはパブリックまたはプライベートにできます。
- インターネット・ゲートウェイ
インターネット・ゲートウェイを使用すると、VCN内のパブリック・サブネットとパブリック・インターネット間のトラフィックが許可されます。
- 関数
Oracle Functionsは、完全に管理されたマルチテナントでスケーラビリティの高いオンデマンドのFunctions-as-a-Service (FaaS)プラットフォームです。Fn Projectのオープン・ソース・エンジンによって機能します。関数を使用すると、コードをデプロイし、直接コールするか、イベントに応じてトリガーできます。Oracle Functionsでは、Oracle Cloud Infrastructure RegistryでホストされているDockerコンテナが使用されます。
- ロード・バランサ
Oracle Cloud Infrastructure Load Balancingサービスは、バックエンド内の単一エントリ・ポイントから複数のサーバーへの自動トラフィック分散を提供します。
