关于数据中台的理解和思考

news2024/11/23 9:14:42

一、什么是数据中台

  1. 数据中台是指通过数据技术,对海量数据进行采集、计算、存储、加工,同时统一标准和口径。
  2. 把数据统一后,会形成标准数据,再进行存储,形成大数据资产层,进而为客户提供高效的、可复用的服务。
  3. 数据中台得基础主要是数据仓库和数据中心。

二、数据中台模型


1、连接数据孤岛打通用户的行为数据和各个业务数据。
2、业务数据化要用更加科学的方式存储数据,一般采用三层建模的方式,让收集上来的数据形成公司的数据资产。
3、数据业务化数据赋能业务人员、领导层进行决策,做到数据反哺业务。

三、数据管理

1、资产管理盘点数据资源、规划数据资源、获取数据资源,并将所有数据资源进行完整呈现,提升数据的利用率。
2、质量管理数据质量就是保障数据正确性的工具,主要包括这么几部分:一是支持准确性校验规则,二是支持双表校验,三是输出校验报告。
3、模型管理进行模型分层和统一开发规范,一个是规则配置,另一个是对表名、字段名的定期校验。
4、标签体系对用户、产品、客商、营销各主题域进行标签提取,将其特征数字化,为后续进行精准营销和用户画像提供必要条件。

四、业务模式

1、传统业务模式数据是副产物,业务人员基于行业经验和流程驱动业务系统,数据主要用于监测业务进展和洞察规律,最终决策由业务人员进行,整个业务流程迭代速度极慢,很难满足现在快速变化的前端应用,商业价值度较低。

  1. 新业务方式数据为业务系统核心,基于技术中台的能力,将企业内外部数据打通形成数据中台,由数据中台驱动业务中台,并利用业务中台的组件重构业务系统。由于有中台的支撑,各类开放服务可以对前端应用的快速变化做出响应,因此商业价值会更高。

五、整体架构

数据中台整体架构如图:

数据采集

  1. 采集数据:按照标准数据结构从业务信息系统的原始数据库中提取的数据,或者通过采集器传回的数据;
  2. 爬虫数据:互联网公开数据、企业信息数据包括工商信息、资质信息、项目信息、人员信息、备案信息、招投标公告、中标公告、资质审核公告等;
  3. 日志数据:各类平台系统产生的业务日志数据,服务器自身运行时产生的日志数据;
  4. 业务数据:施工项目结算系统、设计结算系统业务数据库数据;
  5. 原生数据:使用ERP、CRM、OA、workon等系统时产生的数据。

数据处理

  1. 数据抽取指从不同网络、平台、业务线数据库等数据清洗后抽取到数据中台统一存放。
  2. 数据计算和存储
    1. 数据分层模型
      1. ODL操作数据层全量数据,和数据源保持一致。
      2. BDL基础数据层对数据做统一清洗处理,去重、去噪(例如有一个用户的年龄180岁,就要做处理)、空值转换、日期格式化、字段命名规范等。
      3. IDL接口层主表或宽表,包含各个业务的完整数据全部字段。
      4. ADL应用层数据集市,与需求对接由IDL层基于某些维度的加工、统计、汇总等操作转化而来,各个表联合的结果。
    2. 模型之间数据传递
      1. ODL层数据主要包括MySQL数据、MongoDB数据、日志文件。
      2. ODL层 到 BDL层业务数据库的数据一般采用Sqoop来离线抽取,每天一次。使用Canal来进行实时抽取。日志文件数据可以使用Flume定时离线抽取。也可以使用Spark Streaming或Storm并借助Kafka来实时抽取。
      3. BDL到IDL层或ADL层定时离线任务使用Hive、Spark计算最后写入Hbase、MySQL、Redis中。实时数据使用Spark Streaming、Storm或者Flink来计算,最后会落入Es、Hbase或者 Redis 中。
  3. 数据服务数据被整合计算好之后,以接口形式统一对不同业务线提供服务。

六、任务

数据采集

  1. 数据采集系统,能够通过配置,对不同网站进行快速爬取,保证数据需求。主要过程包括:数据源配置,验证码破解等;数据采集、简单清洗过滤;数据存储。
  2. 爬虫管理系统,方便部署爬虫项目,并能够远程启动、停止、查看爬虫。
  3. 使用python scrapy requests等实现。

