`

数据开发方法论

 
阅读更多

由于公司数据平台对ETL开发工具做了比较好的封装,较大程度上面提升了开发效率,数据开发同学的主要工作集中在写SQL,疲于应付各种各样庞大的业务需求。不少同学认为做数据开发没技术含量,技术上面没提升,久而久之产生厌烦感。

个人认为造成这种想法的主要原因是:

  • 通过ETL方式解决一个点的需求,没有站在一个全局的角度来思考问题,建设数据,没有任何沉淀和反思。
  • 对数据开发没有一个清晰地定位,其实建设数据是一件非常有挑战的工作。

面临的问题

数据仓库是一种体系结构,首先摆在我们面前的问题:

  • 如何高效理解业务,将复杂业务用简单的模型来表示(建模),最终落地点是数据仓库或者数据集市里面一张张表以及上层的一系列指标(如何分层,如何提高数据复用率等等)。
  • 最佳的数据组织方式能高效地应对业务变更,更加灵活、高质量的支撑业务需求(你在建设仓库还是数据坟墓?)。

而这一切都需要较好的方法论来支撑,如何建设好是值得思考的。

端正态度

比较好的态度是:以解决问题为出发点来做数据开发。

  • 系统开发和数据开发的目的都是为了解决问题,本质上是一样的,都面临着各种各样难以解决的问题,要认识到能建设好数据仓库是相当不容易的(数据重复建设、不一致、数据不完整、不易于理解等等),难度比低于做好一个系统
  • 建设数据仓库过程中也是非常需要采用工程方法来提升效率的,所以仓库建设和系统开发并不矛盾,应该积极寻找结合点,提升效率,而不能陷入疲于应付需求的泥潭。
  • 后台或者平台开发和数据开发能力模型应该是不一样的,数据开发更加考验一个人的综合能力。
  • 衡量一个工程师是否合格,最终落地点应该是 ”工作能力“

能力模型

个人认为:

  • 数据处理以及建模能力,在这两方面应该做到足够的技术广度以及深度。
  • 业务理解以及抽象思维、总结能力、问题到本质。
  • 其他软素质比如沟通能力

要做好一个数据开发需要更加全面的素质。

一些方法论

如何快速理解业务

抽象思维

通常情况下,业务方会给出一大堆的指标或者一系列的需求,反正看起来比较复杂,这个时候要抽象思维

  • 复杂—>简单,不要过度在意细节,抓住需求的本质,关键点,站在整体的高度来理解需求。
  • 简单->复杂, 系统化,全面性,分解业务。

引入模型

任何复杂的业务都可以用一些简单的模型来表示,引入模型有助于我们快速分解需求,比如引入流量漏斗模型,围绕流量无非是分析:转化率、跳出率、停留时长等指标,而流量漏斗,即用户行为相对是稳定的,围绕这个漏斗的上下文(维度)可能会变化,这是我们重点需要关注的,再比如分析新老客户质量是引入客户忠诚度模型等,总之引入模型有助于我们理解需求,分解业务。

关于埋点

能在后台实现的尽量在业务后台服务埋点,尽量不依赖客户端,因为在客户端埋点可维护性比较差,且不灵活,统计效果依赖客户端发版。

关于模型选择

首先还要明确一点,数据仓库是面向分析的,所以一般情况下倾向于建设直观易于理解使用的数据,常用的关系模型以及维度模型区别在于划分世界的方式不一样:一个是实体关系,一个是维度模型,但都可以实现范式。

关系模型

将客观世界划分成关系与实体,数据仓库由一系列的关系以及实体组成,严格遵守3nf范式,数据一致性比较强,冗余度低。

通过参照完整性来保证一致性,采用关系模型生成的数据仓库往往成蜘蛛网结构,可读性差,不容易入手,对于非仓库建设人员要使用数据仓库中的数据成本是非常高的。

维度建模

维度建模方式将客户世界分解成事实和维度,建模过程的一大部分工作体现在抽取维度以及事实,相对来说更加直观,容易理解,在业务变更较为频繁的场景可以更加有效地覆盖业务需求。

数据仓库由一系列的事实表以及维度表组成,事实表与维表之间呈星型连接,事实表之间又通过特定维度联系,形成雪花结构。

3NF范式

3nf在第一范式原子性、第二范式不存在部分依赖基础上加入消除传递依赖,其目的是降低数据冗余度,提高数据一致性。关系模型有时候也被称为范式建模,但是这种说法是不太严谨的。因为关系模型好维度建模生成的表都可以符合3nf范式。

分享到:
评论

相关推荐

    数据中台(技术架构+数据治理方法论)建设方案.pdf

    数据中台建设方案的技术架构和数据治理方法论 数据中台建设方案是企业数字化转型的核心组件之一,它可以帮助企业集成和统筹各种数据资源,提高数据的价值和利用效率。下面是数据中台建设方案的技术架构和数据治理...

    使用TOGAF架构开发方法论整合SABSA安全架构方法推荐.pdf

    TOGAF架构开发方法论与SABSA安全架构方法的集成研究 TOGAF架构开发方法论是一种成熟的企业架构方法论,旨在帮助企业规划、设计和实施架构项目。而SABSA安全架构方法则是一种专门用于风险管理和安全架构的方法论。...

    Oracle数据仓库方法论

    Oracle的数据仓库实施方法论,包括数据仓库的提交物,系统设计和开发方法介绍等内容

    全栈数据产品经理方法论地图

    "全栈数据产品经理方法论地图" 全栈数据产品经理方法论地图...该方法论框架涵盖了数据产品的整个生命周期,从数据产品的策划到其launch和后续的迭代改进,旨在帮助数据产品经理更好地规划和实施数据产品的开发和发布。

    数据分析方法论.pdf

    数据分析方法论.pdf 数据分析方法论是指通过对数据的收集、分析和解释,得出有价值的结论和建议,以帮助企业或组织更好地决策和发展。该方法论涵盖了多种理论和模型,以下是对其中一些重要知识点的解释: 1. STP ...

    系统分析师论开发方法及应用

    系统分析师论文参考,论开发方法及应用。 2017年1月,我作为项目负责人,参加了XX市××集团公司ERP财务管控项目,该项目合同金额500万元,合同工期为1年,该项目的主要目标是搭建ERP财务管控平台,实现客户内部从...

    第章系统开发方法论综述(“数据”相关文档)共127张.pptx

    系统开发方法论综述(“数据”相关文档) 本资源摘要信息涵盖了系统开发方法论综述的主要知识点,包括系统分析、设计、实现、测试和维护等方面的内容。下面是详细的知识点解释: 1. 系统分析:系统分析是指在总体...

    数据类测试方法论定稿.pdf

    数据类测试方法论定稿.pdf 本文档旨在规范数据仓库的基础层测试工作,指导数据仓库基础层相关集成测试,并提供工作指导和依据。下面是从标题、描述、标签和部分内容中生成的相关知识点: 一、测试背景 数据仓库是...

    使用TOGAF架构开发方法论整合SABSA安全架构方法.pdf

    TOGAF架构开发方法论与SABSA安全架构方法的集成 本文旨在介绍如何使用TOGAF架构开发方法论与SABSA安全架构方法集成,创建一个全面的架构方法论。为达到这一目标,本文首先简要介绍了TOGAF和SABSA用于集成的相关概念...

    数据中台设计方法论.docx

    数据中台设计方法论 数据中台设计方法论是一个系统的设计方法论,旨在帮助企业构建一个数据中台,以便更好地管理和利用数据资源。该方法论涵盖了数据接入、模型建设、ETL 平台、数据资产管理、数据服务等几个方面。...

    Java之Web服务开发方法论图解..pdf

    Java之Web服务开发方法论图解 本文将详细介绍使用Axis2和CXF开发Web服务的方法论图解。Web服务是基于SOAP(Simple Object Access Protocol)的应用程序之间的交互方式,是一种基于XML的远程过程调用(RPC)机制。 ...

    金蝶实施方法论V10-6构建阶段

    金蝶实施方法论V10-6构建阶段是软件工程实施的重要组成部分,旨在指导项目团队如何有效地进行系统配置、系统功能开发、系统环境部署、UAT测试培训等工作,以确保项目的顺利进行。本文将详细介绍构建阶段的工作过程、...

    数据中台建设方法论.docx

    数据中台建设方法论 数据中台是一套可持续“让企业的数据用起来”的机制,通过有形的产品和实施方法论,构建一套持续不断把数据变成资产并服务于业务的机制。数据来自于业务,并反哺业务,不断循环迭代,实现数据...

    FSLDM逻辑数据模型开发培训客户化方法论PPT课件.ppt

    FSLDM逻辑数据模型开发培训客户化方法论PPT课件.ppt

    ORACLE数据仓库方法论

    数据仓库系统的建设目标-从数据到知识; 数据仓库系统设计和开发方法。

    软件项目实施方法论.pdf

    软件项目实施方法论是一种“闭环”的系统开发和实施方法,以确保及时的、高效的、统一的、成功的实施结果。该方法基于每个用户的需求是独特的和重要的这个概念。快威公司需要与用户一起磋商,具体情况具体分析地裁剪...

    数据库设计准则及方法论.pdf

    数据库设计准则及方法论.pdf 数据库设计是数据库开发的关键步骤,对于数据库的设计直接影响到系统的性能和可扩展性。本文将从数据库设计的角度,讨论数据库设计的准则和方法论。 一、数据库设计准则 数据库设计的...

    企业数据运营管理与数据分析方法论.pdf

    企业数据运营管理与分析方法论 企业日常运营场景 总经理及时得到经营信息,将发现的问题迅速下放,确定会议⽬标。 运营总监进⾏初步分析,确定问题⽅向,交由数据⼈员进⼀步分析探索。 数据分析⼈员从多维度展开⾃助...

    ASAP实施方法论.pdf

    ASAP实施方法论 ASAP(Accelerate SAP)实施方法论是SAP项目实施的标准方法,旨在加速SAP实施项目的实施过程。该方法论将SAP项目实施分为五个阶段:项目准备、蓝图设计、系统实现、上线准备和上线及上线支持。 一...

    论文研究-系统科学与中医方法论.pdf

    论文研究-系统科学与中医方法论.pdf, 中医学中蕴含着很多系统理论的朴素思想值得我们去科学地继承、发扬和发展. 近五年多我们参加了名老中医经验和思想传承的数据挖掘...

Global site tag (gtag.js) - Google Analytics