漫谈工业大数据9:开源工业大数据软件简介(上)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了漫谈工业大数据9:开源工业大数据软件简介(上)相关的知识,希望对你有一定的参考价值。

参考技术A

今天真是一个美好的时代,有无数的开源系统可以为我们提供服务,现在有许多开发软件可以用到工业大数据中,当然很多系统还不成熟,应用到工业中还需要小心,并且需要开发人员对其进行一定的优化和调整。下面就简单介绍一些开源的大数据工具软件,看看有哪些能够应用到工业大数据领域。

下面这张图是我根据网上流传的一张开源大数据软件分类图整理的:

我们可以把开源大数据软件分成几类,有一些可以逐步应用到工业大数据领域,下面就一一介绍一下这些软件。(以下系统介绍大都来源于网络)

1、数据存储类

(1)关系数据库mysql

这个就不用太多介绍了吧,关系型数据库领域应用最广泛的开源软件,目前属于 Oracle 旗下产品。

(2)文件数据库Hadoop

Hadoop是大数据时代的明星产品,它最大的成就在于实现了一个分布式文件系统(Hadoop Distributed FileSystem),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的硬件上,而且它提供高吞吐量来访问应用程序的数据,适合那些有着超大数据集的应用程序。

Hadoop可以在工业大数据应用中用来作为底层的基础数据库,由于它采用了分布式部署的方式,如果是私有云部署,适用于大型企业集团。如果是公有云的话,可以用来存储文档、视频、图像等资料。

(3)列数据库Hbase

HBase是一个分布式的、面向列的开源数据库,HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。

基于Hbase开发的OpenTSDB,可以存储所有的时序(无须采样)来构建一个分布式、可伸缩的时间序列数据库。它支持秒级数据采集所有metrics,支持永久存储,可以做容量规划,并很容易的接入到现有的报警系统里。

这样的话,它就可以替代在工业领域用得最多的实时数据库。

(4)文档数据库MongoDB

MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。

MongoDB适合于存储工业大数据中的各类文档,包括各类图纸、文档等。

(5)图数据库Neo4j/OrientDB

图数据库不是存放图片的,是基于图的形式构建的数据系统。

Neo4j是一个高性能的,NOSQL图形数据库,它将结构化数据存储在网络上而不是表中。它是一个嵌入式的、基于磁盘的、具备完全的事务特性的Java持久化引擎,但是它将结构化数据存储在网络(从数学角度叫做图)上而不是表中。Neo4j也可以被看作是一个高性能的图引擎,该引擎具有成熟数据库的所有特性。程序员工作在一个面向对象的、灵活的网络结构下而不是严格、静态的表中——但是他们可以享受到具备完全的事务特性、 企业级 的数据库的所有好处。

OrientDB是兼具文档数据库的灵活性和图形数据库管理 链接 能力的可深层次扩展的文档-图形数据库管理系统。可选无模式、全模式或混合模式下。支持许多高级特性,诸如ACID事务、快速索引,原生和SQL查询功能。可以JSON格式导入、导出文档。若不执行昂贵的JOIN操作的话,如同关系数据库可在几毫秒内可检索数以百记的链接文档图。

这些数据库都可以用来存储非结构化数据。

2、数据分析类

(1)批处理MapReduce/Spark

MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念"Map(映射)"和"Reduce(归约)",是它们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。它极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上。 当前的软件实现是指定一个Map(映射)函数,用来把一组键值对映射成一组新的键值对,指定并发的Reduce(归约)函数,用来保证所有映射的键值对中的每一个共享相同的键组。

Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎。Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方面表现得更加优越,换句话说,Spark 启用了内存分布数据集,除了能够提供交互式查询外,它还可以优化迭代工作负载。尽管创建 Spark 是为了支持分布式数据集上的迭代作业,但是实际上它是对 Hadoop 的补充,可以在 Hadoop 文件系统中并行运行。

这些大数据的明星产品可以用来做工业大数据的处理。

