
大家好,我是人月聊IT。
今天我想和大家聊一下数据中台建设中的AI赋能。之前我分享了很多视频,旨在实现自然语言编程,利用AI和ChatGPT来实现这一目标。我提出了一种理想的方式,即基于API驱动和无服务器(Serverless)架构来实现自然语言编程。
在实践过程中,包括数据库建设、核心逻辑层生成以及API发布等,使用自然语言基本上没有遇到问题。对于前端部分,通过API接口可以快速反向生成网页页面。然而,生成的网页页面往往需要进行大量调整。如果在下次需求变更时再次生成代码,之前的调整都会被覆盖。因此,要实现完整的自然语言编程,业务系统面临两个关键问题:复杂业务逻辑的实现和前端界面交互的设计。
复杂语言的实现并非不可能,而是需要付出巨大的代价。如果编写自然语言代码所花费的时间比直接编写代码更多,那么这项工作本身就没有意义。许多低代码开发平台也是如此,它们将最简单的代码编写转变为拖拽式流程设计器或代码逻辑设计器。你需要不断拖拽相关的流程框和判断框,并编写一些脚本代码。你会发现这并没有节省你的时间,反而花费了更多时间,而且生成的代码无法进行后续的调试和测试工作。
因此,我个人认为在数据中台建设中,使用AI赋能更容易实现。因为数据中台的逻辑相对简单。在完成数据建模后,涉及数据采集集成、数据清洗、宽表构建、上层维度表构建以及将数据能力发布为API接口等。即使涉及可视化展示的大屏幕,页面交互模式也相对简单,容易通过自然语言实现。因此,我个人认为未来的数据中台,首先是基于各种开源技术组件和现有技术能力,搭建纯技术平台,并将涉及的各个数据能力组件发布为API接口。这样,整个数据中台只有骨架,通过自然语言可以完全生成其内容。

当然,在其中,一个完整的数据中台可能涉及复杂的数据建模和维度建模。
1.数据建模和设计
我个人认为,这些工作仍需要我们自己先完成数据建模设计。完成数据建模设计后,创建最终的数据库和数据表可以通过自然语言实现。在数据建模完成后,涉及到数据采集集成。目前存在各种开源的数据采集集成工具,例如DataX、Sqoop和Flume等,以及类似于Seatunnel的集成工具。
2.数据采集和集成
数据采集集成也可以通过自然语言实现,定义源数据源和目标数据源之间的数据集成规则。确定采集周期是实时还是非实时?是增量还是全量?一旦定义了这些规则,就可以自动生成数据采集集成的脚本。在数据采集完成后,我们可以进行数据清洗工作。例如,昨天我尝试生成一个Python脚本,用于在供应商表中进行数据查重。ChatGPT可以快速为我生成相应的脚本。因此,数据清洗和数据质量管理部分,我可以通过自然语言生成独立运行的代码脚本或代码片段。
3.数据清洗和整合
在数据清洗完成后,可能需要构建上层的宽表。同样,我可以通过自然语言生成相应的代码或SQL语句来帮助我构建宽表。宽表完成后,可能还需要生成维度分析表。在这方面,只要数据建模设计好,我仍然可以用自然语言描述需求,帮助生成相应的维度表。
4.数据服务能力开放
维度表生成完成后,最后一步是发布数据服务API接口。我在很早之前已经完全验证了这一步骤。将数据模型发布为API接口可以自动生成相应的代码和脚本。所有的工作完成后,我还可以借鉴DataOps的思路,将数据采集集成、数据清洗、数据质量管理、宽表构建、维度表构建以及最终的数据服务API接口发布串联起来,形成一个完整的自动化运行流程。
因此,可以看出,我几乎可以通过自然语言交互完成所有工作,包括上层的统计分析报表展示以及可视化大屏幕。因为与业务系统相比,这些界面交互相对简单,更多的是查询条件和数据的表格化、图形化展示。模式相对固定,更容易训练AI,基于我所期望的模式生成相应内容。
因此,如果在业务系统建设和AI赋能方面,我建议优先考虑类似于数据中台或类BI系统的实践,因为这些相对更容易实现。
好了,今天的分享就到这里。希望对大家有所启发,再见。