Hadoop大数据分析应用场景

article/2025/9/25 9:22:39

J

 

  为了满足日益增长的业务变化,京东的京麦团队在京东大数据平台的基础上,采用了hadoop等热门的开源大数据计算引擎,打造了一款为京东运营和产品提供决策性的数据类产品-北斗平台。

  一、Hadoop的应用业务分析

  大数据是不能用传统的计算技术处理的大型数据集的集合。它不是一个单一的技术或工具,而是涉及的业务和技术的许多领域。

  目前主流的三大分布式计算系统分别为:Hadoop、Spark和Strom:

  Hadoop当前大数据管理标准之一,运用在当前很多商业应用系统。可以轻松地集成结构化、半结构化甚至非结构化数据集。

  Spark采用了内存计算。从多迭代批处理出发,允许将数据载入内存作反复查询,此外还融合数据仓库,流处理和图形计算等多种计算范式。Spark构建在HDFS上,能与Hadoop很好的结合。它的RDD是一个很大的特点。

  Storm用于处理高速、大型数据流的分布式实时计算系统。为Hadoop添加了可靠的实时数据处理功能

  Hadoop是使用Java编写,允许分布在集群,使用简单的编程模型的计算机大型数据集处理的Apache的开源框架。 Hadoop框架应用工程提供跨计算机集群的分布式存储和计算的环境。 Hadoop是专为从单一服务器到上千台机器扩展,每个机器都可以提供本地计算和存储。

  Hadoop适用于海量数据、离线数据和负责数据,应用场景如下:

  场景1:数据分析,如京东海量日志分析,京东商品推荐,京东用户行为分析

  场景2:离线计算,(异构计算+分布式计算)天文计算

  场景3:海量数据存储,如京东的存储集群

  基于京麦业务三个实用场景

  京麦用户分析

  京麦流量分析

  京麦订单分析

  都属于离线数据,决定采用Hadoop作为京麦数据类产品的数据计算引擎,后续会根据业务的发展,会增加Storm等流式计算的计算引擎,下图是京麦的北斗系统架构图:

  

 

  (图一)京东北斗系统

  二、浅谈Hadoop的基本原理

  Hadoop分布式处理框架核心设计

  HDFS :(Hadoop Distributed File System)分布式文件系统

  MapReduce: 是一种计算模型及软件架构

  2.1 HDFS

  HDFS(Hadoop File System),是Hadoop的分布式文件存储系统。

  将大文件分解为多个Block,每个Block保存多个副本。提供容错机制,副本丢失或者宕机时自动恢复。默认每个Block保存3个副本,64M为1个Block。将Block按照key-value映射到内存当中。

  

 

  (图二)数据写入HDFS

  

 

  (图三)HDFS读取数据

  2.2 MapReduce

  MapReduce是一个编程模型,封装了并行计算、容错、数据分布、负载均衡等细节问题。MapReduce实现最开始是映射map,将操作映射到集合中的每个文档,然后按照产生的键进行分组,并将产生的键值组成列表放到对应的键中。化简(reduce)则是把列表中的值化简成一个单值,这个值被返回,然后再次进行键分组,直到每个键的列表只有一个值为止。这样做的好处是可以在任务被分解后,可以通过大量机器进行并行计算,减少整个操作的时间。但如果你要我再通俗点介绍,那么,说白了,Mapreduce的原理就是一个分治算法。

  算法:

  MapReduce计划分三个阶段执行,即映射阶段,shuffle阶段,并减少阶段。

  映射阶段:映射或映射器的工作是处理输入数据。一般输入数据是在文件或目录的形式,并且被存储在Hadoop的文件系统(HDFS)。输入文件被传递到由线映射器功能线路。映射器处理该数据,并创建数据的若干小块。

  减少阶段:这个阶段是:Shuffle阶段和Reduce阶段的组合。减速器的工作是处理该来自映射器中的数据。处理之后,它产生一组新的输出,这将被存储在HDFS。

  

 

  2.3 HIVE

  hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行运行,这套SQL 简称HQL。使不熟悉mapreduce 的用户很方便的利用SQL 语言查询,汇总,分析数据。而mapreduce开发人员可以把己写的mapper 和reducer 作为插件来支持Hive 做更复杂的数据分析。

  

 

  (图五)HIVE体系架构图

  由上图可知,hadoop和mapreduce是hive架构的根基。Hive架构包括如下组件:CLI(command line interface)、JDBC/ODBC、Thrift Server、WEB GUI、metastore和Driver(Complier、Optimizer和Executor)。

  三、Hadoop走过来的那些坑

  进行HIVE操作的时候,HQL写的不当,容易造成数据倾斜,大致分为这么几类:空值数据倾斜、不同数据类型关联产生数据倾斜和Join的数据偏斜。只有理解了Hadoop的原理,熟练使用HQL,就会避免数据倾斜,提高查询效率。


