DIKW 体系

DIKW体系是关于数据、信息、知识及智慧的体系,可以追溯至托马斯·斯特尔那斯·艾略特所写的诗--《岩石》。在首段,他写道:“我们在哪里丢失了知识中的智慧?又在哪里丢失了信息中的知识?”(Where is the wisdom we have lost in knowledge? / Where is the knowledge we have lost in information?)。

1982年12月,美国教育家哈蓝·克利夫兰引用艾略特的这些诗句在其出版的《未来主义者》一书提出了“信息即资源”(Information as a Resource)的主张。

其后,教育家米兰·瑟兰尼、管理思想家罗素·艾可夫进一步对此理论发扬光大,前者在1987年撰写了《管理支援系统:迈向整合知识管理》(Management Support Systems: Towards Integrated Knowledge Management ),后者在1989年撰写了《从数据到智慧》(“From Data to Wisdom”,Human Systems Management)。

数据工程领域中的DIKW体系

D:Data (数据),是 DIKW 体系中最低级的材料,一般指原始数据,包含(或不包含)有用的信息。
I:Information (信息),作为一个概念,信息有着多种多样的含义。在数据工程里,表示由数据工程师(使用相关工具)或者 数据科学家(使用数学方法),按照某种特定规则,对原始数据进行整合提取后,找出来的更高层数据(具体数据)。
K:Knowledge (知识),是对某个主题的确定认识,并且这些认识拥有潜在的能力为特定目的而使用。在数据工程里,表示对信息进行针对性的实用化,让提取的信息可以用于商业应用或学术研究。
W:Wisdom (智慧),表示对知识进行独立的思考分析,得出的某些结论。在数据工程里,工程师和科学家做了大量的工作用计算机程序尽可能多地提取了价值(I/K),然而真正要从数据中洞察出更高的价值,甚至能够对未来的情况进行预测,则需要数据分析师。

数据工程 领域职业划分:

数据工程是一整套对数据(D)进行采集、处理、提取价值(变为 I 或 K)的过程。

首先介绍一下相关的几种角色: Data Engineer(数据工程师), Data Scientist(数据科学家), Data Analyst(数据分析师)。 这三个角色任务重叠性高,要求合作密切,但各负责的领域稍有不同。大部分公司里的这些角色都会根据每个人本身的技能长短而身兼数职, 所以有时候比较难以区分:

  • Data Engineer 数据工程师: 分析数据少不了需要运用计算机和各种工具自动化数据处理的过程, 包括数据格式转换, 储存, 更新, 查询。 数据工程师的工作就是开发工具完成自动化的过程, 属于 基础设施/工具(Infrastructure/Tools)层。

    但是这个角色出现的频率不多 ,因为有现成的MySQL, Oracle等数据库技术, 很多大公司只需要DBA就足够了。而 Hadoop, MongoDB 等 NoSQL 技术的开源, 更是使在大数据的场景下都没有太多 数据工程师 的事,一般都是交给 数据科学家 。


  • Data Scientist 数据科学家: 数据科学家是与数学相结合的中间角色, 需要用数学方法处理原始数据找出肉眼看不到的更高层数据, 一般是运用 统计机器学习(Statistical Machine Learning)或者 深度学习(Deep Learning)。

    有人称 Data Scientist 为 编程统计学家(Programming Statistician),因为他们需要有很好的统计学基础,但也需要参与程序的开发(基于 Infrastructure 之上),而现在很多很多的数据科学家 职位都要求身兼数据工程师。 数据科学家 是把 D 转为 I 或 K 的主力军。


  • Data Analyst 数据分析师: 数据工程师和数据科学家做了大量的工作,用计算机程序尽可能多地提取了价值(I/K),然而真正要从数据中洞察出更高的价值, 则需要依靠丰富的行业经验和洞察力, 这些都需要人力的干预。

    Data Analyst 需要的是对所在业务有深刻了解, 能熟练运用手上的工具(无论是 Excel, SPSS也好, Python/R也好,工程师给你开发的工具也好,必要时还要能自己充当工程师和科学家,力尽所能得到自己需要的工具),有针对性地对数据作分析,并且需要把发现的成果向其他职能部门呈现出来,最终变为行动,这就是把数据最终得出 Wisdom。

什么是数据分析:

百度百科:数据分析是指用适当的统计分析方法对收集来的大量数据进行分析,提取有用信息和形成结论而对数据加以详细研究和概括总结的过程。这一过程也是质量管理体系的支持过程。在实用中,数据分析可帮助人们作出判断,以便采取适当行动。

数据分析的过程:

1. 数据收集:本地数据或者网络数据的采集与操作.
2. 数据处理:数据的规整,按照某种格式进行整合存储。
3. 数据分析:数据的科学计算,使用相关数据工具进行分析。
4. 数据展现:数据可视化,使用相关工具对分析出的数据进行展示。

数据分析的工具:

  • SAS:SAS(STATISTICAL ANALYSIS SYSTEM,简称SAS)公司开发的统计分析软件,是一个功能强大的数据库整合平台。价格昂贵,银行或者大企业才买的起,做离线的分析或者模型用。

  • SPSS:SPSS(Statistical Product and Service Solutions,统计产品与服务解决方案)是IBM公司推出的一系列用于统计学分析运算、数据挖掘、预测分析和决策支持任务的产品,迄今已有40余年的成长历史,价格昂贵。

  • R/MATLAB:适合做学术性质的数据分析,在实际应用上需要额外转换为Python或Scala来实现,而且MATLAB(MathWorks公司出品的商业数学软件)是收费的。

  • Scala:是一门函数式编程语言,熟练使用后开发效率较高,配合Spark适合大规模的数据分析和处理,Scala的运行环境是JVM。

  • Python:Python在数据工程领域和机器学习领域有很多成熟的框架和算法库,完全可以只用Python就可以构建以数据为中心的应用程序。在数据工程领域和机器学习领域,Python非常非常流行。

