大数据技术的分类,我们可以分为存储、计算、资源管理三大类。
最基本的存储技术是 HDFS。
HBase 作为 NoSQL 类非关系数据库的代表性产品,从分类上可以划分到存储类别,它的底层存储也用到了 HDFS。HBase 的主要用途是在某些场景下,代替 MySQL 之类的关系数据库的数据存储访问,利用自己可伸缩的特性,存储比 MySQL 多得多的数据量。比如滴滴的司机每隔几秒就会将当前的 GPS 数据上传,而滴滴上的司机数量号称有上千万,每天会产生数百亿的 GPS 数据,滴滴选择将这样海量的数据存储在 HBase 中,当订单行程结束的时候,会从 HBase 读取订单行程期间的 GPS 轨迹数据,计算路程和车费。
大数据计算框架用的最多的是Spark,但是我们一般是通过Spark SQL来对数据进行操作。
MapReduce、Spark、Hive、Spark SQL 这些技术主要用来解决离线大数据的计算,也就是针对历史数据进行计算分析,比如针对一天的历史数据计算,一天的数据是一批数据,所以也叫批处理计算。而 Storm、Spark Streaming、Flink 这类的大数据技术是针对实时的数据进行计算,比如摄像头实时采集的数据、实时的订单数据等,数据实时流动进来,所以也叫流处理大数据技术。
大数据资源管理通过Yarn进行,不管是批处理还是流处理,都可以通过 Yarn 进行资源分配,运行在一个集群中。
此文章为11月Day03学习笔记,内容来源于极客时间《从0开始学习大数据》,强烈推荐该课程