数据项目,无论是数据分析、可视化,还是数据科学和机器学习相关的项目,通常都非常复杂,涉及多个组成部分,比如代码、数据、运行环境、SQL脚本以及分析报告等;与此同时,随着AI时代的到来,数据科学领域正经历重大变革。这对于数据科学团队来说,如何保持高效地工作模式一直是一个不小的挑战。

  在这样的背景下,协作式、现代化的数据文档(Data Notebook)逐渐成为团队协作中不可或缺的重要工具。像Hex.tech、Deepnote等等这样的平台,已经在团队协作方面做出了许多成功的实践和探索。接下来,我们以阿里云下的DataV Note产品为例,总结一下它是如何帮助数据团队实现高效的工作模式。

一、跨角色协同;跨工具链统一

  我曾在网上看到一张有趣的图片。让人惊讶的是,它竟然十分贴切地描绘出了"BI研发"与"业务人员"之间的关系:

  在常规的分析场景下,业务人员通常会通过“钉钉”或“邮件”等方式,向BI研发团队寻求帮助,请求他们处理并提供一张大宽表或直接可用的表,随后,业务人员便基于这些资料进行自己的分析创作;在一般情况下,如果在处理过程中的表格发现存在字段遗漏或不满足需求的情况,需要进行多轮沟通才能够解决问题。这类工作流程往往涉及多种通讯工具SQL处理平台可视化平台之间的跨越,这不仅降低了公司各部门间合作的效率,也加剧了沟通上的困难,这些挑战极其值得我们深入思考。

  然而,通过使用DataV Note,可以很好地解决这一系列协同问题:

  • 协同分析在数据驱动的公司中,通常会有多种角色参与到数据的处理和分析中,如:BI研发工程师、算法工程师和业务专家等,最合理和高效的协作方式是让所有的人员能够紧密地参与到数据分析的整个过程中。
  • 异构数据源自定义处理分析异构数据源通过 SQL 拉取数据直接产出 Python 可用变量,原生支持 Pandas,Numpy 等数据科学分析库,支持精细复杂的数据自定义处理和进一步的机器学习算法延伸分析,不止于 SQL
  • 多语言支持鉴于公司内不同岗位对技术栈的熟悉程度存在差异,我们期望能够在尽可能降低研发成本的同时,能免去各种复杂研发环境的配置。在数据分析领域中,SQLPython语言无疑是使用频率最高的,由于基于Jupyter进行研发,我们有能力并且很容易扩展对包括R、Julia、Clojure、Scala在内的其他热门编程语言的支持。
  • 高效沟通我们的愿景是尽量促使所有人聚集在一起共同创作,从而能够在遇到任何问题时立刻进行反馈和评议,确保所有协作者之间可以迅速做出响应。

二、为数据项目和数据团队创建知识库

  “数据集”、“图表”、“报表/应用”是数据分析的中间产物,它们通常是为解决特定业务问题或支持决策过程而创建。如果单独存在,而脱离了它们创建时的业务分析场景,可能会存在以下问题:

  • 数据集基于特定业务场景通过执行 SQL 语句获得的结果集合。然而,如果这些数据集与其分析上下文分离,它们与上下游相关联数据的血缘(lineage)关系可能变得模糊不清,这将导致数据集变得难以解读和应用。
  • 图表数据集可视化的形式。如果图表脱离了数据集和业务分析,缺失与数据集间的映射关系和二次加工的逻辑,该图表可能无法有效传达所需信息从而失去意义。
  • 报表/应用集成和展示一系列图表和数据的产物。如果它们与业务分析流程分离被独立存储,当要修改某项业务指标时,追溯流程过于繁琐,更新维护变得很困难。

综上所述,为了最大限度地提高数据分析成果的价值,有必要确保数据集、图表、报表和应用与其原始的业务分析场景保持紧密关联。所以,无论是某个场景的整体分析过程还是分析结果的报告,都是作为公司知识库的内容沉淀,会是一种比较理想的方式。