(2)流处理Storm

Storm是一个开源的分布式实时计算系统,可以简单、可靠的处理大量的数据流。Storm有很多使用场景:如实时分析,在线机器学习,持续计算,分布式RPC,ETL等等。Storm支持水平扩展,具有高容错性,保证每个消息都会得到处理,而且处理速度很快(在一个小集群中,每个结点每秒可以处理数以百万计的消息)。Storm的部署和运维都很便捷,而且更为重要的是可以使用任意编程语言来开发应用。

(3)图处理Giraph

Giraph是什么?Giraph是Apache基金会开源项目之一,被定义为迭代式图处理系统。他架构在Hadoop之上,提供了图处理接口,专门处理大数据的图问题。

Giraph的存在很有必要,现在的大数据的图问题又很多,例如表达人与人之间的关系的有社交网络,搜索引擎需要经常计算网页与网页之间的关系,而map-reduce接口不太适合实现图算法。

Giraph主要用于分析用户或者内容之间的联系或重要性。

(4)并行计算MPI/OpenCL

OpenCL(全称Open Computing Language,开放运算语言)是第一个面向 异构系统 通用目的并行编程的开放式、免费标准,也是一个统一的编程环境,便于软件开发人员为高性能计算 服务器 、桌面计算系统、手持设备编写高效轻便的代码,而且广泛适用于多核心处理器(CPU)、图形处理器(GPU)、Cell类型架构以及数字信号处理器(DSP)等其他并行处理器,在 游戏 、 娱乐 、科研、医疗等各种领域都有广阔的发展前景。

(5)分析框架Hive

Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。

(6)分析框架Pig

Apache Pig 是apache平台下的一个免费开源项目,Pig为大型数据集的处理提供了更高层次的抽象,很多时候数据的处理需要多个MapReduce过程才能实现,使得数据处理过程与该模式匹配可能很困难。有了Pig就能够使用更丰富的数据结构。[2]

Pig LatinPig Latin 是一个相对简单的语言,一条语句 就是一个操作,与数据库的表类似,可以在关系数据库中找到它(其中,元组代表行,并且每个元组都由字段组成)。

Pig 拥有大量的数据类型,不仅支持包、元组和映射等高级概念,还支持简单的数据类型,如 int、long、float、double、chararray 和 bytearray。并且,还有一套完整的比较运算符,包括使用正则表达式的丰富匹配模式。

开源工业物联网数据库 Apache IoTDB 毕业成为 Apache 顶级项目!

来源:IoTDB漫游指南


本文约2000字,建议阅读5分钟

全球最大的开源软件基金会 Apache 软件基金会于北京时间 2020 年 9 月 23 日宣布 Apache IoTDB 毕业成为 Apache 顶级项目!


开源工业物联网数据库 Apache IoTDB 毕业成为 Apache 顶级项目!
Apache IoTDB 是一个开源物联网原生数据库,旨在满足大规模物联网和工业物联网(IoT 和 IIoT)应用对数据、存储和分析的严苛要求。该项目最早由清华大学大数据系统软件团队研发,并于 2018 年 11 月 18 日捐赠给 Apache ,受到了四位项目导师 Christofer Dutz、Justin Mclean、Kevin A. McGrail、Willem Ning Jiang(姜宁)的指导,由孵化器项目管理委员会成员(PPMC)进行经营管理。


在为期 1 年 10 个月的孵化过程中,汇聚了全球 78 个贡献者,邮件列表中共收到来自 251 个成员的 5124 封邮件,Jira 中共创建了 905 个 Issue,合并了 1413 个 PR,发布 9 个版本,以 17 票支持一次性通过社区毕业提案投票。


2020 年 9月 16 日,经 Apache 董事会表决,Apache IoTDB 正式晋升为顶级项目。官方毕业声明:https://s.apache.org/3xv3c

开源工业物联网数据库 Apache IoTDB 毕业成为 Apache 顶级项目!

