分享嘉宾:俞方桦 Neo4j 亚太地区售前和技术总监
编辑整理:张宸宁 BOSS直聘
出品平台:DataFunTalk
导读:供应链问题的本质是数据的问题,传统关系型数据库由于其模式的限制,并不能胜任当代智能供应链对复杂关联关系的存储、查询和计算要求。图数据库以及图数据科学则为这一挑战提供了新的选择,并将与物联网、数字孪生一起构建智能供应链的数字基础设施。本文将从数据的角度分享当今智能供应链应当如何搭建和不断完善基础设施。
全文将围绕以下四方面进行:
-
供应链背景介绍
-
面向智能供应链的知识图谱
-
图数据库以及供应链中的图算法
-
案例分析与总结
01
供应链背景介绍
帕拉格·康纳在《超级版图》这本书中提到——“现在我们已经进入了以供应链为人类新型组织方式的时代。”
实际上我们现在已逐步进入超级版图的时代,不仅仅通过物资的互联互通、交通和基础设施的互联互通,还有信息的互联互通,形成了新的全球组织形式。在这个形式当中,功能性的基础设施,而不是国界,将主导世界的发展。日常生活中其实已经有意识或者无意识的经历这样的变化,全球供应链已经改变了我们的生活,包括远程办公也是信息供应链的一种形式。
1. 全球供应链都在经历挑战
近期在报刊头条有很多关于供应链问题的报道,比如危机、原材料涨价、芯片荒、航运不能够准时到达、供应链濒临崩溃等。特别在新冠疫情期间加剧了问题的严重性。最近的一次全球调研表明,整个供应链,包括规划、采购、生产、仓储、物流、销售等各个环节,均出现了各种各样的问题。
全球供应链危机实际上是一个数据的危机。当然这种不确定因素,比如黑天鹅事件、灰犀牛事件,每天都有可能发生。关键问题是作为企业,作为政府,如何对自然灾害、政治事件或者各种各样的突发事件,做出正确的判断和决策。一调查结果显示,75%的高层管理者对供应链数据是没有信心的。财富 1000 强当中超过九成的企业,一级、二级供应链受到新冠疫情的影响。
2. 供应链的介绍
提到供应链,大家可能觉得它是一条直线,是一个线性的结构。但事实上,现在的供应链已经不是一个链条,而是一个图。在供应链的每个环节之间有着各种各样错综复杂的关系。
这里我们说的图,并不是图表图片,而是通过实体与实体之间通过各种各样复杂的关系关联形成的网络。万物互联,图是无处不在的,包括人际网络、交易网络,还有现在很热门的知识图谱,都是图的不同形式。比如全球的通讯网络是一个图,在图当中各种通信节点、交换机、路由器都是节点,它们之间通过有线、无线、电缆、光纤等方式进行联系;全球的航运物流也是一个巨大的网络,能源的采集、运输,还有使用存储,都构成一个巨大的网络;甚至日常生活当中我们买一件衣服,衣服的原产地、棉花、材料、纽扣可能是在不同的地方,而生产、仓储、物流、分销,以及它的品牌都可能属于不同的国家,这也是一个图。
02
面向智能供应链的知识图谱
传统制造行业,在面对智能供应链的挑战之下,产生越来越多的不适应的情况。比如现在很多制造业当中,存在大量的数据孤岛。生产、销售、采购、物流,还有售后服务等数据都通过不同的应用系统,如ERP、CRM、财务等形成。我们需要有一个全面的视图,一个统一的观点去看待它,需要一张完整的供应链视图。
因此我们需要在传统的数据孤岛和不断变化的应用场景中去搭建一个知识图谱,将这些信息资料从不同的数据源中收集起来,建立它们之间的关系,然后存储在一个提供更加高效的存储和查询的数据库中,并提供一个完整的视图来满足不同应用场景的需求。
1. 知识图谱:从数据到知识的转变
知识图谱完成了从数据到知识的转变。二、三十年前我们在做商业智能时,提到从数据变成信息,信息辅助决策。现在从数据到知识,则是更大的一次飞跃,有着更高的要求。
从数据到知识的转变主要分为三个阶段。
-
物联网:首先通过信息基础设施,包括物联网、互联网等各个移动终端设备采集大量的数据。这些数据如果只是作为单一的数据点,其价值并没有充分得到发挥。
-
数字孪生:如果把设备安装到一个站点,与其它设备互联,把各个数据点的信息关联起来,就形成了数字孪生。比如在一个工厂当中,一个物流的集装箱货轮上,我们可以实时看到来自每个数据采集点或者传感器的数据信息,了解其与整个设备机器运转状况的对应关系。
-
知识图谱:更进一步,把当前状态和历史状态,通过引入上下文建立知识图谱,了解过去发生类似情况时的处理方式,做出的决策,形成一个动态的、深度的知识图谱,从而完成从数据到知识的转变。
2. 知识图谱在智能供应链中的应用场景
在智能供应链中,知识图谱应用场景非常广泛。从生产、维护、生产规划和排期,到物料管理以及库存管理,每个领域都能够看到知识图谱扮演着重要的角色。我们的数据可以来自于设备、物联网,也可能是来自于生产线上的实时数据。对于供应商来说,库存量、销售量、库存周期、物流情况,大量的数据都可以整合在一个知识图谱当中,为企业提供一个完整而精确的视图。
03
图数据库以及供应链中的图算法
1. 图数据库介绍
传统技术中,习惯使用关系型数据库。在关系型数据库中,关注的是表和表之间的关联,以表的形式存储数据。如果数据记录和记录之间有关联,则通过主键外键把它们连接起来。关系型数据库中的“关系”并不能很好地反映现实世界中的日常生活中的关系,而更多指的是关系代数中的关系。
能够更加准确和直观地表达现实世界中的关系的数据结构是图。实体可以表示个人,可以是账户,可以是交易,也可以是一个事件。人和人之间可以有各种关系,形成人的交际网络;交易和交易之间可以有关系,形成金融交易网络;事件和事件之间可以有关系,形成事件的先后互相影响,甚至推理的关系。图数据库使用非常简单高效的方式来描述现实世界,对于复杂的数据结构或数据类型能够提供更好的支持。
特别是原生的图数据库,对数据库模式的要求非常灵活,不需要严格定义实体的结构、类型、大小,就可以很方便地把数据加载到图数据库当中。图数据库会对关系进行特殊的处理,它不仅保存数据,也保存数据之间的关系。因此在原生的图数据库当中我们是不需要做连接的。当我们需要从一个实体导航到另一个实体,只要沿着这个实体的所有关系在图当中做遍历,就能够寻找到更多的关系。
这也就是为什么关系数据库和图数据库的性能比较,在数据量规模很大、关系很复杂、类型很多、跳转次数很多的情况下,图数据库的查询性能要远远优于关系型数据库,而且基本上是以线性的方式增长。
2. 属性图介绍
在计算机科学当中,图有不同的表示或存储方式,比如邻接矩阵、邻接链表或者是三元组等。这里所提到的图主要是属性图,在属性图当中最简单的结构就是节点,代表实体。比如图中蓝色的圆圈,代表一个产品节点。每个节点可以有一个或多个标签。红色的代表原材料。节点和节点之间通过关系进行关联,节点和关系上面都可以有属性。用这样的一种非常简单的方式就可以描述现实世界当中几乎所有的场景、事件或事物。
3. 图数据科学 – 从已知挖掘未知
建立起知识图谱之后,我们可以进一步在知识图谱上面做图的分析。比如通过一些常见的图算法,来发现和推导出新的关系,从而帮助我们看到以前没有看到的一些新的隐藏内容。更进一步的第三阶段,我们可以利用相关的神经网络学习、知识图谱学习,或者图的嵌入,图的表示学习等各种不同的技术。传统做语音识别是一维数据,图像识别是二维数据。在图上面的识别是更加高维的机器学习的方法。
当我们开始做知识图谱时,希望基于一些先验的知识,已经有了一些领域专家建立的知识图谱去做学习,得到的结果应该是更加高效、更加准确的,特别是能够更加容易被解释。
4. 供应链中的图算法
GDS,Graph Data Science 图数据科学,在 Neo4j 我们已经提供超过 60 +的图算法,可以分为如下图所示的几大类:
路径寻找,在物流路径规划当中就是最短路径问题,从起点到终点有多少个路径可选择。判断条件所谓最短,可以是跳转次数,最少可以是成本最低,可以是速度最快等。这是非常常见的图算法。
中心性算法,主要描述一个节点,在整个节点网络当中的重要性。最有名的是谷歌的Page Rank搜索引擎算法,衡量页面在整个互联网中的重要性。重要性会用来做排序,更重要的页面,它的排序结果应该更靠前。这就是为什么谷歌依靠页面排行算法获得如此大的成功。类似的思路在供应链当中也可以使用。
社区检测主要是检测巨大的网络当中的高度关联的成员,能够检测出社区的结构。
链接预测就是判断两个节点之间是不是会产生链接。
相似度主要是判断节点相似度或者是边的相似度、图的相似度。相似度不仅仅是基于个人的背景、年龄段、性别、收入等,还会基于这个人的社交圈,还有他喜欢的东西、喜欢去的地方、喜欢看的书、喜欢做的事情等来进行相似度判断。
我们可以看一些简单的例子,比如最短路径,可以发现从起点到终点之间,当出现特殊情况的时候,有些路径不能使用,那么最佳的替代路径就是带权重的最短路径。中介中心度可以快速找到关键瓶颈或者高风险节点。这里圆圈代表节点,边分成进入的边和出去的边,代表不同的含义。所以度中心度还可以进一步分成入度中心度和出度中心度。相似度被广泛应用在寻找替代的仓库或替代的供应商,在推荐当中,寻找相似的产品。
04
案例分析与总结
下面介绍一些算法在供应链场景中的应用案例。
1. 案例分析—供应链风险评估
第一个是供应链的风险评估。比如我们有一个产品,太阳能电池板,要验证它的原材料供应链是否稳定。碰到异常天气,或者是地缘冲突、政治因素,原材料的供应价格就会受的影响。要评估风险,需要衡量原材料的供应风险,产品复杂度,供应商影响力等。我们可以采取通过入度中心性、紧密中心性和中介中心性来形成一系列风险评估指标。
Neo4j Bloom是一个图的可视化和分析工具。对图数据库中的内容进行检索或分析时,不需要写查询,只需要输入文本,会自动地到数据库当中去检索最相似的内容有哪些。比如输入 CdTe薄膜太阳能板,会自动帮我检索出一个会自动检索出相关产品。当我选择了这个产品之后,它会进一步告诉我数据库当中和这个产品相关联的关系有哪些,在数据库当中存在的关系有哪些。回车,它会告诉我们对于这个具体的产品三个最主要的原材料,可以选择原材料,然后进一步扩展。看一下这个原材料是由哪里生产,生产厂以及原材料是不是有其他的更加原生的原材料。比如铜,从粗铜出来,可以很直观地看到。
对于一个具体产品,它的主要的原材料是哪些?这里有三种金属,对应的三种金属,其中的两种碲和铬,是来自于基本金属的一个衍生品或者附带产品,可以看到对应的生产商。一步步扩展,最终得到整个供应链的完整视图。
如果我们要评估这个产品的风险,首先是产品复杂度,如果这个产品所依赖的原材料数量越多,那么它的复杂度就越高。另外一个问题是原材料的供应风险,我们看一下有哪些矿场生产这个原材料,以及这些矿处于哪些国家。它的产地来源越多,那么供应链的风险就越小。可以通过计算他们的关系的数量。这个生产关系是一个从矿场到原材料的进入方向的关系,所以是入度。更复杂一些,可以去看紧密中心性和中介中心性。
做一个完整的供应链分析,可能有成百上千甚至于上万个节点参与者。我们可以通过一个复杂查询,把完整的供应链全部返回并可视化出来。
如果要分析中心度,有一个概念叫中介中心度,简单来说就是在整个网络当中,那些处于关键最短路径上面的次数越多频率越高,那么它的重要性就越大。
判断供应链的风险,哪一个矿产供应最容易受到影响。这里面我们使用一个叫做紧密中心性的指标,这个指标计算一个节点在网络当中到其他所有节点的平均距离。如果离所有其他节点的平均距离最短,说明它相对处于这个网络的中心。那么对于供应链来说,处于中心的这些矿场的供应可能被中断的风险就越小。
2. 案例分析—物流监控和优化
第二个案例就是把可视化和知识图谱以及图的算法结合起来,做实时物流方面的规划和监控。我们发明了Cypher的查询语言,使用声明性的查询语言。比如我们查询整个物流网络当中,各个分销中心distribution center。如果写如上图所示的一个查询,就能返回出前十个相关的分销中心。
如果要看目前开往某一个特定的物流仓储中心的货车,只要写如上图中的查询,括号里面代表的是节点,方括号里面代表的是关系。查询将返回所有开往ID是22的分销中心的卡车的位置和车牌号。
再比如要查询一辆具体的卡车,卡车上的所有的传感器,也可以通过上图中的查询。
在全球化的供应链当中,我们可以将物联网的数据收集,加载到关于物流网络的知识图谱上面,可以得到实时的状态。比如这里有红点显示上海市有一些状况,点击一下可以看到从上海出发的物流,去往成都、广西南宁和北京的路上出现了问题,再点击,可以看到问题是有严重的交通堵塞。又例如去往重庆的路程当中,有一个非常糟糕的天气,可能是暴雨,可以看到整个道路状况。去往广西的方向,我们看到一个卡车有问题,这个报警是来自于卡车上的监控。我们可以具体看一下,原来是这个冷链货车内部的温度传感器告诉我们,卡车内部的温度过高。这时候我们可以通话给相应卡车司机,要求去附近的检查站做维修。
以上就是通过把知识图谱、数字孪生架构搭建起来,实现对整个供应链当中物流的实时监控和实时管理。
供应链的数据关系非常复杂,包括生产、物流、仓储、原材料等。我们的观点是使用图,一种新型的数据存储模式来建模、存储和处理相关的数据会更加灵活方便,并且能够保证更好的性能。
供应链问题本质上是数据的问题,需要整合来自不同数据源的数据到知识图谱上,并提供实时的视图。知识图谱本身如果只是静态地显示结构和连接,那么其价值并没有得到最大发挥。
我们可以通过一些分析工具和可视化工具,提供更好的供应链透视和挖掘能力。
Neo4j是全球领先的图数据平台厂商,拥有Neo4j图数据库、图数据科学,以及Bloom图可视化工具等产品。我们目前有全球最大的图技术社区,专注于在图数据分析、图数据库,以及图数据科学领域的信息交流。欢迎大家通过线上资源,对Neo4j有更多的了解。
05
Q&A
Q1:在构建图谱的时候,来自于各种不同数据源的数据,在规范、数据质量等方面差异都比较大。那么前置的工作需要怎么做?
A1:如果入参的数据质量不好,这是数仓的问题。有的时候,同一个产品,在不同的系统当中,有着不同的 SKU(标识),这是很常见的问题。可以归结为数据不一致问题,或是数据缺失的问题。如果是数据缺失,无论什么数据库都无法解决。对于数据不一致问题,我们有个叫做 entity resolution 实体解析的应用,虽然关于产品的描述或者名称导致数据不一致,但本质是同一个产品。我们可以看它的基本属性,这是传统的做法。更进一步,我们还可以看一看与这个产品相关的产品部件,如果其部件都是一样的,那应该就是同一个产品。通过图的方式来描述这个产品,包括它的 BOM、整个产品的各种部件,以及其他相关关系。我们通过两个子图进行比较,来提高识别数据不一致的准确度。这其实也是图的一个应用场景。
回到之前的问题,还有一方面就是图数据库是一个轻型模式的数据库。它不像关系数据库,必须定义好表、定义好字段的类型、长度,才可以开始往里写数据。如果有个字段长度不一样或者类型不一致了,就写入不进去,这是关系数据库的要求。这就是为什么过去15年出现了一大批的 nosql 非关系型数据库,包括文档数据库、hadoop、列式存储,图数据库也是其中一种。图数据库对数据的模式要求没有那么高,因此对于结构化、非结构化、半结构化的数据,都可以很容易地先加进来,然后我们再进行处理。
Q2:关于这个时间序列的问题,假设这个图是动态在变的,包括属性或者甚至是图的关系,怎么操作。
A2:如果图本身只是个静态图,只能反映一个拓扑结构,我们做的事情有限,尤其像供应链这样的应用场景,其实我们需要的是动态图,这个领域更复杂,从目前来说通过一些建模的方式来实现。还有就是在Neo4j建模的时候,给属性或者关系也打上时间标签,它的起始有效、失效时间等。另一个方面就是图数据科学,首先把数据加载到内存里面,形成一个内存中的视图,然后再进行运算,以提高性能。另外一个好处就是有很多数据是不需要落库的,可以很快地在内存中进行更新,然后做运算。尤其像现在的机器学习,做很多模型时往往都是试一试,调一调,改一改,再跑一次。我们可以在内存中进行修改测试优化,最终全部做完之后,把结果写到数据库里面,提供一个灵活性,所以这一方面也是可以帮助解决时间序列的问题。
https://pan.baidu.com/s/1nmArlxp6KZ5Qt_PZkH7aGg
提取码:5676
视频链接过期了后台可回复:111 获取链接;
🧐 分享、点赞、在看,给个3连击呗!👇
本文章来源于互联网,如有侵权,请联系删除!原文地址:知识图谱、物联网和数字孪生——智能供应链的数字基础设施
应用场景 腾讯云的物联网开发平台能做什么?举一个简单的例子,作者就经常有这样的场景:三十度高温的广州,每当你刚踏进家门便急不可耐的寻找空调遥控器把温度调到最低,然后站在空调前迎面吹着冷风;但也可以是这样一个场景:也是三十度高温的广州,当你还在挤地铁的时候,便估…