Openflowについて¶
Snowflake Openflowは、構造化および非構造化テキスト、画像、音声、ビデオ、センサーデータに対応する数百のプロセッサであらゆるデータソースとあらゆる接続先をつなぐ統合サービスです。Apache NiFi に基づいて構築されたOpenflowでは、フルマネージドのサービスを独自のクラウドで実行することがで完全な制御を実施できます。
注釈
Openflowプラットフォームは現在、AWS と Snowpark Container Services の両方で、お客様が所有する VPCs にデプロイ可能です。
このトピックでは、Openflowの主な機能、その利点、アーキテクチャ、ワークフロー、およびユースケースについて説明します。
主な機能と利点¶
- オープンで拡張可能
Apache NiFi を使用した拡張可能な管理サービスで、任意のデータソースからプロセッサーをビルドして任意の宛先に拡張できるようにします。
- 統一データ統合プラットフォーム
Openflowにより、データエンジニアは独自の VPC やSnowflakeデプロイメント内にデプロイできる完全に管理されたサービスを通じて、複雑な双方向のデータ抽出とロードを処理することができます。
- Enterprise対応
Openflowはデータ統合のための標準的なセキュリティ、コンプライアンス、可観測性、保守性フックを提供します。
- あらゆるタイプのデータの高速インジェスチョン
1つの統一プラットフォームにより、事実上あらゆる規模で、データソースからSnowflakeへ、バッチモードとストリーミングモードの両方で構造化、非構造化データを処理できます。
- AI 処理のためのマルチモーダルデータの継続的なインジェスチョン
Near real-time unstructured data ingestion, so you can immediately chat with your data coming from sources such as Sharepoint, Google Drive, and so on.
Openflowデプロイメントタイプ¶
Openflowは、Bring Your Own Cloud(BYOC)バージョンとSnowpark Container Services(SPCS)バージョンの両方でサポートされています。
- Openflow - Snowflake Deployment
-
Openflow - Snowflake Deployment, using Snowpark Container Services (SPCS), provides a streamlined and integrated solution for connectivity. Because SPCS is a self-contained service within Snowflake, it's easy to deploy and manage. SPCS offers a convenient and cost-effective environment for running your data flows. A key advantage of Openflow - Snowflake Deployment is its native integration with Snowflake's security model, which allows for seamless authentication, authorization, network security and simplified operations.
Openflow - Snowflake Deployments の構成時には、Openflowの設定 - Snowflakeデプロイメント の説明に従ってプロセスに従ってください。
- Openflow - Bring Your Own Cloud
-
Openflow - Bring Your Own Cloud (BYOC) provides a connectivity solution that you can use to connect public and private systems securely and handle sensitive data preprocessing locally, within the secure bounds of your organization's cloud environment. BYOC refers to a deployment option where the Openflow data processing engine, or data plane, runs within your own cloud environment while Snowflake manages the overall Openflow service and control plane.
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 supports fine-grained roles for RBAC.
ACCOUNTADMIN to grant privileges to be able to create deployments and runtimes.
- 輸送中の暗号化
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接続を構成するための統一され簡素化されたエクスペリエンスを提供します。
Key benefits¶
- 簡素化された構成
Snowflake管理トークンは、キーペアなどの長期間有効な認証情報を生成、保存、ローテーションする必要がありません。トークンはSnowflakeによって自動的に管理され、運用のオーバーヘッドが削減されます。
- Unified across deployment types
Openflowを Snowpark Container Services ( SPCS )でデプロイするか、Bring Your Own Cloud( BYOC )でデプロイするかに関係なく、
SNOWFLAKE_MANAGED認証戦略を使用して同じ方法で認証を構成します。- Enhanced security
トークンは短期間有効で自動的に更新されるため、認証情報の公開に関連するリスクが最小限に抑えられます。
仕組み¶
Snowflakeに接続するようにコネクタまたはプロセッサを構成する場合は、Snowflake認証戦略 として SNOWFLAKE_MANAGED を選択します。ランタイムは、ユーザーに代わってSnowflakeへの認証に使用されるトークンを自動的に取得および管理します。
Snowflake管理トークンの動作は、デプロイメントタイプによって異なります。
- Openflow - Snowflake Deployments
Snowflake管理のデプロイメントで実行する場合、ランタイムは、 SPCS 環境によってネイティブに提供される SPCS セッショントークン を使用します。これらのトークンは実行時に使用でき、追加の構成は必要ありません。
- BYOC deployments
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のコンポーネントは次のとおりです。
- Deployments
A deployment is where your data flows execute, within individual runtimes. You will often have multiple runtimes to isolate different projects, teams, or for SDLC reasons, all associated with a single deployment. Deployments come in two types Bring Your Own Cloud (BYOC) and Openflow - Snowflake.
- コントロールプレーン
The control plane is a layer containing all components used to manage and observe Openflow runtimes. This includes the Openflow service and API, which users interact with via the Openflow canvas or through interaction with Openflow APIs. On Openflow - Snowflake Deployments, the Control Plane consists of Snowflake-owned public cloud infrastructure and services as well as the control plane application itself.
- BYOC deployments
BYOC デプロイ ` は、*お客様の*クラウド環境にデプロイされるランタイムのコンテナとして機能するデプロイメントです。コンピューティング、インフラストラクチャ、ストレージの使用量に基づいて料金が発生します。詳細については、 :doc:`cost-byoc をご参照ください。
- Openflow - Snowflake Deployments
Openflow - Snowflake Deployments are containers for runtimes and are deployed using a compute pool. They incur utilization charges based on their uptime and usage of compute. See Openflow Snowflake 展開コストとスケーリングに関する考慮事項 for more information.
- ランタイム
Runtimes host data pipelines, with the framework providing security, simplicity, and scalability. You can deploy Openflow runtimes in your VPC using Openflow. You can deploy Openflow connectors to your runtimes, and also build completely new pipelines using Openflow processors and controller services.
- Openflow - Snowflake Deployment ランタイム
Openflow - Snowflake Deployment Runtimes are deployed as Snowpark Container Services service to an Openflow - Snowflake Deployment deployment, which is represented by an underlying compute pool. Customers request a Runtime through the deployment, which executes a request on behalf of the user to service. Once created, customers access it via a web browser at the URL generated for that underlying service.
