Openflowについて¶
Snowflake Openflowは、構造化および非構造化テキスト、画像、音声、ビデオ、センサーデータに対応する数百のプロセッサであらゆるデータソースとあらゆる接続先をつなぐ統合サービスです。Apache NiFi に基づいて構築されたOpenflowでは、フルマネージドのサービスを独自のクラウドで実行することがで完全な制御を実施できます。
注釈
Openflowプラットフォームは現在、AWS と Snowpark Container Services の両方で、お客様が所有する VPCs にデプロイ可能です。
このトピックでは、Openflowの主な機能、その利点、アーキテクチャ、ワークフロー、およびユースケースについて説明します。
主な機能と利点¶
- オープンで拡張可能
Apache NiFi を使用した拡張可能な管理サービスで、任意のデータソースからプロセッサーをビルドして任意の宛先に拡張できるようにします。
- 統一データ統合プラットフォーム
Openflowにより、データエンジニアは独自の VPC やSnowflakeデプロイメント内にデプロイできる完全に管理されたサービスを通じて、複雑な双方向のデータ抽出とロードを処理することができます。
- Enterprise対応
Openflowはデータ統合のための標準的なセキュリティ、コンプライアンス、可観測性、保守性フックを提供します。
- あらゆるタイプのデータの高速インジェスチョン
1つの統一プラットフォームにより、事実上あらゆる規模で、データソースからSnowflakeへ、バッチモードとストリーミングモードの両方で構造化、非構造化データを処理できます。
- AI 処理のためのマルチモーダルデータの継続的なインジェスチョン
ほぼリアルタイムでの非構造化データのインジェスチョンにより、SharePointやGoogle Driveなどのソースからのデータと即座にチャットできます。
Openflowデプロイメントタイプ¶
Openflowは、Bring Your Own Cloud(BYOC)バージョンとSnowpark Container Services(SPCS)バージョンの両方でサポートされています。
- Openflow - Snowflake Deployment
-
Openflow - Snowflake Deployment は、 Snowpark Container Services (SPCS)を使用して、接続のための合理化された統合ソリューションを提供します。SPCS はSnowflake内で完全に自己完結するサービスであるため、デプロイと管理が簡単であり、SPCS はデータフローを実行するための便利で費用対効果の高い環境を提供します。Openflow - Snowflake Deployment の主な利点は、Snowflakeのセキュリティモデルとのネイティブ統合で、これによりシームレスな認証、許可、ネットワークセキュリティが可能になり、操作が簡素化されます。
Openflow - Snowflake Deployments の構成時には、Openflowの設定 - Snowflakeデプロイメント の説明に従ってプロセスに従ってください。
- Openflow - Bring Your Own Cloud
-
Openflow - Bring Your Own Cloud(BYOC)が提供する接続ソリューションは、パブリックシステムとプライベートシステムへの安全な接続や、組織のクラウド環境のセキュアな境界内で機密データの前処理をローカルで処理するために使用できます。 BYOC は、Openflowデータ処理エンジンまたはデータプレーンが、独自のクラウド環境内で実行される一方で、SnowflakeがOpenflowサービスと制御プレーン全体を管理するデプロイメントオプションです。
BYOC デプロイメントを構成する場合は、Openflowの設定 - BYOC で説明されているプロセスに従ってください。
ユースケース¶
任意のソースからデータをフェッチし、最小限の管理で任意の宛先にデータを配置する場合は、Snowflakeの組み込みデータセキュリティおよびガバナンスと合わせて、Openflowを使用します。
Openflowのユースケースは次のとおりです。
Google DriveやBoxなどの非構造化データソースからデータを取り込み、Snowflake Cortexを使用してAIアシスタントでチャットにできるようにしたり、独自のカスタム処理にデータを使用したりできます。
データベーステーブルの変更データキャプチャ(CDC)をSnowflakeに複製し、包括的で一元化されたレポートを作成します。
Apache KafkaなどのストリーミングサービスからリアルタイムイベントをSnowflakeに取り込み、ほぼリアルタイムの分析ができます。
LinkedIn Adsなどの SaaS プラットフォームからデータを取り込み、Snowflakeでレポート、分析、インサイトに使用します。
Snowflakeならびに NiFi プロセッサー および :doc:`コントローラーサービス<controllers/index>`を使用して、Openflowデータフローを作成します。
セキュリティ¶
Openflowは業界最先端のセキュリティ機能を使用しており、アカウント、ユーザー、およびSnowflakeに保存するすべてのデータに対して最高レベルのセキュリティを確保できます。重要な要素は次のとおりです。
- 認証
ランタイムは、デフォルトの推奨認証方法として Snowflake管理トークン を使用します。
Snowflake管理トークンは、 SPCS および BYOC デプロイメントタイプ全体で一貫して動作します。
BYOC デプロイメントでは、明示的な認証情報管理にキーペア認証を使用することもできます。
- 認証
Openflowは RBAC のきめ細かいロールをサポートします。
ACCOUNTADMIN は、デプロイメントとランタイムを作成できる権限を付与します。
- 輸送中の暗号化
Openflowコネクタは TLS プロトコルをサポートしており、データ取り込みにSnowflake標準クライアントを使用します。
OpenflowのデプロイメントとOpenflowのコントロールプレーン間のすべての通信は、TLS プロトコルを使用して暗号化されます。
- 秘密管理(BYOC)
AWS Secrets ManagerまたはHashicorp Vaultと統合しています。詳細については、 構成ファイルの暗号化パスワード をご覧ください。
- PrivateLinkに対応
Openflowコネクタは、インバウンド AWS PrivateLink を使用したSnowflakeへのデータの読み取りおよび書き込みとの互換性があります
- Tri-Secret Secureのセキュアサポート
Openflakeコネクタは、Snowflakeへのデータ書き込みに Tri-Secret Secure で対応します。
Snowflake管理トークン認証¶
Snowflake管理トークンは、OpenflowランタイムがSnowflakeに接続するために推奨されるデフォルトの認証方法です。この認証方法は、 Openflow - Snowflakeデプロイメント および BYOC デプロイメント の両方で一貫して機能します。Snowflake管理トークンは、Snowflake接続を構成するための統一され簡素化されたエクスペリエンスを提供します。
主な利点¶
- 簡素化された構成
Snowflake管理トークンは、キーペアなどの長期間有効な認証情報を生成、保存、ローテーションする必要がありません。トークンはSnowflakeによって自動的に管理され、運用のオーバーヘッドが削減されます。
- デプロイメントタイプ間で統一
Openflowを Snowpark Container Services ( SPCS )でデプロイするか、Bring Your Own Cloud( BYOC )でデプロイするかに関係なく、
SNOWFLAKE_MANAGED認証戦略を使用して同じ方法で認証を構成します。- セキュリティの強化
トークンは短期間有効で自動的に更新されるため、認証情報の公開に関連するリスクが最小限に抑えられます。
仕組み¶
Snowflakeに接続するようにコネクタまたはプロセッサを構成する場合は、Snowflake認証戦略 として SNOWFLAKE_MANAGED を選択します。ランタイムは、ユーザーに代わってSnowflakeへの認証に使用されるトークンを自動的に取得および管理します。
Snowflake管理トークンの動作は、デプロイメントタイプによって異なります。
- Openflow - Snowflake Deployments
Snowflake管理のデプロイメントで実行する場合、ランタイムは、 SPCS 環境によってネイティブに提供される SPCS セッショントークン を使用します。これらのトークンは実行時に使用でき、追加の構成は必要ありません。
- BYOC デプロイ
BYOC デプロイメントで実行する場合、ランタイムは、Snowflakeに対して認証するための ワークロードIDフェデレーション を使用します。ランタイムはクラウドプロバイダーID(例えば AWS IAM ロール)をSnowflakeトークンと自動的に交換します。
注釈
BYOC デプロイメントでSnowflake管理トークンを使用するには、最初にデプロイメントの ランタイムロール を構成する必要があります。
Snowflake管理トークンを使用する場合¶
次の場合にSnowflake管理トークンを使用します。
SPCS および BYOC デプロイメントの両方におけるすべての新しいコネクタ構成。
キーペア認証から、簡素化された管理認証モデルへの移行。
キーペアやその他の長期間有効な認証情報の管理を回避したいシナリオ。
代替認証方法¶
Snowflake管理トークンが推奨されますが、明示的な認証情報管理が必要な場合は、 BYOC デプロイメントはキーペア認証( KEY_PAIR )もサポートしています。キーペア認証の詳細については、 キーペア認証とキーペアローテーション をご参照ください。
基礎となる認証メカニズムについては、以下をご参照ください。
ワークロードIDフェデレーション:BYOC デプロイメントで使用される認証メカニズムに関する情報。
Snowpark Container Services: サービスの操作:SPCS サービスがSnowflakeに対して認証する方法に関する情報。
アーキテクチャ¶
次の図は、Openflowのアーキテクチャを表しています。
デプロイメントエージェントは、Openflowデプロイメントインフラストラクチャを VPC にインストールしてブートストラップし、Snowflakeシステムイメージレジストリからコンテナイメージを定期的に同期します。
Openflowのコンポーネントは次のとおりです。
- デプロイ
デプロイ ` とは、個々のランタイム内でデータフローが実行される場所です。別々の異なるプロジェクト、チーム用に、または SDLC 上の理由により、複数のランタイムが存在し、すべてが単一のデプロイに関連付けられていることが多くあります。デプロイメントには、 :doc:`Bring Your Own Cloud( BYOC ) </user-guide/data-integration/openflow/about-byoc> および Openflow - Snowflake の2種類があります。
- コントロールプレーン
:emph:`コントロールプレーン ` は、Openflowランタイムの管理と監視に使用されるすべてのコンポーネントを含むレイヤーです。これには、Openflowサービスと API が含まれ、ユーザーはOpenflowキャンバス経由またはOpenflow APIs とのやり取りを通じてこれらを操作します。Openflow - Snowflake Deployments では、Snowflakeが所有するパブリッククラウドインフラストラクチャとサービス、およびコントロールプレーンアプリケーション自体で構成されます。
- BYOC デプロイ
BYOC デプロイ ` は、*お客様の*クラウド環境にデプロイされるランタイムのコンテナとして機能するデプロイメントです。コンピューティング、インフラストラクチャ、ストレージの使用量に基づいて料金が発生します。詳細については、 :doc:`cost-byoc をご参照ください。
- Openflow - Snowflake Deployments
Openflow - Snowflakeデプロイメント ` はランタイムのコンテナであり、 :doc:`コンピューティングプール </developer-guide/snowpark-container-services/working-with-compute-pool> を使用してデプロイされます。稼働時間とコンピュートの使用状況に基づいて利用料金が発生します。詳細については、 Openflow Snowflake 展開コストとスケーリングに関する考慮事項 をご参照ください。
- ランタイム
:emph:`ランタイム ` はデータパイプラインをホストするもので、セキュリティ、簡素性、スケーラビリティを提供するフレームワークを備えています。Openflowを使用して VPC にOpenflowランタイムをデプロイできます。ランタイムにOpenflowコネクタをデプロイし、Openflowプロセッサとコントローラーサービスを使用してまったく新しいパイプラインを構築することもできます。
- Openflow - Snowflake Deployment ランタイム
Openflow - Snowflakeデプロイメントランタイム ` は、 :doc:`Snowpark Container Services </developer-guide/snowpark-container-services/overview> サービスとして、基盤となるコンピューティングプールで表される Openflow - Snowflake Deployment デプロイメントにデプロイされます。お客様がデプロイを介してランタイムをリクエストすると、デプロイがユーザーに代わってサービスへのリクエストを実行します。作成後は、お客様はその基盤となるサービス用に生成された URL で Web ブラウザー経由でランタイムにアクセスします。