三、实现可重现和可回溯的数据科学过程

  经过调研,我们发现基于Jupyter的Notebook形式进行分析,用户可以清晰地记录分析过程中的所有步骤,更容易地理解和追溯原始分析的上下文和结果分析。它遵循的设计理念是单元格(如下图的SQL、过滤器、图表)作为最小逻辑单元,可以用于数据加工处理,展示分析结果等,整体的分析流程由各个单元格自上而下组合而成,上游的单元格输出可被下游的单元格作为输入引用。但它本身没有内建直观表示复杂依赖的功能,这会导致复杂的分析过程中,难以看清上下游单元格的依赖关系。

  因此,采用Notebook形式展示分析过程与数据流(DAG)的形式展示各个单元格之间的依赖关系相结合的理念进行设计是一个不错的选择。

  在编辑态中的工作模式是以报告形式来体现整体的分析过程;在构建发布态的过程中会筛选过程中的一些关键特征,将其提取出来并重新编排,以便形成最终的发布状态。无论处于编辑状态的分析过程,还是最终发布状态的成果,两者都能够成为公司宝贵的知识资源

四、一键分享报告,以促进组织内的数据驱动决策

  最后,当您完成了详尽的数据分析过程之后,还需将结果以直观且吸引人的方式呈现,例如PPT、报告或面板等,以便进行汇报。我们为此提供了丰富的定制化功能,包括主题选择布局调整样式优化水印添加等,确保您的展示材料既专业又美观。与此同时,我们还支持导出为PngPdfWord格式,并可通过钉钉微信邮件轻松分享,满足多样化的汇报需求。

五、大模型AI驱动,未来可期

  1. AI智能绘图:系统将自动识别表中每个字段的数据类型,并根据抽样数据的特征智能推荐最适合的数据可视化图表

如:绘制不同类型店铺在各个季度的总毛利的趋势折线图。

  1. AI智能总结、探索:大模型通过波动分析、分布分析、异常识别、相关性分析和数据对比等多种手段,对特定数据集进行深入模拟,从而挖掘出有价值的信息

如:探究不同店铺风格、所在地区以及所售卖的商品类型对于整体业绩表现(即销售额与利润率)的具体影响程度。

  1. NLP2SQL(自然语言生成SQL):业务人员可一键生成SQL并进行取数、聚合

如:查询东南区的销售情况。

  1. NLP2Python(自然语言生成Python):相比于SQL,Python代码具有更高的灵活性,通过 Python 代码可以生成算法预测和归因分析模块

如:对result_1的数据集中的“东南区”的销售情况总结并进行归因分析

  同时,基于数据的智能报告AutoReport终极功能也是作了相应的尝试,它能基于自然语言一键分析结构化数据并自动生成详尽的分析报告。智能报告不仅为分析师们提供了宝贵的洞察视角,还极大地缩短了数据分析周期,有效节约了人力资源。