http://chatgpt.dhexx.cn/article/UEnaF5co.shtml

相关文章

Hadoop:MapReduce应用

文章目录 一、Join多种应用1.1 Reduce Join1.2 Map Join 二、计数器应用三、数据清洗(ETL)四、MapReduce开发总结 一、Join多种应用 1.1 Reduce Join Reduce Join工作原理: Map端的主要工作:为来自不同表(文件)的key/value对打…

大数据分析项目实例:Hadoop数据分析应用场景

对于海量数据价值的挖掘,需要通过大数据分析来实现,而这些数据由于具有不同于传统数据的新特征,传统的数据分析技术和工具都不能高效的进行处理,因而才有了基于大数据技术平台进行大数据分析的需求。今天,我们以Hadoop…

Hadoop常见场景

本篇文章主要列举一些Hadoop常用场景 ​ 主要是以下几种 ​ 高可用集群 ​ 节点新增/减少/拉黑 ​ HDFS数据迁移 ​ 大量小文件存储 ​ 高可用集群 ​ 一句话概括 双namenode消除单点故障 ​ 过程: ​ 对active Namenode进行的任何操作,都会同…

Hadoop的优势及大数据平台系统架构典型行业应用场景

扩容能力强:Hadoop可以部署在数百台并行运行的廉价服务器集群,能提供成百上千TB的数据节点上运行的高度可扩展的存储与计算平台。 成本低:Hadoop可以通过普通廉价的服务器集群分布式处理数据,从而降低成本。 高效率:…

大数据利器:Hadoop的十大应用场景[转]

【IT168 评论】谁在用Hadoop?这是个问题。在大数据背景下,Apache Hadoop已经逐渐成为一种标签性,业界对于这一开源分布式技术的了解也在不断加深。但谁才是Hadoop的最大用户呢?首先想到的当然是它的“发源地”,像Google这样的大型互联网搜索…

金三银四、金九银十 面试宝典 Spring、MyBatis、SpringMVC面试题 超级无敌全的面试题汇总(超万字的面试题,让你的SSM框架无可挑剔)

Spring、MyBatis、SpringMVC 框架 - 面试宝典 又到了 金三银四、金九银十 的时候了,是时候收藏一波面试题了,面试题可以不学,但不能没有!🥁🥁🥁 一个合格的 计算机打工人 ,收藏夹里…

Spring 常见面试题

目录 Spring 基础 1、什么是 Spring 框架? 2、Spring 包含的模块有哪些? 3、Spring,Spring MVC,Spring Boot 之间什么关系? Spring IoC 4、谈谈自己对于 Spring IoC 的了解 5、什么是 Spring Bean? 6、将一个类声明为 Bean 的注解有哪些? 7、…

Spring框架常见面试题

1. 你对Spring框架的理解(特点)? Spring框架有哪些模块 ? Spring,一种用来简化企业应用级开发的一种开源框架。简化开发:它对常用的API做了封装,比如对JDBC的封装,使用Spring JDBC访问数据库,就…

【面试】Spring面试题

