Hi!请登陆

不想用ETL工具?数据科学家如何轻松分析数据?

2020-11-24 41 11/24

全文共2617字,预计学习时长7分钟

图源:unsplash

数据科学家和数据分析师经常需要回答业务问题,常常需要临时进行分析或创建模型,以应用到公司的工作流程中。

要进行分析,数据科学团队首先需要访问来自多个应用程序和业务流程的高质量数据,你要把数据从a点移到b点,通常通过自动化过程实现——抽取、转换、加载或ETL。一般而言,ETL会将数据加载到某种形式的数据仓库,以便于访问。

但是,ETL和数据仓库存在一个主要问题。ETL需要大量的编码,专门知识和维护。对于数据科学家来说,这十分耗时。此外,也不是所有的数据科学家都十分熟悉ETL。在很多情况下,数据工程团队承担了这项工作,没日没夜把大项目引入基础数据层。

这往往不能契合数据科学家的需求,因为数据科学家的雇主们需要快速得到信息和分析。因此,等数据工程团队提取新的数据源可不是一个好选择。

这就是为什么在过去的几年中开发了几种解决方案的原因:这些方案让数据科学家更容易获取所需数据,其形式主要是数据虚拟化、自动ETL和无代码/低代码的解决方案。

自动化ETL和数据仓库

尽管ETL本身是一个自动化过程,却还是需要大量的手动开发和维护。

这带火了Panoply之类的工具。他们提供了易于集成的自动ETL和云数据仓库,可以与许多第三方工具(如Salesforce、Google Analytics和数据库)同步。有了这些自动集成,数据科学家可以快速分析数据,而无需部署复杂的基础架构。

无需Python或EC2实例的参与,单击几下即可完成。在大致了解打算引入团队的数据类型后,便可以生成一个已填充的数据仓库。

这些自动化的ETL系统非常使用便捷。通常,只需终端用户设置数据源和目标即可实现目标,在这里还可以设置在特定时间运行ETL。全程零代码操作!

产品实例

如前所述,Panoply是ETL和数据仓库的结合的实例。

可以在Panoply GUI中设置ingest,在其中选择源和目的地并自动提取数据。Panoply带有内置的数据仓库,它会自动存储数据的副本,可以使用一切BI或分析工具来查询数据的副本,而不必担心会影响操作或生产。对于希望即想简化流程、又想实时访问整个组织数据的用户来说,这种方式十分有意义。

同样,这也让数据科学家能够回答临时问题,而无需等四周才能让BI团队将其带入数据仓库。

它的优点在于:

· 易于学习和实施

· 以云为中心

· 易于扩展

而它也有缺点:

· 自动化的数据仓库和ETL本身无法管理复杂的逻辑

· 更复杂的转换可能需要添加无代码/低代码ETL工具

无代码/低代码

无代码/低代码距离自动ETL仅有几步之遥。这类ETL工具支持更多拖拽组件,可以拖放一些设置转换和数据操作功能。其他类似的解决方案可能更倾向于用允许用户指定源、目的地和转换的GUI。此外,这些无代码/低代码的解决方案都允许最终用户查看是否需要编码并对其进行编辑。

对于没有代码经验的用户而言,这是一个很好的选择。有了无代码/低代码数据,科学家就可以开发语法有限的ETL,从而创建一些相当复杂的数据管道,无需建立许多复杂的基础架构来管理数据管道何时运行以及它们所依赖的内容。用户只需要从高层次上了解数据在哪、想去哪以及何时去即可。

缺点:

· 代码中的可定制性有限

· 每个工具都不相同,因此开发人员必须在下一项工作中重新学习ETL

· 无代码/低代码难度低,可能导致糟糕的高级设计

优点:

· 无编码经验要求

· 易于集成到许多受欢迎的第三方

· 有许多基于云的解决方案

产品实例

图源:aws.amazon.com

这类产品有很多,如AWS Glue、Stitch和FiveTran。

AWS Glue是基于云的现代ETL解决方案的好例子。开发人员只需单击几下即可设置作业并设置参数。这样,数据科学家无需太多代码即可移动并转换数据。

作为AWS一部分,Glue可以轻松地与其他服务集成,例如S3,RDS和Redshift,这使得在AWS上开发数据管道变得非常容易和直观。

但是,AWS Glue有一个主要问题:与许多其他无代码/低代码选项不同,它是为在AWS上运行而开发的。这意味着,如果突然决定换到其他云提供商,仅从Glue切换到其他解决方案就得花费大量时间和金钱。

最后提一句:这是团队在开发ETL之前应考虑的重要因素。

数据虚拟化

数据虚拟化是一种允许用户访问来自多个数据源、数据结构和第三方提供程序的数据的方法。实际上,它创建了一个单层,无论使用哪种技术存储底层数据,最终用户都将可以通过单点访问它。

总体而言,当团队需要快速访问数据时,数据虚拟化具有许多优势。

· 允许数据科学家混合来自多个数据库的数据

· 管理安全性和访问管理

· 实时或近实时数据

它的缺点是:

· 学习曲线高

· 需要管理员进行管理

· 仍然需要用户考虑设计和数据流

产品实例

Denodo是最著名的数据虚拟化提供商之一。该产品可以说是最成熟,功能最丰富的产品。

Denodo致力于帮助用户通过一项服务访问其数据,这使得它受到众多客户的欢迎。由于它减少了创建尽可能多的数据仓库的必要性,从医疗保健提供者到金融行业,每个人都靠Denodo来减轻BI开发人员和数据科学家的压力。

总体而言,以上三者都可以帮助团队分析数据,且无需花费很多精力来开发复杂的ETL。

对于数据科学家和机器学习工程师而言,管理、混合和移动数据仍是一项必不可少的任务。但是,开发这些管道及其相应的数据仓库的过程无需像过去那样花费很长时间。

通过自动集成系统或其他方法(例如无代码/低代码和数据虚拟化)可以开发ETL。如果团队希望减少数据工程师的工作量,选择有很多。

当然,团队可能还需要组建一支新的数据科学团队,以立即将数据反馈给他们,然后使用Panoply之类的解决方案。这种方式也值得一试!

留言点赞关注

我们一起分享AI学习与发展的干货

如转载,请后台留言,遵守转载规范

相关推荐