数据分析

  1. 企业资质数据,分析企业项目信息、企业备案、企业资质信息、企业人员信息反映企业及技术人员的资格、能力、业绩等;
  2. 企业工商信息,分析企业信用,企业变更等数据建立企业诚信档案;
  3. 招投标信息,分析招投标数据,根据企业中标数据,精准推荐招标公告;分析不同的评标方法,评标因素等对中标的影响,从而提高中标率。
  4. 资质核准公告,分析资质评定因素、审核未通过原因;
  5. 设计系统数据,分析企业业绩、企业项目结算等
  6. 施工系统数据,分析施工数据;
  7. Workon数据,分析用户管理,企业管理;
  8. 日志数据分析用户行为等。

平台搭建

  1. 技术选型

    1. 操作系统Linux,大数据相关软件都运行在Linux上,Linux比较稳定性。
    2. Python 爬虫框架包括scrapy、requests等模块,数据处理框架有Pandas、Numpy等,能处理的数据量为GB级别,机器学习有scikit-learn、tensorflow等。
    3. Java 大数据基础平台中hadoop、Hive、Hbase都是以Java为核心的,处理数据量达到TB、PB级别。
  2. 架构组织功能

    1. Sqoop主要用于在Hadoop与传统的数据库(MySQL 、Oracle 、Postgres)间进行数据的传递,可以将关系型数据库中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。
    2. Canal阿里巴巴旗下的一款开源项目,主要用途是基于 MySQL 数据库增量日志解析获取增量变更进行实时同步。
    3. Hadoop分布式文件系统基于Java,主要由HDFS + YARN + MapReduce三个核心组件组成,HDFS是一个文件系统,负责分布式存储;YARN是Hadoop自带的一个通用的资源管理框架,用来对跑在集群上的Application进行资源分配及管理;MapReduce是一个分布式计算框架,跑在YARN上,配合HDFS用来做分布式数据计算。
    4. HBase是为有数十亿行和数百万列的超大表设计的,这是一种分布式数据库,可以对大数据进行随机性的实时读取/写入访问。基于Hadoop分布式文件系统(HDFS)而建,处理实时数据。
    5. Hive是面向Hadoop生态系统的数据仓库。它让用户可以使用HiveQL查询和管理大数据,这是一种类似SQL的语言,处理历史数据。
    6. Spark是一个分布式计算框架,相当于MapReduce的改进版,能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法,为Python、Scala、R等提供接口。
    7. Zookeeper分布式应用程序协调服务,用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。
    8. Flume是一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方的能力。
    9. DataX 是阿里巴巴集团开源的离线数据同步工具,实现包括 MySQL、Oracle、SqlServer、Postgre、HDFS、Hive、HBase、MongoDB 等各种异构数据源之间高效的数据同步功能。
    10. ElasticSearch是一个开源的基于Lucene的搜索服务器,它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口,是一种流行的企业级搜索引擎。
    11. 人力工时评估
  3. Python预估需2-5人,爬虫、数据挖掘、机器学习方向;

  4. Java预估需2-5人,大数据方向;

  5. 工期预估6-12个月。

  6. 大数据服务

  7. MaxCompute是阿里云的一项大数据计算服务,它能提供快速、完全托管的PB级数据仓库解决方案。

  8. 具体使用和学习方法:https://yq.aliyun.com/articles/68600?spm=5176.7944453.751675.1.330552df4eLjUL&aly_as=fiVTdtly

  9. 费用

存储费用根据数据实际存储量,按阶梯单价计算

存储量阶梯单价
大于0小于等于0.5GB部分固定0.01元/天,不涉及
大于0.5GB小于等于10TB部分0.0072元/GB/天
大于10TB小于等于100TB 部分0.006元/GB/天
大于100TB部分0.004元/GB/天

计算费用10CU起购,包括SQL任务、MapReduce任务、Lightning任务、Spark任务。

资源定义内存CPU售价
1CU4GB1CPU150元/月

下载费用按照外网下载的数据大小进行计费(数据上载不收费)

