标签归档:data-engineering

Prefect 实现数据自动化的最简单方法

你好,世界!👋

我们为数据科学时代重建了数据工程

Prefect是一个新的工作流管理系统,专为现代基础设施而设计,由开源的Prefect Core工作流引擎提供支持。用户组织Tasks变成Flows,县管睡觉

请阅读docs;获取code;询问我们anything好了!

欢迎使用工作流

Prefect的Pythonic API应该会让新手感到熟悉。将函数标记为任务并相互调用以建立流

from prefect import task, Flow, Parameter


@task(log_stdout=True)
def say_hello(name):
    print("Hello, {}!".format(name))


with Flow("My First Flow") as flow:
    name = Parameter('name')
    say_hello(name)


flow.run(name='world') # "Hello, world!"
flow.run(name='Marvin') # "Hello, Marvin!"

有关更多详细信息,请参阅Core docs

UI和服务器

除了Prefect Cloud平台上,Prefect包括一个用于编排和管理流程的开源后端,主要包括Prefect ServerPrefect UI此本地服务器将流元数据存储在Postgres数据库中并公开GraphQL API

在第一次运行服务器之前,请运行prefect backend server若要为本地业务流程配置Prefect,请执行以下操作。请注意,服务器需要DockerDocker Compose去跑步

要启动服务器、UI和所有必需的基础架构,请运行:

prefect server start

一旦所有组件都在运行,您就可以通过访问http://localhost:8080

请注意,从服务器执行流需要至少运行一个Prefect代理:prefect agent local start

最后,要向服务器注册任何流,请调用flow.register()有关更多详细信息,请参阅orchestration docs

“.完全正确?”

来自拉丁语普雷菲克特斯,意思是“谁是负责人”,省长是监督一个领域并确保规则得到遵守的官员。同样,Prefect负责确保工作流正确执行

它也恰好是那本非常了不起的书的一位巡回研究员的名字,银河系漫游指南

集成

得益于Prefect不断扩大的任务库和深度的生态系统集成,构建数据应用程序比以往任何时候都更加容易

有什么东西不见了吗?打开一个feature requestcontribute a PR好了!Prefect旨在使添加新功能变得极其容易,无论您是在开放源码包之上构建,还是为您的团队维护内部任务库

任务库

Airtable

Asana

AWS

Azure

Azure ML

Databricks

DBT

Docker

Dremio

Dropbox

Email

Fivetran

GitHub

Google Cloud

Google Sheets

Great Expectations

Jira

Jupyter

Kubernetes

Monday

MySQL

PostgreSQL

Python

Pushbullet

Redis

RSS

SendGrid

Shell

Slack

Snowflake

SpaCy

SQLite

SQL Server

Trello

Twitter

部署和执行

Azure

AWS

Dask

Docker

Google Cloud

Kubernetes

Universal Deploy

资源

Prefect提供了各种资源来帮助您获得成功的结果

我们致力于确保一个积极的环境,所有的互动都由我们的Code of Conduct

文档

Prefect的文档–包括概念、教程和完整的API参考–总是可以在docs.prefect.io

有关编写文档的说明,请参阅development guide

松散社区

加入我们的Slack聊聊Prefect,提问,分享小贴士

博客

访问Prefect Blog有关Prefect团队的最新信息和见解

支持

Prefect提供各种社区和高级服务support options适用于Prefect Core和Prefect Cloud的用户

贡献

阅读有关Prefect的community或者一头扎进development guides有关贡献、文档、代码样式和测试的信息

安装

要求

Prefect需要Python 3.6+。如果您是Python新手,我们建议您安装Anaconda distribution

最新版本

要安装Prefect,请运行:

pip install prefect

或者,如果您更喜欢使用conda

conda install -c conda-forge prefect

pipenv

pipenv install --pre prefect

出血边缘

为了进行开发或只是尝试最新的功能,您可能希望直接从源代码安装Prefect

请注意,Prefect的主分支不保证与Prefect Cloud或本地服务器兼容

git clone https://github.com/PrefectHQ/prefect.git
pip install ./prefect

许可证

Prefect Core根据Apache Software License Version 2.0请注意,Prefect Core包括用于运行Prefect Server以及Prefect UI,它们本身是根据Prefect Community License

Superset-Apache Superset是一个数据可视化和数据探索平台

现代的、企业就绪的商业智能Web应用程序

为什么是超集?

超集提供:

  • 用于可视化数据集和制作交互式仪表板的直观界面
  • 一系列精美的可视化效果,可展示您的数据
  • 用于提取和显示数据集的无代码可视化构建器
  • 世界级的SQL IDE,用于准备用于可视化的数据,包括丰富的元数据浏览器
  • 轻量级语义层,使数据分析师能够快速定义自定义维度和指标
  • 对大多数SQL语言数据库的开箱即用支持
  • 无缝的内存中异步缓存和查询
  • 一种可扩展的安全模型,允许配置关于谁可以访问哪些产品功能和数据集的非常复杂的规则
  • 与主要身份验证后端(数据库、OpenID、LDAP、OAUTH、REMOTE_USER等)集成
  • 能够添加自定义可视化插件
  • 用于编程自定义的API
  • 从头开始为规模而设计的云原生架构

支持的数据库

超集可以从任何使用SQL语言的数据存储或数据引擎(例如,Presto或Athena)查询具有Python DB-API驱动程序和SQLAlChemy方言的数据

更全面的支持数据库列表以及配置说明可以找到:here

想要添加对您的数据存储区或数据引擎的支持吗?阅读更多内容here关于技术要求

安装和配置

Extended documentation for Superset

参与进来吧

投稿人指南

有兴趣做贡献吗?请查看我们的CONTRIBUTING.md查找有关贡献的资源,以及有关如何设置开发环境的详细指南

资源