DIKW模型与数据工程的更多相关文章

  1. DIKW模型与数据工程(了解)

    DIKW 体系 DIKW体系是关于数据.信息.知识及智慧的体系,可以追溯至托马斯·斯特尔那斯·艾略特所写的诗--<岩石>.在首段,他写道:"我们在哪里丢失了知识中的智慧?又在哪里 ...

  2. IOS第七天(3:UiTableView 模型和数据的分组的显示)

    *************UiTableView模型和数据的分组的显示 #import "HMViewController.h" #import "HMHero.h&qu ...

  3. ASP.NET MVC 模型和数据对象映射实践

    在使用 MVC 开发项目的过程中遇到了个问题,就是模型和数据实体之间的如何快捷的转换?是不是可以像 Entity Framework 的那样 EntityTypeConfiguration,或者只需要 ...

  4. 第二篇:智能电网(Smart Grid)中的数据工程与大数据案例分析

    前言 上篇文章中讲到,在智能电网的控制与管理侧中,数据的分析和挖掘.可视化等工作属于核心环节.除此之外,二次侧中需要对数据进行采集,数据共享平台的搭建显然也涉及到数据的管理.那么在智能电网领域中,数据 ...

  5. ASP.NET MVC 5 学习教程:通过控制器访问模型的数据

    原文 ASP.NET MVC 5 学习教程:通过控制器访问模型的数据 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连 ...

  6. 【译】ASP.NET MVC 5 教程 - 6:通过控制器访问模型的数据

    原文:[译]ASP.NET MVC 5 教程 - 6:通过控制器访问模型的数据 在本节中,你将新建一个MoviesController 类,并编写获取电影数据的代码,使用视图模板将数据展示在浏览器中. ...

  7. 网络学习day02_OSI七层模型及数据的传输过程

    title: 2018.9.2 OSI七层模型及数据的传输过程 tags: 计算机网络, OSI七层模型, 数据传输, 数据解封装 --- OSI七层模型和TCP/IP五层模型 OSI七层模型 我们说 ...

  8. 网络_OSI模型_数据包传输

    2017年1月12日, 星期四 网络_OSI模型_数据包传输 1.  网络_源主机_局域网_交换机_路由器_目标主机 2. OSI7七层_TCP/IP精简 OSI 7层:       应用层     ...

  9. python 数据工程 and 开发工具Sublime

    数据工程采集.存储.清洗.分析.可视化 编程语言C++和Javapython大法Rweb:php.html.css.javascript 结合采集:python存储:python+数据库/.csv/t ...

随机推荐

  1. 公有云厂商DDoS防护产品竞品分析——内含CC的一些简单分析,貌似多是基于规则,CC策略细粒度ip/url//ua/refer

    公有云厂商DDoS防护产品竞品分析 from:http://www.freebuf.com/articles/network/132239.html 行文初衷 由于工作关系,最近接触了很多云上用户,对 ...

  2. day5-随机数相关:random模块&string模块

    一.概述 随机数在程序设计中的属于比较基础的内容,主要用于验证场景(如验证码,生成账号对应的密码等),今天结合random模块和string模块来谈谈python中随机数那些事儿. 二.随机数实现相关 ...

  3. 【spark】示例:求Top值

    我们有这样的两个文件 第一个数字为行号,后边为三列数据.我们来求第二列数据的Top(N) (1)我们先读取数据,创建Rdd (2)过滤数据,取第二列数据. 我们用filter()来过滤数据 line. ...

  4. 【lightoj-1055】Going Together(BFS)

    链接:http://www.lightoj.com/volume_showproblem.php?problem=1055 类似推箱子的游戏,一条命令可以让abc三个小人同时移动,但是出界或者撞墙是不 ...

  5. Python基础学习(第9天)

    第九课:动态类型 1.在Python中,有一类特殊的对象,是专门用来存储数据的,常见的有数字.字符串.数列.字典等.这些对象是存储在内存中的实体,我们并不能直接接触到它们,在程序中接触的是对象名,是指 ...

  6. Agilent RF fundamentals (11)-Vector modulator

     Vector modulator 矢量调制器:调整信号的幅度和相位 http://www.21ic.com/app/test/201805/762401.htm

  7. 基于Python和Tornado的WEB Terminal

    https://github.com/liftoff/GateOne 亮点有以下: ↪ Clientless ↪ Multi-User and Multi-Session ↪ Multi-Auth a ...

  8. 如何创建 Visual Studio 2017 RC 离线安装包

    创建 Visual Studio 的离线安装计划 首先下载相应版本的可执行文件,例如:vs_community.exe.vs_enterprise.exe 或 vs_professional 在 cm ...

  9. Java进阶面试问题列表

    面向对象编程的基本理念与核心设计思想 解释下多态性(polymorphism),封装性(encapsulation),内聚(cohesion)以及耦合(coupling). 继承(Inheritanc ...

  10. Java一般要学多久?

    其实学java一般要多久?因人而异,有些人资质好,头脑聪明几个月就能学会,有些人天生愚钝,理解能力差,不过勤能补拙,只是时间相对长点 要坚持住.不过java相对于C,C++java而言,java无疑简 ...