计费项价格
外网下载价格0.8元/GB

七、数据建模

数据模型主要有关系模型,维度模型,实体模型。
关系模型
又叫ER模型,实际操作上大部分采用3NF建模,必须满足:每个属性值唯一;每个非主属性必须完全依赖与整个主键,而非主键得一部分;每个非主属性不能依赖于其他非主属性。
数据仓库的关系建模是站在全企业的高度,将各个系统中的数据按主题进行近似性组合和合并,并进行一致性处理,为数据分析决策服务,需要全面了解企业业务和数据。
维度模型
维度建模是数据仓库领域比较常用的建模方法。维度模型属于关系模型,但是又两个新的概念,即维度表和事实表。维度表对应现实中的一个对象或一个概念,比如企业、资质、人员、日期等。事实表包含了各维度直接关系的度量值。维度建模的三种模式:星形模式、雪花模式、星座模式。

星形模式,比较常用的方式,以事实表为中心,所有维度表直接以外键形式连接在事实表上,维度表之间没有关联,这样的数据组织比较直观,执行效率高,建立数据集市的时候,大部分数据已经预处理,比如按维度统计、排序等。

雪花模型,在星形模型上将维度表扩展开,每个维度表也可以建立自身的子维度表。这种模型耦合性低,数据冗余小,但是跨表查询变多,导致性能降低。

星座模型,也是星形模型的扩展,允许存在多个事实表共用维度表。当公司业务逐步增多时,基本都会衍生成星座模型。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1145297.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

项目管理软件排行榜聚焦榜:选择最适合你的工具

在一个复杂的项目中,需要有一个好的项目管理软件来帮助协调资源、任务和时间表。然而,市场上有很多种不同的项目管理软件,每种软件都有其优点和缺点。本文综合 PCMag,Softwareworld,B2BSaaS Reviews 等产品测评网站的评…

windows下-mysql环境配置,以及使用navicat可视化数据库,便捷撰写sql语句。

文章目录 MySQL 连接到本地MySQL 下载MySQL连接基本SQL操作语句创建并查看数据库删除数据库修改数据库插入、删除、修改数据 图形化界面展示数据库 Navicat 基础操作连接本地的mysql数据库撰写sql语句 MySQL 连接到本地 MySQL 下载 直接系统自带应用商城下载,安装最…

【多线程面试题 一】、 创建线程有哪几种方式?

文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘也能加深记忆。利己利人、所谓双赢。 面试官:创建线程有哪几种方式&a…

Vuex模块化(modules)与namespaced(命名空间)的搭配

Vuex模块化(modules)与namespaced(命名空间)的搭配 Vuex模块化(modules)格式 原理:可以对Vuex的actions,mutations,state,getters四个属性综合成一个部分&a…

Android问题笔记四十一:JNI NewStringUTF错误的几种解决方案

点击跳转>Unity3D特效百例点击跳转>案例项目实战源码点击跳转>游戏脚本-辅助自动化点击跳转>Android控件全解手册点击跳转>Scratch编程案例点击跳转>软考全系列 👉关于作者 专注于Android/Unity和各种游戏开发技巧,以及各种资源分享&…

B站视频下载工具的分享

直接解压使用1.5.9版本的就可以。 资源:链接:https://pan.baidu.com/s/1zWJWzxVss4h2lmMhCFFzDg?pwdw1v8 提取码:w1v8 先解压 解压 双击使用

小白的福利教学。4+共病+WGCNA+机器学习+实验,简单易复现

今天给同学们分享一篇共病WGCNA机器学习实验的生信文章“Exploring immune related gene signatures and mechanisms linking non alcoholic fatty liver disease to atrial fibrillation through transcriptome data analysis”,这篇文章于2023年10月16日发表在Sci…

c++学习MFC还是QT?

c学习MFC还是QT? 建议学习Qt, Qt开发不仅跨平台,而且社区活跃度和网上的资料也比较多一点,特别是跨平台这一点很重要,最近很多小伙伴找我,说想要一些QT资料,然后我根据自己从业十年经验,熬夜搞了…

Proteus仿真--基于51单片机的LED模拟交通灯仿真(仿真文件+程序)

