博客
2022/11/03
Beam 入门项目
David Cavazos
我们很高兴地宣布我们正在提供新的 Beam 入门项目!🎉
设置和配置新项目可能很耗时,而且在不同的语言中有所不同。我们希望这能让你更容易开始创建新的 Apache Beam 项目和管道。
所有入门项目都位于自己的 GitHub 仓库中,因此你只需克隆一个仓库,就可以开始使用。每个项目都附带一个说明如何使用它的 README、一个简单的“Hello World”管道和一个管道测试。GitHub 仓库预先配置了 GitHub Actions,以便在打开或修改拉取请求时自动运行测试,并启用了 Dependabot 以确保所有依赖项都保持最新。这一切都是开箱即用的,因此你可以毫不费力地开始使用 Beam 管道。
例如,以下是如何使用 Java 入门
git clone https://github.com/apache/beam-starter-java
cd beam-starter-java
# Install Java and Gradle with sdkman.
curl -s "https://get.sdkman.io" | bash
sdk install java 11.0.12-tem
sdk install gradle
# To run the pipeline.
gradle run
# To run the tests.
gradle test
以下是如何使用 Python 入门
git clone https://github.com/apache/beam-starter-python
cd beam-starter-python
# Set up a virtual environment with the dependencies.
python -m venv env
source env/bin/activate
pip install -r requirements.txt
# To run the pipeline.
python main.py
# To run the tests.
python -m unittest
以下是入门项目;你可以选择你喜欢的语言
- **[Java]** github.com/apache/beam-starter-java – 包括 Gradle 和 Maven 配置。
- **[Python]** github.com/apache/beam-starter-python – 包含一个 setup.py 文件,允许你在管道中使用多个文件。
- **[Go]** github.com/apache/beam-starter-go – 包含如何为 ParDo 注册不同类型的函数。
- **[Kotlin]** github.com/apache/beam-starter-kotlin – 适应 Kotlin 的惯用语法
- **[Scala]** github.com/apache/beam-starter-scala – 即将推出!
我们已经更新了 Java 快速入门,以使用新的入门项目,我们也正在努力更新 Python 和 Go 快速入门。
我们希望你发现它有用。我们始终欢迎反馈和贡献!因此,请随时在任何入门项目仓库中创建 GitHub 问题或打开拉取请求。