Python向けWordCountクイックスタート
このガイドでは、Python開発環境の設定、Apache Beam SDK for Pythonの入手、およびサンプルパイプラインの実行方法を説明します。
Apache Beam Pythonコードベースへのコントリビュートにご関心のある方は、コントリビューションガイドをご覧ください。
Python SDKは、Python 3.8、3.9、3.10、3.11、および3.12に対応しています。Beam 2.48.0は、Python 3.7に対応した最後のリリースです。
環境設定
詳細については、開発環境の設定をご覧ください。
Apache Beamを入手する
仮想環境の作成と有効化
仮想環境とは、独自のPythonディストリビューションを含むディレクトリツリーのことです。仮想環境を作成するには、以下を実行します。
仮想環境を使用する各シェルに対して、仮想環境を有効化する必要があります。有効化すると、仮想環境のディレクトリを指すいくつかの環境変数が設定されます。
Bashで仮想環境を有効化するには、以下を実行します。
つまり、作成した仮想環境ディレクトリ内の`activate`スクリプトを実行します。
他のシェルを使用する場合の手順については、venvのドキュメントを参照してください。
ダウンロードとインストール
PyPIから最新のPython SDKをインストールします。
追加要件
上記のインストールでは、Google Cloud Dataflowランナーなどの機能を使用するためのすべての追加依存関係はインストールされません。さまざまな機能に必要な追加パッケージに関する情報は、以下で強調表示されています。 `pip install 'apache-beam[feature1,feature2]'`などを使用して、複数の追加要件をインストールできます。
- Google Cloud Platform
- インストールコマンド: `pip install 'apache-beam[gcp]'`
- 必要条件
- Google Cloud Dataflowランナー
- GCS IO
- Datastore IO
- BigQuery IO
- Amazon Web Services
- インストールコマンド: `pip install 'apache-beam[aws]'`
- AWSとインターフェースするI/Oコネクタに必要なもの
- Microsoft Azure
- インストールコマンド: `pip install 'apache-beam[azure]'`
- Microsoft AzureとインターフェースするI/Oコネクタに必要なもの
- Beam YAML API
- インストールコマンド: `pip install 'apache-beam[yaml]'`
- Beam YAML APIを使用するために必要です。
- Beam YAML Dataframe API
- インストールコマンド: `pip install 'apache-beam[dataframe]'`
- Beam Dataframe APIを使用するために必要です。
- テスト
- インストールコマンド: `pip install 'apache-beam[test]'`
- Beamの開発と単体テストの実行に必要なもの
- ドキュメント
- インストールコマンド: `pip install 'apache-beam[docs]'`
- Sphinxを使用してAPIドキュメントを生成するために必要です。
パイプラインの実行
Apache Beamのexamplesディレクトリには多くの例があります。すべての例は、例スクリプトで説明されている必要な引数を渡すことでローカルで実行できます。
たとえば、次のコマンドで`wordcount.py`を実行します。
# As part of the initial setup, install Google Cloud Platform specific extra components. Make sure you
# complete the setup steps at /documentation/runners/dataflow/#setup
pip install apache-beam[gcp]
python -m apache_beam.examples.wordcount --input gs://dataflow-samples/shakespeare/kinglear.txt \
--output gs://<your-gcs-bucket>/counts \
--runner DataflowRunner \
--project your-gcp-project \
--region your-gcp-region \
--temp_location gs://<your-gcs-bucket>/tmp/
パイプラインが完了したら、指定された出力パスで出力ファイルを確認できます。たとえば、`--output`パラメーターに` /dir1/counts`を指定した場合、パイプラインはファイルに` /dir1/`に書き込み、`counts-0000-of-0001`という形式でファイルを順次命名します。
次のステップ
- Beam SDK for Pythonの詳細については、Python SDK APIリファレンスをご覧ください。
- Beamの概要(インタラクティブ)を入手する
- WordCountの例の手順で、これらのWordCountの例を順を追って説明します。
- 自己ペースで学習リソースをご覧ください。
- お気に入りのビデオとポッドキャストの一部をご覧ください。
- Beamのusers@メーリングリストに参加してください。
問題が発生した場合は、お気軽にお問い合わせください!
最終更新日: 2024/10/31
お探しのものが見つかりましたか?
すべて役に立ち、分かりやすかったですか?変更したいことはありますか?お知らせください!