本文主要介绍基于51单片机的LED模拟交通灯仿真(完整仿真源文件及代码见文末链接) 仿真运行视频 Proteus仿真--基于51单片机的LED模拟交通灯仿真(仿真文件程序) 附完整Proteus仿真资料代码资料 百度网盘链接: https://pan.baidu.c…

软件测试必问的面试题(答案+文档)

前言 (第一个就刷掉一大批人) 有很多“会自动化”的同学来咨询技术问题,他总会问到我一些元素定位的问题。元素定位其实都不算自动化面试的问题。 一般我都会问:你是定位不到吗?通常结果都是说确实定位不到。 做自…

视频剪辑高手必学:批量制作画中画效果的秘诀

随着社交媒体的兴起,视频制作越来越受到人们的关注。在视频制作中,画中画效果是一种常见的技术,它能够让多个画面同时出现在屏幕上,增强视频的视觉效果。然而,对于许多初学者来说,制作画中画效果可能是一项…

python会计应用实操-企业收入与发票比对

案例:企业收入与开票 公司月底或一个季度盘点一下,收入账款与开票数额是否匹配。 使用工具:jupter lab和python 数据: 上海电子税务局已开票统计excel表 银行流水单excel表 编程思路: 两个excel对比金额&#x…

4.OsgEarth加载Mbtiles

愿你出走半生,归来仍是少年&#xff01; 1.Mbtiles mbtiles是在GIS开发中最常用的瓦片包格式&#xff0c;在移动端、桌面端都是常用的格式。 2.代码 通过OsgEarth的MBTilesImageLayer图层进行加载&#xff0c;也是封装成了一个静态的方法方便调用。 /// <summary&g…

【ROS入门】机器人导航(仿真)——导航模块概述

文章结构 导航模块简介全局地图自身定位路径规划运动控制环境感知 导航之坐标系坐标系变换 导航模块简介 在ROS中机器人导航(Navigation)由多个功能包组合实现&#xff0c;ROS 中又称之为导航功能包集&#xff0c;关于导航模块&#xff0c;官方介绍如下: 一个二维导航堆栈&…

拥有DOM力量的你究竟可以干什么

如果你希望访问 HTML 页面中的任何元素&#xff0c;那么您总是从访问 document 对象开始&#xff01; 查找HTML元素 document.getElementById(id) 通过元素 id 来查找元素 <!DOCTYPE html> <html> <head><meta charset…

OSPF 的10种网络类型和5种区域类型

10种网络类型&#xff0c;也有称7类的&#xff0c;因为8、9、10类是V3专有的&#xff0c;如下&#xff1a; LSA 类型描述传播范围使用与目的Type 1路由器LSA (Router LSA)区域 (Area)描述路由器连接的直连网络和链路信息&#xff0c;用于建立拓扑图和计算最短路径。Type 2网络…

Nginx性能优化

简介 nginx作为常用的web代理服务器&#xff0c;某些场景下对于性能要求还是蛮高的&#xff0c;所以本片文章会基于操作系统调度以及网络通信两个角度来讨论一下Nginx性能的优化思路。 基于操作系统调度进行Nginx优化 CPU工作方式 对于用户进程&#xff0c;CPU会按照下面的…

10个简单好用的Python装饰器

_装饰器&#xff08;Decorators&#xff09;_是Python中一种强大而灵活的功能&#xff0c;用于修改或增强函数或类的行为。装饰器本质上是一个函数&#xff0c;它接受另一个函数或类作为参数&#xff0c;并返回一个新的函数或类。它们通常用于在不修改原始代码的情况下添加额外…

Linux操作系统概述3——进程相关操作讲解(进程概念、xinetd守护进程、进程管理命令)

目录 进程的概念 程序与进程的关系 进程的分类 守护进程的分类 进程的PID 进程的状态 xinetd 守护进程服务 xinetd基本概念 xinetd工作原理 xinetd相关文件介绍 守护进程的管理命令 chkconfig 命令 service 命令 systemctl命令 查看进程状态相关命令 一般程序处…

CLIP文章精读

核心&#xff1a; loss的设计&#xff1a;分布针对固定image匹配text和固定text匹配image设计了两个交叉熵loss