
大数据
文章平均质量分 81
大数据
大数据精读周刊
这个作者很懒,什么都没留下…
展开
-
003.精读《MapReduce: Simplified Data Processing on Large Clusters》
综上所述,MapReduce编程模型通过用户定义的map和reduce函数,将复杂的数据处理任务转化为直观的操作,并自动并行化处理,极大提高了计算效率,尤其在大规模集群环境中表现出色。其内置的容错机制确保了数据处理的可靠性,使得MapReduce在文本分析、数据挖掘和网页索引等多个领域得到广泛应用。更重要的是,MapReduce降低了大数据技术的使用门槛,推动了数据处理效率的提升,并促进了大数据生态系统的发展,催生了诸如Hadoop等关键技术框架,为大数据的发展做出了深远的贡献。原创 2024-09-01 18:33:24 · 1402 阅读 · 2 评论 -
002.精读《The Google File System》| 大数据的三驾马车之一:GFS
介绍了GFS(Google文件系统)的核心设计目标和关键特性。它强调了该系统如何有效处理大量分布式、容错和可扩展的数据存储需求,以支持Google的大规模数据处理应用程序。系统设计包括了容错性、性能优化和可扩展性等方面,适用于在数千台通用硬件设备上运行的大规模应用程序。目标:我们设计并实现了Google文件系统,这是一个可扩展的分布式文件系统,适用于大型分布式数据密集型应用。强调。原创 2024-08-25 20:00:36 · 951 阅读 · 0 评论 -
GFS系统架构
即使在这种情况下,数据也只是丢失而不是被错误地写入,应用程序可以接收到确定的异常信号,而不是错误的数据。任何对这些元数据的修改都会被详细记录在操作日志中,确保了数据变更的持久性和可审计性。,如数据块租约管理、孤立数据块的垃圾回收和数据块在服务器之间的迁移。不仅元数据的唯一持久记录,还充当了一个逻辑时钟,为系统内发生的事件提供了一个统一的时间戳序。,包括命名空间、访问控制信息、文件到数据块的映射以及数据块的当前存储位置。:如果客户端不仅能看到一致的状态,还知道修改后的具体内容,那么这个状态就被称为确定的。原创 2024-08-25 19:36:12 · 910 阅读 · 0 评论 -
数据倾斜优化:Hive性能提升的核心
数据倾斜,也称为Data Skew,是在分布式计算环境中,由于数据分布不均匀导致某些任务处理的数据量远大于其他任务,从而形成性能瓶颈的现象。这种情况在Hive中尤为常见,可能发生在MapReduce作业的Map或Reduce阶段。就好比像是在一个拥挤的超市里,所有的顾客都挤在一个收银台前排队结账,而其他的收银台却几乎没有人。这种情况在数据处理中也会发生,我们称之为“数据倾斜想象一下,你有一个巨大的数据集,需要分成很多小块来同时处理(这就像超市开了很多个收银台)。原创 2024-06-30 23:09:00 · 973 阅读 · 0 评论 -
大数据Hive中的UDF:自定义数据处理的利器(上)
在大数据技术栈中,扮演着数据仓库的关键角色,它提供了丰富的数据操作功能,并通过类似于SQL的HiveQL语言简化了对Hadoop数据的处理。然而,内置函数库虽强大,却未必能满足所有特定的业务逻辑需求。此时,用户定义函数(UDF)的重要性便凸显出来。Hive UDF)是Hive中的一种扩展机制,它允许用户通过编写自定义的Java代码来扩展Hive的功能,实现Hive内置函数无法提供的一些特定数据处理逻辑。在深入探讨Hive UDF的实现之前,让我们首先确保开发环境的准备妥当。对于UDF的编写,推荐使用。原创 2024-04-21 21:28:54 · 2857 阅读 · 1 评论 -
数据仓库核心:揭秘事实表与维度表的角色与区别
在本篇博文中,我们深入探讨了数据仓库中事实表和维度表的关键角色与它们之间的显著差异。事实表,作为数据仓库的心脏,承载着量化的业务度量,而维度表则为这些度量提供了必要的上下文和解释。这种精心设计的结构不仅使我们能够高效地存储和检索数据,而且还能更加灵活和深入地进行数据分析,为企业的决策提供强有力的支持。最终,理解事实表和维度表的真正价值在于它们如何共同作用,帮助我们从数据中提取出有意义的洞察,推动业务的持续增长和创新。原创 2024-03-17 21:46:37 · 5735 阅读 · 2 评论 -
Hive 时间相关函数汇总
【代码】Hive 时间相关函数汇总。原创 2022-09-30 16:21:24 · 802 阅读 · 9 评论 -
关于hive中Map join 时大表left join小表的问题
关于hive中Map join 时大表left join小表的问题在hive中,(启用Map join时) 大表left join小表,加载从右向左,所以小表会加载进内存,存储成map键值对,通过大表驱动小表,来进行join,即大表中的join字段作为key 来获取value进行join。在MySQL中,left join加载从左向右,即join左边的表会先加载进内存,与右边表进行join。mapjoin时要让小表进内存,大表进内存的话可能会因为过大的原因,导致mapjoin无法实现,从而转为redu原创 2022-06-03 13:35:19 · 3627 阅读 · 3 评论 -
MapReduce环形缓冲区底层实现
环形缓冲区底层实现首先明白改过程发生在Map——Collect阶段:在用户编写的map()函数中,当数据处理完成后,一般会调用OutputCollector.collect()输出结果。在该函数内部,它会将生成的key/value分片(通过调用Partitioner),并写入一个环形内存缓冲区中。MapOutputBuffer内部使用了一个缓冲区暂时存储用户输出数据,当缓冲区使用率达到一定阈值后,再将缓冲区中的数据写到磁盘上。数据缓冲区的设计方式直接影响到Map Task的写效率,而现有多种数据原创 2022-01-31 18:49:02 · 3404 阅读 · 0 评论 -
3分钟搞懂中台
文章目录什么是数据中台?背景作用定义中台类型有哪些?业务数据双中台技术中台研发中台移动中台管理中台组织中台企业为什么要建中台?需求变了匹配失衡鱼和熊掌成功的中台推荐阿里数据中台网易业务中台百度AI 中台……最后什么是数据中台?背景2015年全年产生的数据量等于历史上所有人类产生数据的总和,人类的数据增长正式从乘法型增长变成了指数型增长,海量数据处理成为了全人类的挑战。阿里提出了DT时代已经到来:DataTech替代ITTech,强调数据驱动的重要性。阿里走在了前面,阿里用几百人的团队支撑了几万亿原创 2022-01-19 13:50:01 · 4834 阅读 · 13 评论 -
十分钟看懂docker
文章目录一、docker是什么?wiki介绍组成部分二、为什么会出现docker?Docker与虚拟机的对比它的优点它的缺点三、实现原理是什么?docker 常用命令是什么?docker安装docker-compose安装国内镜像配置一、docker是什么?wiki介绍Docker 是一个开放源代码软件,是一个开放平台,用于开发应用、交付(shipping)应用、运行应用。 Docker允许用户将基础设施(Infrastructure)中的应用单独分割出来,形成更小的颗粒(容器),从而提高交付软.原创 2021-11-28 14:40:28 · 3694 阅读 · 29 评论 -
数据仓库设计规范(更新中)
文章目录设计规范逻辑架构技术架构分层设计主题划分分级管理命名规范层级任务表字段模型规范建模方法建模工具血缘关系维度退化元数据管理开发规范脚本注释字段别名脚本格式流程规范设计规范逻辑架构数据采集数据存储数据计算数据展现技术架构数据采集→Kafka→hdfs→Flink→HBase分层设计ods→dw→dws→sh→主题划分面向主题域管理为了提高指标管理的效率,你需要按照业务线,主题域,和业务过程三级目录方式来进行指标管理划分原子指标和派生指标原子指标+原子指标=派生指原创 2021-10-24 08:48:58 · 1488 阅读 · 24 评论 -
大数据平台架构浅析——以讯飞大数据平台Odeon为例
大数据平台架构解析——以讯飞大数据平台Odeon为例定义Odeon大数据平台以全图形化Web操作的形式为用户提供一站式的大数据能力:包括数据采集、任务编排、调度及处理、数据展现(BI)等;同时提供完善的权限管理、日志追踪、集群监控等能力功能数据通道:SQL、NoSql数据库及日志多源数据接入与导出数据管理:完善的元数据管理、数据质量标准管理体系,同时具备完整的数据隔离及授权机制数据分析:支持离线批处理、流式计算、OLAP、AdHoc等多种计算方式数据服务:基于Greenpl原创 2021-10-12 09:22:51 · 4918 阅读 · 19 评论 -
计算机网络经典面试题30问
文章目录1 简单介绍一下HTTP的长连接和短连接?2 简述计算机网络中的七层模型?3 常见的HTTP状态码有哪些?4 TCP的三次握手过程?为什么会采用三次握手,若采用二次握手可以吗?5 请简述一下TCP的三次握手和四次挥手协议?6 TCP和UDP相关的协议分别有哪些?7 TCP和UDP有什么区别?8 Post和Get有什么区别?9 在浏览器中输入www.baidu.com后执行的全部过程?先查IP地址tcp连接与http连接html渲染10 列举几种常见的协议,并简述他们的作用?11 cookie 和se原创 2021-10-11 10:05:31 · 3975 阅读 · 18 评论 -
大数据进阶之路——Spark SQL小结
文章目录手写 WordCountRDD、DAG、 Stage、 Task 、 JobSpark 作业提交流程Spark 的 Local 和 Standalone宽依赖、窄依赖Spark SQL比 Hive 快在哪打包的注意事项手写 WordCount使用flatMap、reduceByKey 来计算//sc是SparkContext对象,该对象是提交spark程序的入口sc.textFile("file:///home/hadoop/data/hello.txt") // 读取文件, .flat原创 2021-10-09 09:51:53 · 900 阅读 · 32 评论 -
大数据进阶之路——Spark SQL补充
在Spark中,支持4种运行模式:1)Local:开发时使用2)Standalone: 是Spark自带的,如果一个集群是Standalone的话,那么就需要在多台机器上同时部署Spark环境3)YARN:建议大家在生产上使用该模式,统一使用YARN进行整个集群作业(MR、Spark)的资源调度4)Mesos不管使用什么模式,Spark应用程序的代码是一模一样的,只需要在提交的时候通过–master参数来指定我们的运行模式即可ClientDriver运行在Client端(提交Spark作业原创 2021-10-08 21:33:13 · 847 阅读 · 2 评论 -
大数据进阶之路——Spark SQL日志分析
文章目录基本方案数据处理流程数据清洗二次清洗视频访问按照省份按照流量优化数据可视化echarts基本方案用户行为日志:用户每次访问网站时所有的行为数据(访问、浏览、搜索、点击…)用户行为轨迹、流量日志日志数据内容:1)访问的系统属性: 操作系统、浏览器等等2)访问特征:点击的url、从哪个url跳转过来的(referer)、页面上的停留时间等3)访问信息:session_id、访问ip(访问城市)等2013-05-19 13:00:00 http://www.taobao.com原创 2021-10-06 12:47:49 · 1731 阅读 · 16 评论 -
大数据进阶之路——Spark SQL 之 DataFrame&&Dataset
文章目录dataframe 和 rddAPI常用操作DataFrame和RDD案例DataSetDataFrame它不是Spark SQL提出的,而是早起在R、Pandas语言就已经有了的。A Dataset is a distributed collection of data:分布式的数据集A DataFrame is a Dataset organized into named columns.以列(列名、列的类型、列值)的形式构成的分布式数据集,按照列赋予不同的名称datafr原创 2021-10-04 08:22:47 · 932 阅读 · 20 评论 -
大数据进阶之路——Spark SQL基本配置
文章目录Spark安装编译失败环境搭建Standalone本地IDEHiveContextAPPSparkSessinonSpark ShellSpark Sqlthriftserver/beeline的使用jdbcMapReduce的局限性:1)代码繁琐;2)只能够支持map和reduce方法;3)执行效率低下;4)不适合迭代多次、交互式、流式的处理;框架多样化:1)批处理(离线):MapReduce、Hive、Pig2)流式处理(实时): Storm、JStorm3)交互式计算:Imp原创 2021-10-02 09:50:03 · 2459 阅读 · 18 评论 -
大数据进阶之路——Spark SQL环境搭建
文章目录大数据概述大数据组成HDFS概述环境搭建HDFS命令YARN架构详解YARN执行流程YARN环境搭建配置虚拟机大数据概述定义和特征海量的计算大量的用户全体数据分析数据管理4V特征1.Volume(大量) 截至目前,人类生产的所有印刷材料的数据量是200PB,而历史上全人类总共说过的话的数据量大约是5EB。当前,典型个人计算机硬盘的容量为TB量级,而一些大企业的数据量已经接近EB量级。2.Velocity(高速) 这是大数据区分于传统数据挖掘的最显著特征。根据原创 2021-09-30 14:29:40 · 2557 阅读 · 24 评论 -
Scala 必知必会
文章目录入门概述安装Java VS Scalaval 和 var基本数据类型lazy在Scala中的应用开发工具IDEAMaven函数方法定义默认参数命名参数可变参数条件语句循环语句面向对象概述类的定义和使用抽象类伴生类和伴生对象case和trait集合数组ListSetMapOptuon&Some&NoneTuple模式匹配基本类型List类型匹配异常处理高级函数字符串匿名函数Currying高阶函数入门概述https://www.scala-lang.org/Scala com原创 2021-09-27 09:47:01 · 1418 阅读 · 4 评论 -
大数据进阶之路——Scala 高级函数
文章目录高级函数字符串匿名函数Currying高阶函数高级函数字符串插值 val s ="hello" val name="jacksun" println(s+name) println(s+":"+name) println(s"hello:$name")多行字符串 //多行 var d = """ |1 |2 |3 |4 |5 |5 |6 """.str原创 2021-09-25 11:38:49 · 701 阅读 · 4 评论 -
大数据进阶之路——Scala 集合和模式匹配
文章目录集合数组ListSetMapOptuon&Some&NoneTuple模式匹配基本类型List类型匹配异常处理集合数组package org.exampleobject ArrayApp extends App{ //println("hello") val a = new Array[String](5) a(0)="hello" println(a(0)) val b = Array("hello","world") val c = Arr原创 2021-09-24 09:20:59 · 890 阅读 · 16 评论 -
数据库并集union、交集intersect、差集except
文章目录数据库的集合运算什么是集合运算并集—union补集—except交集—intersect集合运算的注意事项数据库的集合运算什么是集合运算即表之间的运算,如表的加减法并集(union),交集(intersect),补集(except)并集—union在前面插入数据的学习中,我们创建了一个表customer和staff表一样,后来又往里面添加了一个数据下面我们来用UNION连接这两个表:SELECT first_ name, last_ nameFROM customerUN原创 2021-09-23 15:20:44 · 12184 阅读 · 8 评论 -
大数据进阶之路——Scala 函数和对象
文章目录函数方法定义默认参数命名参数可变参数条件语句循环语句面向对象概述类的定义和使用抽象类伴生类和伴生对象case和trait函数方法定义 def 方法名(参数: 参数类型): 返回值类型 = { //方法体 //最后一行作为返回值(不需要使用return) } def max(x: Int, y: Int): Int = { if(x > y) x else y }package org.exampleobject App { de原创 2021-09-22 15:17:41 · 1304 阅读 · 15 评论 -
大数据进阶之路——Scala入门
文章目录概述安装Java VS Scalaval 和 var基本数据类型lazy在Scala中的应用开发工具IDEAMaven概述https://www.scala-lang.org/Scala combines object-oriented and functional programming in one concise, high-level language. Scala’s static types help avoid bugs in complex applications, and原创 2021-09-18 10:03:45 · 2695 阅读 · 21 评论 -
Hadoop基础-06-HDFS数据读写
源码见:https://github.com/hiszm/hadoop-trainHDFS写数据HDFS读数据元数据HDFS的目录结构以及每个文件的BLOCK信息(id,副本系数,存储的位置[ { hadoop/tmp/dir } ] /name/…)CheckpointSaveMode原创 2021-09-03 16:15:16 · 640 阅读 · 2 评论 -
Hadoop基础-05-HDFS项目(词频统计)
源码见:https://github.com/hiszm/hadoop-trainHDFS项目实战需求分析使用HDFS Java API 才完成HDFS文件系统上的额文件的词频统计例子/test/1.txt==> ’ hello world’/test/2.txt==> ’ hello world world’得出 hello 两个, world 三个代码框架编写1:读取HDFS上的文件2:词频统计3:将处理的结果混存起来 Map4:将结果输出到HDFS上原创 2021-09-03 16:14:19 · 1099 阅读 · 0 评论 -
Hadoop基础-04-HDFS API编程
源码见:https://github.com/hiszm/hadoop-trainHDFS API编程开发环境搭建porn.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://m原创 2021-09-03 16:13:42 · 1160 阅读 · 0 评论 -
Hadoop基础-03-HDFS(Hadoop Distributed File System)基本概念
源码见:https://github.com/hiszm/hadoop-trainHDFS概述(Hadoop Distributed File System)分布式的commodity、low-cost hardware:去中心化IoEfault-tolerant:高容错 , 默认采用3副本机制high throughput:移动计算比移动数据成本低large data sets:大规模的数据集 , 基本都是GB和TB级别HDFS架构详解NameNode(master) / Dat原创 2021-09-03 16:12:54 · 1115 阅读 · 2 评论 -
Hadoop基础-02-基本结构
源码见:https://github.com/hiszm/hadoop-trainHadoop概述http://hadoop.apache.org/The Apache™ Hadoop® project develops open-source software for reliable, scalable, distributed computing.The Apache Hadoop software library is a framework that allows for the di原创 2021-09-03 16:11:59 · 712 阅读 · 0 评论 -
Hadoop基础-01-基本概念
https://blog.youkuaiyun.com/jankin6/category_10362674.html源码见 https://github.com/hiszm/hadoop-train大数据概述导学学习内容Hadoop分布式文件系统HDFS分布式资源调度YARN分布式计算机框架MapReduce数据仓库HiveHadoop分布式集群搭建环境参数Linux:Centos7Hadoop:CDH5.15.1开发工具:IDEA案例有一天,一名美国男子闯入他家附近的一家T原创 2021-09-03 16:09:48 · 706 阅读 · 0 评论 -
Hadoop基础-07-MapReduce概述
源码见:https://github.com/hiszm/hadoop-trainMapReduce概述是一个分布式计算框架 ,用于编写批处理应用程序。编写好的程序可以提交到 Hadoop 集群上用于并行处理大规模的数据集。MapReduce 作业通过将输入的数据集拆分为独立的块,这些块由 map 以 并行 的方式处理,框架对 map 的输出进行排序,然后输入到 reduce 中源自于Google的MapReduce论文 ,论文发表于2004年12月Hadoop MapReduce是Googl原创 2020-10-13 21:01:55 · 711 阅读 · 0 评论 -
Hadoop基础-08-MapReduce词频统计
源码见:https://github.com/hiszm/hadoop-train定义Mapper实现WordCountMapper extends Mapper<LongWritable, Text, Text, IntWritable>public class Mapper<KEYIN, VALUEIN, KEYOUT, VALUEOUT> { ......}KEYIN : mapping 输入 key 的类型,即每行的偏移量offset(每行第一个字符在整原创 2020-10-13 21:00:51 · 911 阅读 · 0 评论 -
Hadoop基础-09-MapReduce流量统计
源码见:https://github.com/hiszm/hadoop-train需求分析access.log第二个字段:手机号倒数第三字段:上行流量倒数第二字段:下行流量需求:统计每个手机号上行流量和、下行流量和、总的流量和(上行流量和+下行流量和)Access.java手机号、上行流量、下行流量、总流量既然要求和:根据手机号进行分组,然后把该手机号对应的上下行流量加起来Mapper: 把手机号、上行流量、下行流量 拆开把手机号作为key,把Access作为va原创 2020-10-13 21:00:21 · 880 阅读 · 0 评论 -
Hadoop基础-10-YARN
源码见:https://github.com/hiszm/hadoop-trainYARN产生背景Apache YARN (Yet Another Resource Negotiator) 是 hadoop 2.0 引入的集群资源管理系统。用户可以将各种服务框架部署在 YARN 上,由 YARN 进行统一地管理和资源分配。The fundamental idea of MRv2 is to split up the two major functionalities of the JobTra原创 2020-10-13 20:59:42 · 822 阅读 · 0 评论 -
Hadoop基础-11-用户行为日志分析
源码见:https://github.com/hiszm/hadoop-train用户行为日志概述用户每次搜索和点击的记录历史行为数据,从历史订单==> 然后进行推荐/ 从而 提高用户的转化量 (最终目的)日志内容20979872853^Ahttp://www.yihaodian.com/1/?type=3&tracker_u=10974049258^A^A^A3^ABAWG49VCYYTMZ6VU9XX74KPV5CCHPAQ2A4A5^A^A^A^A^APPG68XWJN原创 2020-10-08 10:54:52 · 1467 阅读 · 4 评论 -
Hadoop基础-12-Hive
源码见:https://github.com/hiszm/hadoop-train更好的阅读体验: https://www.cnblogs.com/hiszm/p/13616589.htmlHive概述http://hive.apache.org/Hive是什么The Apache Hive ™ data warehouse software facilitates reading, writing, and managing large datasets residing in distr原创 2020-10-08 10:52:34 · 1508 阅读 · 2 评论 -
Hadoop基础-13-Hive实战
源码见:https://github.com/hiszm/hadoop-train更好的阅读体验: https://www.cnblogs.com/hiszm/p/13640002.html外部表在Hive中的使用带有EXTERNAL关键字的就是外部表不然一般都是内部表(managed_table) CREATE EXTERNAL TABLE emp_external( empno INT, ename STRING, job STRING, mgr INT,原创 2020-10-08 10:51:25 · 843 阅读 · 0 评论 -
Hadoop基础-14-集群环境搭建
源码见:https://github.com/hiszm/hadoop-trainHadoop集群规划HDFS: NN(NameNode) DN(DataNode)YARN: RM(ResourceManager) NM(NodeManager)hadoop000 192.168.43.200HDFS: NN(NameNode) DN(DataNode)YARN: RM(ResourceManager) NM(NodeManager)hadoop001 192.168.43.201原创 2020-10-08 10:50:04 · 739 阅读 · 0 评论