自动化Python和SQL任务的数据建模和处理框架
sayn的Python项目详细描述
SAYN是一个现代化的数据处理和建模框架。用户定义任务(包括Python、自动SQL转换等)及其关系,SAYN负责剩下的任务。它旨在简化、灵活和集中化,以便为数据工程工作流程带来显著的效率提高。在
用例
SAYN可用于数据工程和分析工作流的多种用途:
- 数据提取:使用定制的提取过程补充Fivetran或Stitch等工具。在
- 数据建模:转换数据仓库中的原始数据(例如聚合活动或会话、计算营销活动ROI等)。在
- 数据科学:整合和执行数据科学模型。在
主要特点
SAYN具有以下主要功能:
- 基于YAML的DAG(直接无环图)创建。这意味着所有分析师,包括不精通Python的分析师,都可以使用SAYN轻松地向ETL进程添加任务。在
- Automated SQL transformations:编写SELECT语句。SAYN将其转换为表/视图,并为您管理所有内容。在
- Jinja parameters:使用Jinja模板可以在开发和产品环境以及其他技巧之间轻松切换。在
- Python tasks:使用Python脚本来补充提取和加载层并构建数据科学模型。在
- 支持多个databases。在
- 还有更多。。。参见Documentation。在
设计原则
赛恩的目标是通过其三个核心设计原则来增强数据工程师和分析师的能力:
- Simplicity:数据过程应该易于创建、扩展和维护。因此,您的团队可以专注于数据转换,而不是编写流程。SAYN系统地安排您的所有任务,并提供许多自动化功能。在
- Flexibility:数据的力量是无限的,你的工具也应该如此。SAYN同时支持SQL和Python,因此您的分析师可以为每个进程选择最理想的解决方案。在
- centralization:所有的分析代码都应该放在一个地方,这样你的生活就更容易了,并且在整个分析过程中允许依赖关系。在
快速入门
$ pip install sayn
$ sayn init test_sayn
$ cd test_sayn
$ sayn run
就这样!您完成了示例项目的第一次SAYN运行。继续看Tutorial: Part 1,这将给你一个很好的概述塞恩的真正力量!在
支持
如果您需要任何关于SAYN的帮助,或者只是想知道更多,请联系团队,电话sayn@173tech.com。在
许可证
SAYN在Apache 2.0许可下是开源的。在
制作:心:由173tech。在
- 项目
标签: