大数据常用技术

时间:2019-02-20
本文章向大家介绍大数据常用技术,主要包括大数据常用技术使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

数据采集传输主要技术

分为两类,一类是离线批处理、另一类是实时数据采集和传输

离线批处理最有名的是Sqoop、实时数据采集和传输最为常用的是Flume和Kafka

  1. Sqoop:一款开源的离线数据传输工具,主要用于Hadoop(Hive)与传统数据库(Mysql、Oracle)之间数据传递。
  2. Flume:实时日志采集平台,一个高可用、高可靠、分布式的海量日志采集、聚合和传输的系统。
  3. Kafka:通常来说Flume采集数据的速度与下游处理数据通常不同步,因此实时平台架构都会用一个消息中间件进行缓冲,这方面使用最广泛的无疑是Kafka,Kafka是一个分布式消息系统,以其可以水平扩展和高吞吐率而被广泛使用,是基于消息发布-订阅系统。和kafka类似的消息中间件产品还包括RabbitMQ、ActiveMQ、ZeroMQ等

数据处理主要技术

  1. MapReduce:运行与大规模集群上的复杂并行计算过程高度抽象为两个函数:map和reduce。
  2. Hive:是一个建立在Hadoop体系结构上的一层SQL抽象
  3. Spark:具有可伸缩、基于内存计算等特点,可以读写Hadoop上任何格式的数据。
  4. Strom:实时数据处理框架,拥有低延迟、分布式、可扩展、高容错等特征,可以保证消息不丢(diu)失。
  5. Flink:是一个同时面向分布式实时流处理和批量数据处理的开源计算平台,它能够基于同一个Flink运行时提供支持流处理和批处理两种类型应用的功能。
  6. Beam:在Flink基础上更进一步,不但希望统一批处理和流处理,而且希望统一大数据处理范式和标准。

数据储存主要技术

  1. HDFS:分布式文件系统。
  2. Hbase:构建在HDFS之上的分布式、面向列族的存储系统,在需要实时读写并随机访问超大规模数据集等场景下,Hbase目前是市场上主流的技术选择。

数据应用技术

  1. Drill:实时大数据分布式查询引擎,Drill兼容ANSI SQL语法作为接口,支撑对本地文件、HDFS、Hive、HBase、MongeDB作为存储数据查询,文件格式支持Parquet、CSV、TSV以及JSON这种无模式数据,所有这些数据都可以像使用传统数据库的表查询一样进行快速实时查询。
  2. R:数据分析语言
  3. TensorFlow:基于数据流图的处理框架,Tensorflow节点表示数据运算,边表示运算节点之间的数据交互。