加入收藏 | 设为首页 | 会员中心 | 我要投稿 济南站长网 (https://www.0531zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > 网站设计 > 教程 > 正文

大数据平台常见开源工具

发布时间:2019-04-11 22:26:48 所属栏目:教程 来源:print小路虎
导读:副标题#e# 大数据平台是对海量结构化、非结构化、半机构化数据进行采集、存储、计算、统计、分析处理的一系列技术平台。大数据平台处理的数据量通常是TB级,甚至是PB或EB级的数据,这是传统数据仓库工具无法处理完成的,其涉及的技术有分布式计算、高并发处
副标题[/!--empirenews.page--]

大数据平台是对海量结构化、非结构化、半机构化数据进行采集、存储、计算、统计、分析处理的一系列技术平台。大数据平台处理的数据量通常是TB级,甚至是PB或EB级的数据,这是传统数据仓库工具无法处理完成的,其涉及的技术有分布式计算、高并发处理、高可用处理、集群、实时性计算等,汇集了当前IT领域热门流行的各类技术。

此片文章整理出了大数据平台常见的一些开源工具,并且依据其主要功能进行分类,以便大数据学习者及应用者快速查找和参考。

大数据平台常见的一些工具汇集

【智云数据】大数据平台常见开源工具

主要包含:语言工具类、数据采集工具、ETL工具、数据存储工具、分析计算、查询应用及运维监控工具等。以下对各工具作为简要的说明。

一、语言工具类

1、Java编程技术

Java编程技术是目前使用最为广泛的网络编程语言之一,是大数据学习的基础。Java具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点,拥有极高的跨平台能力,是一种强类型语言,可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等,是大数据工程师最喜欢的编程工具,最重要的是,Hadoop以及其他大数据处理技术很多都是用Java,因此,想学好大数据,掌握Java基础是必不可少的。

2、Linux命令

对于大数据开发通常是在Linux环境下进行的,相比Linux操作系统,Windows操作系统是封闭的操作系统,开源的大数据软件很受限制,因此,想从事大数据开发相关工作,还需掌握Linux基础操作命令。

3、Scala

Scala是一门多范式的编程语言,一方面吸收继承了多种语言中的优秀特性,一方面又没有抛弃 Java 这个强大的平台,大数据开发重要框架Spark是采用Scala语言设计的,想要学好Spark框架,拥有Scala基础是必不可少的,因此,大数据开发需掌握Scala编程基础知识!

4、Python与数据分析

Python是面向对象的编程语言,拥有丰富的库,使用简单,应用广泛,在大数据领域也有所应用,主要可用于数据采集、数据分析以及数据可视化等,因此,大数据开发需学习一定的Python知识。

二、数据采集类工具

  • 1)Nutch是一个开源Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具,包括全文搜索和Web爬虫。
  • 2)Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,可以应用在数据挖掘,信息处理或存储历史数据等一系列的程序中。大数据的采集需要掌握Nutch与Scrapy爬虫技术。

三、ETL工具

1、Sqoop

Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库,学习使用Sqoop对关系型数据库数据和Hadoop之间的导入有很大的帮助。

2、Kettle

Kettle是一个ETL工具集,它允许你管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。作为Pentaho的一个重要组成部分,现在在国内项目应用上逐渐增多。其数据抽取高效稳定。

四数据存储类工具

1、Hadoop分布式存储与计算

Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,MapReduce则为海量的数据提供了计算,因此,需要重点掌握,除此之外,还需要掌握Hadoop集群、Hadoop集群管理、YARN以及Hadoop高级管理等相关技术与操作!

2、Hive

Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行。相对于用Java代码编写MapReduce来说,Hive的优势明显:快速开发,人员成本低,可扩展性(自由扩展集群规模),延展性(支持自定义函数)。十分适合数据仓库的统计分析。对于Hive需掌握其安装、应用及高级操作等。

3、ZooKeeper

ZooKeeper 是一个开源的分布式协调服务,是Hadoop和HBase的重要组件,是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组件服务等,在大数据开发中要掌握ZooKeeper的常用命令及功能的实现方法。

4、HBase

HBase是一个分布式的、面向列的开源数据库,它不同于一般的关系数据库,更适合于非结构化数据存储的数据库,,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,大数据开发需掌握HBase基础知识、应用、架构以及高级用法等。

5、Redis

Redis是一个Key-Value存储系统,其出现很大程度补偿了Memcached这类Key/Value存储的不足,在部分场合可以对关系数据库起到很好的补充作用,它提供了Java,C/C++,C#,PHP,JavaScript,Perl,Object-C,Python,Ruby,Erlang等客户端,使用很方便,大数据开发需掌握Redis的安装、配置及相关使用方法。

6、Kafka

Kafka是一种高吞吐量的分布式发布订阅消息系统,其在大数据开发应用上的目的是通过Hadoop的并行加载机制来统一线上和离线的消息处理,也是为了通过集群来提供实时的消息。大数据开发需掌握Kafka架构原理及各组件的作用和使用方法及相关功能的实现。

7、Neo4j

Neo4j是一个高性能的,NoSQL图形数据库,具有处理百万和T级节点和边的大尺度处理网络分析能力。它是一个嵌入式的、基于磁盘的、具备完全的事务特性的Java持久化引擎,但是它将结构化数据存储在网络(从数学角度叫做图)上而不是表中。Neo4j因其嵌入式、高性能、轻量级等优势,越来越受到关注。

8、Cassandra

Cassandra是一个混合型的非关系的数据库,类似于Google的BigTable,其主要功能比Dynamo(分布式的Key-Value存储系统)更丰富。这种NoSQL数据库最初由Facebook开发,现已被1500多家企业组织使用,包括苹果、欧洲原子核研究组织(CERN)、康卡斯特、电子港湾、GitHub、GoDaddy、Hulu、Instagram、Intuit、Netflix、Reddit等。是一种流行的分布式结构化数据存储方案。

9、SSM

SSM框架是由Spring、Spring MVC、MyBatis三个开源框架整合而成,常作为数据源较简单的Web项目的框架。大数据开发需分别掌握Spring、Spring MVC、MyBatis三种框架的同时,再使用SSM进行整合操作。

五、分析计算类工具

1、Spark

(编辑:济南站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读