文章目录 Spring概述什么是spring?Spring的俩大核心概念Spring框架的设计目标,设计理念,和核心是什么Spring的优缺点是什么?Spring有哪些应用场景Spring由哪些模块组成?Spring 框架中都用到了哪些设计模式?详细讲解一…

Spring框架面试精华知识

咳咳,这里整理一些关于WEB框架的一些知识点,来帮助更多的人进行面试,主要的还是讲解一些关于目前企业用得比较流行的框架,还有就是一些比较前沿的框架,比如阿里开源的Dubbo框架及其开源框架Zookeeper等等,都…

Spring框架-面试题核心概念

目录 1.Spring框架的作用是什么? 2. 什么是DI? 3.什么是AOP? 4.Spring常用注解 5.Spring中的设计模式 6.Spring支持的几种bean的作用域 7.Spring中Bean的生命周期? 8.Spring中的事务管理 9.Spring中的依赖注入方式有几种 10.Sprin…

MyBatis+Spring+SpringMVC框架面试题整理(一)

目录 SpringMVC 的工作原理 谈谈你对SpringMVC的理解 SpringMVC 常用注解都有哪些? Spring 的常用注解 如何开启注解处理器和适配器? 如何解决 get 和 post 乱码问题? 谈谈你对 Spring 的理解 Spring 中的设计模式(解释) 简单介绍一下 Spring bean 的生命周期&…

面试官:看你简历上写熟悉Spring框架,谈谈对Spring的理解

今天只谈一下我们在面试中的如果面试官问到Spring,你应该怎么去回答,来获取面试官的青睐。在我的印象中,Spring框架可以说是Java世界里面最为成功的框架了,在企业的实际的应用里面,大部分的企业架构都是基于Spring框架…

说实话,面试这么问Spring框架的问题,我快扛不住了

面试官:Spring Framework有用过吧? 小小白:用过(有些心虚,因为Spring框架中内容太多了)。 面试官:在applicationgContext.xml文件中定义了一个bean,id为authService,通过ApplicationContext实例对象的getB…

【java面试】框架篇之Spring

1.你如何理解Spring? 具体来说Spring是一个轻量级的容器,用于管理业务相关对象的。核心功能主要为:IOC,AOP,MVC。 IOD:控制反转,将对象的创建过程交给容器,让容器管理对象的生命周期如创建,初始化&#…

spring框架-如何面试(四)

回顾: spring框架-认识spring框架(一) spring框架-认识IOC(二) spring框架-认识AOP(三) 面试官关于spring最喜欢、也是概率最大的提问 谈谈你对spring的理解 spring的官方定义:…

Spring框架面试题总结(面试必备)

1. spring 概述部分 1.1 什么是spring? 1.2 spring框架的核心? 1.3 spring框架的优缺点 1.4 spring5 的主要模块构成 1.5 Spring 框架中都用到了哪些设计模式? 1.6 讲解一下核心容器(spring context应用上下文) 模块 2. spring的控制反转&#xff08…

cmos管宽长比,OC, OD门和线与逻辑,传输门,竞争冒险,三态门

https://blog.csdn.net/vivid117/article/details/100187137 pmos,nmos宽长比https://blog.csdn.net/qq_34070723/article/details/89291200 cmos宽长比: 1.CMOS的宽长比 关于COMS原理及结构图可以参考[1]COMS原理及门电路设计. 栅在源漏方向的长度称作栅的长L&…

OD门OC门

什么是集电极开路(OC)? % {0 V: X2 {1 I2 s E( y; n! S 我们先来说说集电极开路输出的结构。集电极开路输出的结构如图1所示,右边的那个三极管集电极什么都不接,所以叫做集电极开路(左边的三极管为反相之用…

最强深入浅出上拉、OC门、OD门 —— 电子电路基础2

写在前面:对于本科阶段数电课程课时比较少的学校,这一块老师很可能就跳过了,对于这一块的知识来源,清华大学阎石的数电课本在第三章CMOS门电路和TTL门电路。 先看一些电路; (1)为什么有些时候单…