大数据相关软件streamDM、Apache Beam、YourHDFS、Ciao-Go介绍

以下为你介绍的大数据相关软件都可用在Linux系统上:streamDM(用于 Spark Streaming 的数据挖掘)、Apache Beam(大数据批处理和流处理标准)、YourHDFS(封装了 Hadoop Client 的 API)、Ciao-Go(云集成化先进编排工具)。

1、streamDM(用于 Spark Streaming 的数据挖掘)

streamDM,是由华为诺亚方舟实验室开源的使用 Spark Streaming 挖掘大数据的开源软件。

大数据流学习:

大数据流学习(Big Data stream learning)比批量或离线学习更富有挑战性,因为数据在流动的过程中不太可能保持同一种分布。而且,数据流中的每一个样本只能被处理一次,否则它们就需要占用内存进行总结,同时该学习算法也必须非常高效。

Spark Streaming:

Spark Streaming 是核心 Spark API 的一个扩展,它能让多个源的数据流处理成为可能。Spark 是一个可扩展可编程的框架,用于大规模分布式数据集(也称为弹性分布式数据集(RDD))处理。Spark Streaming 接收输入的数据流后将数据分批,再由 Spark 引擎处理,生成结果。

Spark Streaming 数据被编成一个 DStreams 序列,内在地表示成一个 RDD 序列。

包含以下方法:

在第一次开放的 StreamDM 中,我们部署了:

SGD Learner and Perceptron

Naive Bayes

CluStream

Hoeffding Decision Trees

Bagging

Stream KM++

我们部署了以下数据生成器:

HyperplaneGenerator

RandomTreeGenerator

RandomRBFGenerator

RandomRBFEventsGenerator

我们部署了 SampleDataWriter:

它可以调取数据生成器创建样本数据用于模拟和测试。后面我们将计划开放:

分类:随机森林

回归:Hoeffding 回归树,Bagging,随机森林

聚类:Clustree,DenStream

Frequent Itemset Miner:IncMine,IncSecMine

环境:

Spark 2.3.2

Scala 2.11

SBT 0.13

Java 8+

下一步:

为了快速介绍一下 StreamDM 的运行,请打开 Getting Started 文件。StreamDM Programming Guide 展示了 StreamDM 的细节。

下载地址:https://github.com/huawei-noah/streamDM

2、Apache Beam(大数据批处理和流处理标准)

大数据相关软件streamDM、Apache Beam、YourHDFS、Ciao-Go介绍

Apache Beam 是 Apache 软件基金会越来越多的数据流项目中最新增添的成员,是 Google 在2016年2月份贡献给 Apache 基金会的孵化项目。

这个项目的名称表明了设计:结合了批处理(Batch)模式和数据流(Stream)处理模式。它基于一种统一模式,用于定义和执行数据并行处理管道(pipeline),这些管理随带一套针对特定语言的SDK用于构建管道,以及针对特定运行时环境的Runner用于执行管道。

Apache Beam 的主要目标是统一批处理和流处理的编程范式,为无限,乱序,web-scale的数据集处理提供简单灵活,功能丰富以及表达能力十分强大的SDK。Apache Beam项目重点在于数据处理的编程范式和接口定义,并不涉及具体执行引擎的实现,Apache Beam希望基于Beam开发的数据处理程序可以执行在任意的分布式计算引擎上。

入门:

如果您想从源代码发行版中构建和安装整个项目,则可能需要在系统中安装一些其他工具。在基于Debian的发行版中:

sudo apt-get install \

 openjdk-8-jdk \

 python-setuptools \

 python-pip \

 virtualenv

然后,请使用标准的./gradlew构建命令。

下载地址:https://github.com/apache/beam

3、YourHDFS(封装了 Hadoop Client 的 API)

一个封装了Hadoop Client的简单、方便的API,已经在生产环境中经受日千万级别次IO操作的检验。

支持以下功能:

1)、自定义HDFS目录前缀。

2)、支持时间目录格式。

3)、支持按文件固定大小切分。

4)、支持一段时间内无IO操作文件自动关闭。

5)、支持中文。

6)、支持namenode自动探测实现failover。

7)、API本身是线程安全的。

8)、API的参数发生变化对用户使用是透明的,框架内部透明处理, [线程,参数]组合对应着一个文件。

HDFS的原理图:

大数据相关软件streamDM、Apache Beam、YourHDFS、Ciao-Go介绍

大数据相关软件streamDM、Apache Beam、YourHDFS、Ciao-Go介绍

大数据相关软件streamDM、Apache Beam、YourHDFS、Ciao-Go介绍

下载地址:https://gitee.com/fysoft2006/YourHDFS

4、Ciao-Go(云集成化先进编排工具)

Ciao取“Cloud Integrated Advanced Orchestrator”首字母命名,是一款云集成化先进编排工具。通过这套新方案,企业客户能够将各类元素汇聚至单一模式当中——包括云分析(例如Hadoop或者Apache Spark)。Ciao中的全部通信皆使用简单与安全节点传输协议(简称SSNTP),同时利用TLS以保护不同组件间的连接安全。

Ciao项目本身拥有一套极为简洁的架构,其中包含的三大核心组成部分包括:

控制器– 负责执行租户工作负载策略;

调度器 – 由控制器管理以实现一套push/pull调度算法。控制器向调度器发送一项实例,而调度器则在各对应集群计算节点当中找到“最合适”的节点;

启动器 – 负责对工作负载的启动细节进行抽象,无论其属于容器、虚拟机或者裸机; 同时向调度器提供各节点状态,并向调度器与控制器提供各实例状态。

另外,Ciao项目还包含一系列网络组件,可为各租户创建一套独立的二级网络; 外加一套命令行界面与一套Web界面。

下载地址:https://github.com/ciao-project/ciao

注明

以上就是大数据相关软件streamDM、Apache Beam、YourHDFS、Ciao-Go的介绍内容,这些大数据相关软件都能使用在Linux操作系统中。

栏目相关文章