数据团队必读:智能数据分析文档(DataV Note)五种高效工作模式的更多相关文章

  1. ABBYY FineReader 15新增智能PDF文档转换功能

    ABBYY FineReader 15(Windows系统)新增智能PDF文档转换功能,可自动检测导入PDF数字文档的文本层质量,确保转变为可编辑格式后的准确结果:从表单字段和文本框中提取文本,准确保 ...

  2. 从多个XML文档中读取数据用于显示webapi帮助文档

    前言: 你先得知道HelpPageConfig文件,不知道说明你现在不需要这个,所以下文就不用看了,等知道了再看也不急.当然如果你很知道这个,下文也不用看了,因为你会了. 方法一: new XmlDo ...

  3. jQuery+turn.js翻书、文档和杂志3种特效演示

    很好用的一款插件jQuery+turn.js翻书.文档和杂志3种特效演示 在线预览 下载地址 实例代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML ...

  4. 为何在有 DOCTYPE 的 HTML 文档之上仍然还会出现混杂模式?

    不使用 DOCTYPE 一定会使 HTML 文档处于混杂模式,然而使用了 DOCTYPE,也不一定就能够使文档在所有浏览器中均处于标准模式. DOCTYPE 本身不就是一个“开关”吗?为何在有 DOC ...

  5. 团队作业:SRS文档-飞机大战

    本实验为团队合作项目作业的一部分:SRS文档-飞机大战 项目分工:SRS文档项目为梁JM负责完成 实验要求: 3.SRS文档(第二周,截止5月31日)              要求对所选项目进行用例 ...

  6. Storm项目:流数据监控1《设计文档…

    博客公告: (1)本博客全部博客文章搬迁至<博客虫>http://blogchong.com/ (2)文章相应的源代码下载链接參考博客虫站点首页的"代码GIT". (3 ...

  7. [Swift通天遁地]七、数据与安全-(1)XML文档的创建和解析

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  8. matlab将数据读取和写入txt文档

    原文链接 matlab中打开文件 fid = fopen(文件名,‘打开方式’): 说明:fid用于存储文件句柄值,如果fid>0,这说明文件打开成功. 另外,在这些字符串后添加一个“t”,如‘ ...

  9. 从隔壁兄弟那爬点网页数据,整理成word文档

    package com.parse_report; import com.report.utils.ParseUrl; /** * Create by JIUN 2018/7/14 */ public ...

  10. 一个非常适合IT团队的在线API文档、技术文档工具 (ShowDoc)

    在逸橙呆了不到两年,开发时后端都有开发接口API,来到数库,好多后端开发和前端沟通是还是发doc文档,很不方便,我向cto反应,自己找到这个,老乡田雷(php,隔壁村的)也用过,可能某些原因选择其他的 ...

随机推荐

  1. Nuxt.js 应用中的 close 事件钩子

    title: Nuxt.js 应用中的 close 事件钩子 date: 2024/12/2 updated: 2024/12/2 author: cmdragon excerpt: close 钩子 ...

  2. synchronized 关键字测试

    对象上有关键字 package com.study.juc.sync; import java.util.concurrent.TimeUnit; public class Test1 { publi ...

  3. iOS自动化打包输出工具

    自动化打包输出工具 做开发的小伙伴有时候会接到自动化打包的需求,公司一般是要求根据一个配置文件来实现自动化配置iOS项目,比如往Xcode工程添加或修改代码.添加Framework.library.S ...

  4. 拿到小米 Offer,却迷茫了。。

    大家好,我是程序员鱼皮,12 月了,很多小伙伴也拿到了秋招的 Offer(没拿到也不要灰心),但即使拿到 Offer,可能还会有一些其他的顾虑.今天分享我们编程导航一位鱼友的提问,给大家作为学习成长的 ...

  5. Powershell 源码批判

    代码里充斥着过程式编程的搞法:比如这里 Utils.PathIsUnc,分散的到处都是 internal static IEnumerable<string> GetDefaultAvai ...

  6. Slate文档编辑器-TS类型扩展与节点类型检查

    Slate文档编辑器-TS类型扩展与节点类型检查 在之前我们基于slate实现的文档编辑器探讨了WrapNode数据结构与操作变换,主要是对于嵌套类型的数据结构类型需要关注的Normalize与Tra ...

  7. 虚拟机安装 Win10 ,无法启动,报错EFI Network ... Time out

    问题情况 VMWare 16 安装 win10 的镜像文件,无法启动,报错 EFI Network ... Time out 解决办法 虚拟机设置中 固件类型 改用 BIOS 已解决

  8. Navicat Premium15安装与激活

    Navicat premium是一款数据库管理工具,是一个可多重连线资料库的管理工具,它可以让你以单一程式同时连线到 MySQL.SQLite.Oracle 及 PostgreSQL 资料库,让管理不 ...

  9. Qt编写物联网管理平台50-超强跨平台

    一.前言 跨平台的需求,除了是用户的需求外,也是为了适应日益增长的国产操作系统的发展的需要,当前国产操作系统发展的如火如荼,100%都是围绕linux系统展开,说的好听点就是站在巨人的肩膀上开发,不好 ...

  10. Qt编写物联网管理平台36-通信协议

    一.前言 本系统默认采用modbus协议,支持串口和网络rtu模式,后期还会引入其他通信协议比如mqtt等,可以在端口管理中下拉选择通信协议即可. 1.1 通信流程 整体的结构是:控制器挂在通信端口, ...