IoTDB 作为高性能轻量级的开源物联网原生数据库成为 Apache 大数据生态的重要成员,聚焦工业物联网,具备低存储成本、高速数据写入(千万数据点秒级写入、高效乱序数据处理)、快速查询(TB级数据秒级查询)、功能完备(数据的增删改查、丰富的聚合函数)、查询分析一体化(一份数据,满足实时查询与分析挖掘)、边云协同、简单易用(采用标准的 JDBC 接口、类 SQL 查询语言)等特点。基准测试表明 IoTDB 读写性能均优于现有的时序数据库 InfluxDB、TimescaleDB、OpenTSDB、KairosDB 等。


Apache IoTDB目前已在数十家机构中得到应用,包括美国安赛乐米塔尔、东方国信、中国气象局、湖南中烟、大唐先一、金风、海尔、联想、四维智联、上海地铁、长飞光纤等。

寄语

清华大学软件学院院长、大数据系统软件团队负责人、IoTDB 项目发起人王建民教授说:“Apache IoTDB 开源项目是我们团队面向智能物联网大数据应用需求开展软件技术创新和领军人才培养所进行的一次有益尝试,路漫漫其修远,未来可期 ”。

“IoTDB Apache 成为顶级项目适逢其时”,美国国家工程院院士、IBM印度首席科学家C.Mohan 说, “我感到非常振奋,这是第一个由中国大学发起的开源项目,我一直与IoTDB的研究人员紧密合作,目睹这个项目走向成熟,并形成了一个充满活力的开源软件社区。我期待和社区相关研究人员一起,合作推动项目走向无比远大的前途。”

 “Apache IoTDB 是中国高校发起的、并在 Apache 社区成功孵化的项目,” 中国科学院院士梅宏教授在听闻项目毕业的消息时说:“它遵循 Apache Way 建立了一个健康活跃的国际开源社区,是中国开源教育与文化建设的成功实践。”

“Apache IoTDB 针对边缘和云侧不同的运行环境、操作系统、工作负载进行了优化, 创新了数据存储与查询分析技术,是工业物联网的核心基础软件,”中国工程院院士廖湘科教授说,“ 另外,透过开源模式,Apache IoTDB 把这些创新技术带给全世界。”

“Apache IoTDB 非常适合边缘计算场景,”德国 Practical industries GmbH 首席执行官 Julian Feinauer 博士说,“高压缩比这一性能指标使得在存储受限的情况下,系统仍能高效地使用。IoTDB 非常适合工业物联网环境下的应用场景。”

“我们尝试和测试了各种解决方案,最终选择了 IoTDB 作为我们的核心数据库,它具有高性能,并且对企业开放,”AutoAI Inc. 架构师刘大伟说,“这个项目深深地吸引了我加入社区,并成为了 IoTDB 的项目维护者之一。”

清华大学软件学院助理研究员,Apache IoTDB项目VP黄向东博士说:“Apache IoTDB 正在成为一个物联网数据管理和分析的标准解决方案,它将帮助更多的用户和公司解决实际问题。我们诚挚邀请更多的贡献者加入我们,一同向世界贡献有趣、有意义、功能强大的软件。”

联系我们

官方网站: https://iotdb.apache.org/
代码仓库:
https://github.com/apache/incubator-iotdb/tree/master
邮件列表:
dev@iotdb.apache.org


Apache IoTDB 是首个由中国高校发起并孵化成功的 Apache 顶级项目。感谢社区所有贡献者和向我们反馈需求和问题的用户!

以上是关于漫谈工业大数据9:开源工业大数据软件简介(上)的主要内容,如果未能解决你的问题,请参考以下文章

传统软件公司如何向SaaS转型?| 脑洞大开,细数9大差别

开源工业物联网数据库 Apache IoTDB 毕业成为 Apache 顶级项目!

数字化转型 — 工业 4.0

西北工业大学软件学院大数据技术实验

大数据时代:工业互联网乘风破浪

工业数字化转型 — 工业 4.0