※  信息社会政策探究的思想库  ※
※  信息通信技术前沿的风向标  ※
作者简介
 王建民
清华大学软件学院院长,教授、博士生导师,研究领域为非结构化数据管理、业务过程与产品生命周期管理、数字版权与系统安全技术、数据库测试技术等。

论文引用格式:
王建民. 工业大数据软件面临的挑战及应用发展[J]. 信息通信技术与政策, 2020(10):1-5.
工业大数据软件面临的挑战及应用发展
王建民
(清华大学软件学院,北京 100084)
摘要:工业大数据是工业领域相关数据集的总称,是智能制造与工业互联网的核心要素。工业大数据软件负责工业互联网数据采集、管理、处理、分析和应用等任务,包括系统软件、领域平台和企业应用3个层次的软件构件。分析了智能工业互联网应用场景下工业大数据软件开发所面临的挑战;聚焦如何有效收集、存储并分析工业物联网时序数据,如何降低大数据处理分析的技术门槛,如何快速低成本构建工业大数据应用软件系统;最后对工业大数据软件的应用情况及未来工业大数据软件的发展愿景进行了展望。
关键词:工业大数据软件;工业互联网;工业物联网数据库;Apache IoTDB;软件开发工具
1   引言
数据始终影响着人类工业化进程。工业大数据是工业领域相关数据集的总称,是智能制造与工业互联网的核心要素。工业大数据解决的根本问题,是通过数据的流动与转换去解决设备控制和业务智能问题,减少决策过程所带来的不确定性。具体来说,工业大数据包括企业信息化数据、机器物联网数据和外部跨界数据,它们构成了工业大数据的“0层”数据。其中,工业物联网中机器产生的海量时序数据是工业数据规模变大的主要原因[1]
2   工业大数据发展历程
20世纪60年代以来,伴随着工业信息化、网络化和智能化3个相互叠加的历史阶段,工业大数据已成为现代工业的基础生产资料。
哈佛大学迈克尔·波特教授指出,信息技术正在带来工业产品革命,产品升级是全球制造业发展的必由之路[2]。以农业机械拖拉机为例,未来制造业不是简单制造一个机械产品,而是制造一个数字化、网络化的智慧联网产品,在此基础上和天气的数据、种子的数据、灌溉的数据融合起来,从而形成现代农业生态。未来的工业、农业和服务业将深度融合,第一、二、三产业边界逐渐模糊。同时,一定时期内人类对有形的物质产品总体需求是有限的,2012年麦肯锡回顾人类两百多年工业发展历史时,发现一个国家制造业经济总量在国民生产总值(GDP)的占比,是随着国民平均收入由低到高呈现出令人遗憾的苦笑曲线[3],其拐点在人均收入1 万美元左右,也被解读为国家发展过程的“中等收入陷阱”。如何跨越“中等收入陷阱”,未来工业增长点在哪里?人们给出的答案在微笑曲线的两端,即一端是产品创新——做别人没有做过的产品,另一端是把产品用好——提高已有产品的运行保障效率,这时制造业发展就出现了“制造+服务” 的一个剪刀曲线。
释放工业大数据价值、深化工业大数据应用,是顺应世界工业经济发展与变革规律、支撑我国工业转型升级与高质量发展的重要举措。近年来,在工业和信息化部的领导下,工业互联网产业联盟通过撰写中国工业大数据技术与应用、工业大数据分析指南,举办工业大数据竞赛,征集工业大数据优秀应用案例等多种方式推动了我国工业大数据的应用与发展。
在工作中,也发现尽管大多数企业在特定的工业大数据应用场景中取得了一定成效,但由于对于工业大数据软件系统的构建逻辑与方法论上存在的模糊认识,制约着工业大数据商业价值创造和良性持续发展,导致工业大数据项目存在着客户满意度不高、投入大产出少等尴尬局面,甚至影响企业推广应用工业互联网的信心。
工业大数据系统是构建在工业物联网基础上的信息系统,包括硬件和软件两个部分。工业大数据软件系统负责工业互联网的数据采集、管理、处理、分析和应用5项任务,以及系统软件、领域平台和企业应用3个层次的软件构件。
工业大数据软件系统和其他领域的大数据软件系统一样,是开放的“系统的系统”“软件的软件”,除了典型的Hadoop、Spark、TensorFlow等大数据开源软件以外,还包括已有的企业信息化软件、物联网软件以及互联网软件。可以说,目前世界上没有一个厂商能够研发工业大数据软件系统中需要的所有构件,也没有任何一个企业能够提供普遍适用的工业大数据软件系统。
工业大数据软件系统是企业根据自身业务需求特点构建的、并且不断改造装修的私人“别墅”。“授之以鱼还是授之以渔”成为企业工业大数据软件系统构建方法的逻辑起点,因此通用电气CEO伊梅尔特曾经呼吁,在工业互联网时代,每一家工业企业也是一家软件企业[4]。GE的判断说明,工业大数据软件系统建设作为“交钥匙工程”为时尚早,因此有必要探讨工业大数据软件系统的构建方法,以期合理规划、高效构建工业大数据软件系统。
3   工业大数据软件系统构建面临的挑战
工业大数据软件是覆盖工业数据“采集、管理、处理、分析与应用决策”等全生命周期的软件栈,支撑从工业“0层数据”到“N层数据”再到“工业知识”的价值提升。工业大数据软件是工业数据资产管理与开发利用的重要工具,在工业信息化时代数据采集和管理任务之上,叠加了工业智能化时代数据处理与分析任务。
工业大数据软件系统首先是软件系统,其生命周期起源于业务需求,在需求分析的基础上,进入设计、开发、测试、运行与优化的软件生命周期循环[5],与软件工程“迭代式敏捷开发过程”相似(见图1)。
图1   工业大数据软件系统的生命周期
一般来说,工业大数据加工流水线包括采集、管理、处理、分析与应用5个阶段,其相互关系如图2所示。对于某个具体企业工业大数据加工过程可能只有其中的某些阶段,比如A企业关注工业物联网、企业信息化和商务智能需求,B企业关注企业信息化和人工智能需求,因此A企业与B企业的工业大数据软件系统的功能需求,决定了其大数据加工流水线的内容,也就决定了其工业大数据软件的结构。
图2   工业大数据加工流水线
对应工业大数据加工流水线5个阶段的软件工程方法,针对工业物联网、企业信息化、商务智能以及工业应用需求的软件开发方法,业界已具有相对成熟的方法;而工业人工智能需求的软件开发,由于其需求的不确定性对智能软件构建带来了巨大挑战,同时决定了工业大数据智能应用必然需要跨学科、跨领域的协同团队。
长期以来,很多人用CRISP_DM指导工业大数据分析的过程(见图3)。在很多场景下,这个模型的原理是行之有效的,但是当把它用于工业过程数据分析时,却发现问题的复杂度会急剧上升,各个步骤中反复的次数大大增加;验证评估不合格,导致从头再来的情况非常普遍[6]。工业数据分析反复试验甚至从头再来的过程,导致工业大数据软件系统必须按需演化,甚至要求计算与网络实现软件定义。
图3   工业大数据分析流程CRISP-DM模型
综上所述,大数据技术从消费互联网进入工业互联网,开发人员从精通软件技术的复合型极客转换为特定产业的领域型人才,工业大数据软件系统研发面临着新的挑战。具体表现为3个方面:第一,工业大数据软件开发覆盖5个生命阶段,涉及到物联网软件开发、企业软件开发、商务智能软件开发、数据分析软件开发以及企业综合应用开发;第二,工业大数据软件系统定制组装需要熟悉软件开发的专业知识;第三,工业大数据软件开发过程缺乏明确的理论指导,需要软件研制人员反复迭代试错。
4   工业大数据系统的构建
4.1   按需组装:构建工业大数据软件系统的出发点
近十多年来,开源大数据软件生态野蛮生长。如何有效地构建大数据软件系统得到了国际学术界和产业界的高度关注,如美国加州大学伯克利分校规划研发了一个伯克利大数据分析软件栈BDAS,以期系统满足大数据软件系统开发;美国亚马逊公司则关注是否存在一个大数据软件参考架构,试图回答什么软件工具适合大数据应用、应该怎样使用这些软件以及为什么要用这些软件。
美国技术标准化局制定了大数据参考架构,横向为数据价值链,纵向是IT价值链。一个非常重要的构件是System Orchestrator(即系统编排者或协调者),定义并集成需要的数据应用软件与活动,从而形成一个垂直运行的大数据软件系统。
如果用马戏团做比喻,大数据软件生态里的单个开源软件就是老虎、狮子、大象的话,系统编排者则需要一个训兽师,根据剧本去协调这些动物,以完成每一个节目,即完成构建大数据软件系统任务。
在这种背景下,清华大学大数据系统软件国家工程实验室自主研发了一种可自由组装的大数据软件栈。该框架是一个大数据软件系统的协调者,遵循模型驱动的软件开发架构,一方面它是低代码软件开发环境,另一方面它也是大数据软构件集成的交互总线、控制总线和数据总线。因此,为工业大数据软件系统按需组装、持续演化提供了基础框架。
4.2   数据集成:正确把握工业大数据“泉”“库”“湖”
“数据的泉”,就是把工业物联网看成一个不断产生数据的泉,需要高通量数据接入能力。工业物联网为工业大数据提供了一个重要的、鲜活的数据来源,并且为驱动实时在线业务提供了动力源。
“数据的库”,就是通常所说的关系数据库系统,是企业信息化基础技术,企业研发、生产、管理与服务数据都存储在数据库里,通常是企业业务数据价值的主体。关于基于数据库管理系统的企业信息系统开发已经形成了完整的方法与工具体系,覆盖组织架构、数据模型和业务过程等多个方面。
“数据的湖”,是近期出现的一个概念,谷歌学者认为数据湖是根本没有被组织或良好组织起来的一组数据集,人们只能一事一议地“钓出”有用的数据集[11]。因此,数据湖中存放的是生数据,是自然形成的。数据湖是需要治理的,这样才能快速地把有用的数据“钓”出来。
近期“数据中台”引起了学术界和产业界的广泛关注,“数据中台”要比照“数据后台”进行理解,数据中台并不能代替数据后台。“数据中台”还要比照“数据前台”进行理解,“ 数据中台”加工出来的结果(也被称为数据产品)还要进入数据前台(即工业APP),包括企业信息化系统和企业决策系统。工业大数据软件系统首先要把数据后台能够发挥出来的能力发挥到极致,在需要跨业务、跨领域对工业大数据进行数据集成时才需要建设数据中台。在工业大数据软件系统的构建过程中,应坚持建设一个轻量级的数据中台。
构建工业大数据软件系统还要处理好“数据的泉”“数据的库”“数据的湖”3者之间的关系。该框架一方面是支持信息化应用的低代码量开发,让更多的业务人员可以用它来开发大数据应用;另一方面作为大数据软件系统的协调器,还是工业大数据集成的协调器,帮助理顺数据后台与数据中台之间的关系,按需建立全类型数据治理体系,从这个方面来看,可以支撑企业研发数据中台。
4.3   工业物联网数据库Apache IoTDB
工业物联网数据是工业大数据的主体,也是近年来国际数据库领域研究的热点。物联网数据管理对传统关系数据库和实时数据库在应用模式、计算架构、功能需求3个方面提出了挑战,具体表现为:第一,元数据管理方式从后台数据库决定向前端设备决定改变;第二,存储查询负载从云侧处理向边缘计算转移;第三,系统功能从传统数据读写向信号处理等复杂任务扩展。
针对上述技术挑战及我国工业互联网发展需求,研制了工业物联网时序数据库IoTDB,并于2018年11月进入Apache社区,形成Apache IoTDB开源版本。Apache IoTDB是时间序列数据收集、存储与分析一体化的数据管理引擎,具有体量轻、性能高、易使用的特点,完美对接Hadoop与Spark生态,适用于工业物联网应用中海量时间序列数据高速写入和复杂分析查询的需求。
工业物联网数据管理系统需要同时考虑边缘计算资源限制和云侧负载协同。提出了自适应编码的高效文件存储格式TsFile,其单数据点平均磁盘占用空间比国际主流产品InfluxDB少28%。同时,基于TsFile创新了工业物联网数据库边云数据协同处理架构。
4.4   软件栈的其他典型构件
机器学习开发与部署构件AnyLearn。为降低工业大数据智能分析的技术门槛,简化工业互联网应用中大量相似差异场景,聚焦迁移学习算法与关键应用技术,研制了一个机器学习开发部署软件AnyLearn,使能工业大数据软件系统具有举一反三的学习能力。
交互式大数据处理构件FloK。为了让大数据的处理过程更加简单,研制交互式大数据处理构件,具有大数据处理工作流交互定义,用户数据集感知,支持中间计算结果可视化,处理过程可视监控,计算资源与过程自优化,支持算法、参数、计算流程、计算平台自定义等功能特点。
时间序列数据质量控制构件TsClean。其定位是对海量工业物联网时间序列数据进行清理,包括数据画像、异常检测、数据修复等数据质量核心功能。其“画检修”核心算法基于Spark通用分布式并行计算框架开发,并支持流式计算。
5   应用实践与未来展望
今天的工业大数据软件难以响应快速迭代演变的数据应用与知识生产需求,无法匹配工业数字孪生在物理空间和信息空间的异构动态融合过程。因此,必须以工业大数据价值链为导引,研究开源环境下基于部分知识的软件自动构造方法,构建工业大数据软件的持续演化理论;研究智能物联网环境中工业大数据软件性能优化模型与算法;在此基础上,研究开放动态环境下工业大数据软件多层次可信验证理论。
在工业大数据软件系统构建过程中,要坚持“效益驱动、重点突破、分步实施”的指导原则,坚决避免陷入单纯追求技术指标先进性的误区,以释放工业大数据价值为核心目标,在明晰企业软件和业务数据存量的基础上,选择重点业务场景作为切入点,正确把握工业大数据“泉”“库”“湖”3者关系,以“迭代式敏捷开发”软件工程方法指导工业大数据分步实施,切实优化工业大数据软件系统总体构建成本,探索并形成符合我国工业大数据发展的软件工程方法。
参考文献
[1] 王建民, 王晨, 余晓晖, 等. 中国工业大数据技术与应用白皮书[R]. 工业互联网产业联盟, 2017.
[2] Michael E. Porter, James E. Heppelmann. How smart,connected products are transforming companies[J].Harvard Business Review, 2014(10).
[3] McKinsey. Manufacturing the future:The next era of global growth and innovation[R], 2012.
[4] 杰夫·伊梅尔特. GE:未来每一个工业企业也必须是一家软件企业[R], 2015.
[5] 王建民. 领域需求驱动的大数据应用开发与运行一体化平台技术研究[J]. 软件学报, 2017, 28(6):1516-1528.
[6] 工业互联网产业联盟. 工业大数据分析指南[R], 2019.
Methods and tools for industrial big data software development
WANG Jianmin
(School of software, Tsinghua University, Beijing 100084, China)
Abstract: Industrial big data is the general term for industrial-related data sets, and is the core element of intelligent manufacturing and Industrial Internet. Industrial big data software includes system software, domain platforms, and enterprise applications, which can collect, manage, process, analyze, and apply Industrial Internet data. This article analyzes the challenges of industrial big data software development in the intelligent Industrial Internet application scenario, focusing on how to effectively collect, store and analyze industrial IoT time series data, how to reduce the technical threshold of big data processing and analysis, and how to build industrial big data applications quickly and at low cost. Finally, it introduces a big data software tool set, and looks forward to the future application and development.
Key words: industrial big data software; Industrial Internet; Industrial Internet database; Apache IoTDB; software development tools
本文刊于《信息通信技术与政策》2020年 第10期
主办:中国信息通信研究院
《信息通信技术与政策》是工业和信息化部主管、中国信息通信研究院主办的专业学术期刊。本刊定位于“信息通信技术前沿的风向标,信息社会政策探究的思想库”,聚焦信息通信领域技术趋势、公共政策、国家/产业/企业战略,发布前沿研究成果、焦点问题分析、热点政策解读等,推动5G、工业互联网、数字经济、人工智能、区块链、大数据、云计算等技术产业的创新与发展,引导国家技术战略选择与产业政策制定,搭建产、学、研、用的高端学术交流平台。
   主要栏目  
