这几年在IT届的“大数据”、“人工智能”、“云计算”可谓是最火的几个词,2018年由比特币的底层技术而被提及的“区块链”也火了一把。这些词都包含了两个层面的含义,一个是在应用层面,一个是在技术层面。本文将从这两个层面来说一下“大数据”。
首先我们从应用层面来看一下大数据,应用层面指的是大数据所体现的价值。
现在很多电商平台都有猜你喜欢或者主动给你推荐你喜欢的商品,其内部就是使用用户的大量购买数据和浏览数据分析出来用户的喜好,根据喜好向你推荐相应的商品,从而提升销售量。这里就体现了大数据的一个应用--推荐系统。
有时我们出行的时候都会使用手机上的地图APP,在地图上它可以帮我们做出多条路线的选择,我们可以看到哪些路段比较拥堵,哪些路段比较畅通,可以从中选择我们想走的路线,它的内部也是使用的大量的GPS定位数据。这里体现了大数据帮助我们做决策的作用。
Google曾经利用人们的搜索记录挖掘数据,二次利用价值,预测到了某地流感爆发的趋势。Farecast利用过去十年所有的航线机票价格打折数据,来预测用户购买机票的时机是否合适。这也是大数据预测未来的作用。
有人把大数据比喻为蕴藏能量的煤矿。煤炭按照性质有焦煤、无烟煤、肥煤、贫煤等分类,而露天煤矿、深山煤矿的挖掘成本又不一样。与此类似,大数据并不在“大”,而在于“有用”。价值含量、挖掘成本比数量更为重要。
我们再来看一下大数据相关的技术。首先我们先要看一下大数据的特点。
大数据具有4V特点:Volume(大量)、Variety(多样)、Velocity(高速)、 Value(价值)。大量体现存储和计算的数据量大,一般指TB级的数据。多样指的是数据的来源和结构是多样的。数据的来源比如有移动端、传感器、摄像头,数据的结构有结构化数据、半结构化数据、非结构化数据。高速体现在对数据的采集速度和处理速度。价值体现的是大数据的价值密度低。
我们也可以简单的把大数据看成是一个海量的数据集合。正因为大数据具有这些特点,所以我们使用传统的技术是不足以来处理的。那么处理大数据的技术有哪些呢?
这里列举几个比较典型的大数据处理技术。
Hadoop:它包括分布式存储HDFS、分布式计算MapReduce和作业调度系统Yarn。
Hive:数据仓库工具。
Hbase:分布式列式存储NoSql数据库。
Zookeeper:一个用于分布式协调管理的框架。
Flume:数据采集工具。
Kafka:分布式消息队列系统。
Spark:通用的大数据处理引擎,基于内存计算。
领取专属 10元无门槛券
私享最新 技术干货