Dataflow Cookbook 项目使用教程
dataflow-cookbook 项目地址: https://gitcode.com/gh_mirrors/da/dataflow-cookbook
1. 项目的目录结构及介绍
Dataflow Cookbook 项目的目录结构如下:
dataflow-cookbook/
├── github/
│ └── workflows/
├── Java/
├── Python/
├── Scala/
├── .gitignore
├── CONTRIBUTING.md
├── LICENSE
├── README.md
└── prompts.md
目录结构介绍:
- github/workflows/: 包含 GitHub Actions 的工作流配置文件。
- Java/: 包含使用 Java 编写的 Dataflow 管道示例。
- Python/: 包含使用 Python 编写的 Dataflow 管道示例。
- Scala/: 包含使用 Scala 编写的 Dataflow 管道示例。
- .gitignore: Git 忽略文件配置。
- CONTRIBUTING.md: 贡献指南。
- LICENSE: 项目许可证文件。
- README.md: 项目介绍和使用说明。
- prompts.md: 提示文件,可能包含一些额外的说明或提示。
2. 项目的启动文件介绍
Dataflow Cookbook 项目中的启动文件主要分布在 Java/
, Python/
, 和 Scala/
目录下,每个目录中包含多个示例管道文件。以下是一些常见的启动文件示例:
Java 启动文件
- Java/basics/groupByKey.java: 一个基本的
groupByKey
操作示例。 - Java/bigquery/WriteDynamicBQ.java: 一个将数据写入 BigQuery 的动态管道示例。
Python 启动文件
- Python/basics/group_by_key.py: 一个基本的
group_by_key
操作示例。 - Python/bigquery/write_bigquery.py: 一个将数据写入 BigQuery 的管道示例。
Scala 启动文件
- Scala/basics/GroupByKey.scala: 一个基本的
GroupByKey
操作示例。 - Scala/bigquery/WriteStreamingInserts.scala: 一个将数据写入 BigQuery 的流式插入管道示例。
3. 项目的配置文件介绍
Dataflow Cookbook 项目中的配置文件主要包括以下几个部分:
环境变量配置
在使用 Dataflow Cookbook 项目时,通常需要设置一些环境变量,例如:
export BUCKET=<YOUR_BUCKET_NAME>
export REGION=<YOUR_REGION>
export PROJECT=<YOUR_PROJECT>
Maven 配置
对于 Java 项目,通常使用 Maven 进行构建和运行。以下是一个典型的 Maven 运行命令示例:
mvn compile -e exec:java -Dexec.mainClass=basics.groupByKey \
-Dexec.args="--runner=DataflowRunner --region=$REGION \
--tempLocation=gs://$BUCKET/tmp/"
Python 配置
对于 Python 项目,通常使用 Python 命令直接运行。以下是一个典型的 Python 运行命令示例:
python group_by_key.py --runner DataflowRunner --project $PROJECT \
--region $REGION --temp_location gs://$BUCKET/tmp/
Scala 配置
对于 Scala 项目,通常使用 SBT 进行构建和运行。以下是一个典型的 SBT 运行命令示例:
sbt "runMain basics.GroupByKey --runner=DataflowRunner --region=$REGION \
--tempLocation=gs://$BUCKET/tmp/"
通过以上配置,您可以轻松地在本地或 Google Cloud Platform 上运行 Dataflow Cookbook 中的示例管道。
dataflow-cookbook 项目地址: https://gitcode.com/gh_mirrors/da/dataflow-cookbook