🔷 专家论坛     
🔷 专题            
🔷 产业与政策
🔷 技术与标准
   联系我们  
[email protected](投稿邮箱)
 010-62300192(联系电话)
推荐阅读
专家论坛丨工业互联网加速创新发展分析与展望
《信息通信技术与政策》2020年 第10期目次
♫. ♪ ~ ♬..♩~ ♫. ♪..♩~ ♫. ♪ ~ ♬..♩..♩~ ♫. ♪ ~ ♬..♩..♩~ ♫. ♪ ~ ♬..♩
♫. ♪ ~ ♬..♩~ ♫. ♪..♩~ ♫. ♪ ~ ♬..♩..♩~ ♫. ♪ ~ ♬..♩..♩~ ♫. ♪ ~ ♬..♩
♫. ♪ ~ ♬..♩~ ♫. ♪..♩~ ♫. ♪ ~ ♬..♩..♩~ ♫. ♪ ~ ♬..♩..♩~ ♫. ♪ ~ ♬..♩
♫. ♪ ~ ♬..♩~ ♫. ♪..♩~ ♫. ♪ ~ ♬..♩..♩~ ♫. ♪ ~ ♬..♩..♩~ ♫. ♪ ~ ♬..♩
“在看”我吗?
继续阅读
阅读原文