自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(191)
  • 资源 (4)
  • 收藏
  • 关注

原创 Hadoop-job作业执行流程+MapReduce实现手机流量统计

1.分析题目要求知道,对于一个用户手机流量文件进行统计,我们想要得到的结果肯定是<key:手机号,value:[上传量 下载量]>

2020-12-07 00:00:09 823

原创 Hadoop-第一个MapReduce程序(WordCount)开发

1.准备数据文件aa.log(注意空格)wenxin xaiowen wangwuxiaowen xiaoxin wenxinxiaowen zhangshan lisi2. 启动Hadoop集群3. 将数据文件上传到HDFS文件系统中[root@Cluster00 ~]# hdfs dfs -mkdir /wordcount[root@Cluster00 ~]# hdfs dfs -put aa.lpg /wordcount3.开发MapReduce引入相关依赖 <

2020-11-29 17:10:07 193

原创 Hadoop-job作业体系结构与每个阶段分析

1. job作业的体系结构A. 一组MapReduce代表一个job作业,代表一次计算B. job作业的来源一定是HDFS,最终结果保存到HDFS中C. 在整个阶段中,Map和Reduce需要程序员手工编码2. 各个阶段分析(WordCount-单词计数)...

2020-11-29 15:54:27 245

原创 Hadoop-MapReduce+Yarn核心原理

1. MapReduce核心:Hadoop体系下一个编程模型(计算框架),主要是用来操作HDFS中存储数据并对HDFS中数据进行计算2. Map+ReduceMap:用来对局部数据进行运算 局部运算Reduce:对局部运算的结果做汇总运算 汇总运算3. Yarn(统一资源调度器,任务资源管理器)a. 整合hadoop集群中资源(CPU,内存)进行统一调度。 比如:12核,1234G;监控map和reduce的执行情况b. Yarn=Resoucer

2020-11-05 12:34:12 149

原创 Hadoop-HA的HDFS集群原理分析

简单HDFS集群中存在的问题?如何解决NameNode 单节点问题 单节点自动故障转移如何解决NameNode单节点问题?a. 找一个额外的NameNode备份原有数据b. 如何解决集群中脑裂(一个集群中多个管理者数据不一致这种情况叫做脑裂)如何解决启动多个NameNode时保证统一时刻只有一个NameNode工作,避免脑裂问题?QJM 使用zookeeper完成高可用zookeeper作为一个监控者,NameNode相互切换的工作,如果活跃节点active宕机,自动切换sta.

2020-11-05 01:00:08 140

原创 Hadoop-windows10安装部署Hadoop2.7.3

1.到官网下载hadoo安装到windows本地地址 https://archive.apache.org/dist/hadoop/core/hadoop-2.7.3/hadoop-2.7.3.tar.gz2. 解压3. 进行设置环境变量1)新建 HADOOP_HOME D:\Hadoop\hadoop-2.7.3\hadoop-2.7.32) Path中增加 %HADOOP_HOME%\bin 和 %HADOOP_HOME%\sbin3)并且把hadoop.dll和win

2020-11-04 22:31:22 762

原创 Hadoop-HDFS的简单架构原理

1. Hadoop引言Hadoop是Apache软件基金会旗下的一个开源分布式计算平台。以Hadoop分布式文件系统(HDFS,Hadoop Distributed Filesystem)和MapReduce(Google MapReduce的开源实现)为核心的Hadoop为用户提供了系统底层细节透明的分布式基础架构。对于Hadoop的集群来讲,可以分成两大类角色:Master和Slave。一个HDFS集群是由一个NameNode和若干个DataNode组成的。其中NameNode作为主服务器,管理文件

2020-11-03 20:44:59 250 1

原创 Hadoop-大数据引言

1. 什么是大数据?对大量的数据集文件处理的过程,称之为大数据(TB级以上)大量数据集:b—k---M—G---T—PB—EB—ZB 换算单位:10242. 为什么是大数据?通过对海量数据进行统计分析,从而在这些分析和统计过程中找出内在规律,从而伪国家和企业创造价值3. 大数据特点?4v特征1.Volume(大量) 数据集非常大 TB级以上||如果数据增长在每天/GB级2.Variety(多样) 数据格式多样 非格式化:音频,视频 半结构:json,mongdb3.Velocity(快

2020-11-02 22:33:15 601

原创 Doris Doris分区表-动态分区

动态分区是在 Doris 0.12 版本中引入的新功能。旨在对表级别的分区实现生命周期管理(TTL),减少用户的使用负担。目前实现了动态添加分区及动态删除分区的功能。动态分区只支持 Range 分区。

2024-04-16 14:59:46 204

原创 Hbase Spark将Hive数据写入Hbase/Lindorm

【代码】Hbase Spark将Hive数据写入Hbase/Lindorm。

2024-04-09 16:35:56 79 1

原创 Hbase Hbase常用命令

【代码】Hbase Hbase常用命令。

2024-04-09 16:29:27 71

原创 大数据面试

对内部表的修改会将修改直接同步给元数据,而对外部表的表结构和分区进行修改,则需要修复(MSCK REPAIR TABLE table_name)。早期也是没有内部表和外部表的说法的,在传统的RDMS数据数据库领域中,如果想要对一个数据库表进行例如增删改查等操作,就需要在数据库引擎中规范建立对应的数据库表,并且把数据导入其中才可以操作。但是随着行业、大数据组件的不断发展,这种传统的玩法已经不能满足使用了,因此就提出了能不能通过外部表的形式与外界任何形式的数据建立连接。

2024-03-13 14:10:26 511

原创 Linux-screen

Screen 是在多个进程间多路复用一个物理终端的全屏窗口管理器,Screen 也叫会话,一个Screen 会话中可以有多个 Screen 窗口, 每个窗口类似于一个 SSH 连接。

2024-03-13 13:46:37 356

原创 Sqoop Hive分区表Export到Mysql

【代码】Sqoop Hive分区表Export到Mysql。

2024-01-25 13:54:17 448

原创 ClickHouse 新增字段

【代码】ClickHouse 新增。

2023-12-08 17:44:44 549

原创 Flink Window中典型的增量聚合函数(ReduceFunction / AggregateFunction)

在Flink Window中定义了窗口分配器,我们只是知道了数据属于哪个窗口,可以将数据收集起来了;至于收集起来到底要做什么,其实还完全没有头绪,这也就是窗口函数所需要做的事情。所以在窗口分配器之后,我们还要再接上一个定义窗口如何进行计算的操作,这就是所谓的“窗口函数”(window functions)。窗口可以将数据收集起来,最基本的处理操作当然就是基于窗口内的数据进行聚合。我们可以每来一个数据就在之前结果上聚合一次,这就是“增量聚合”。

2023-12-08 17:09:54 701

原创 Flink Flink数据写入Kafka

flink官方集成了通用的 Kafka 连接器,使用时需要根据生产环境的版本引入相应的依赖。通过socket模拟数据写入Flink之后,Flink将数据写入Kafka。

2023-12-06 20:21:30 1766

原创 Flink Flink中的合流

但我们知道一个DataStream中的数据只能有唯一的类型,所以连接得到的结果并不是DataStream,而是一个“连接流”。事实上内部仍保持各自的数据形式不变,彼此之间是相互独立的。要想得到新的DataStream,还需要进一步定义一个“同处理”(co-process)转换操作,用来说明对于不同来源、不同类型的数据,怎样分别进行处理转换、得到统一的输出类型。所以整体上来,两条流的连接就像是“一国两制”,两条流可以保持各自的数据类型、处理方式也可以不同,不过最终还是会统一到同一个DataStream中。

2023-11-28 16:26:41 794

原创 Flink Flink中的分流

所谓“分流”,就是将一条数据流拆分成完全独立的两条、甚至多条流。也就是基于一个DataStream,定义一些筛选条件,将符合条件的数据拣选出来放到对应的流里。

2023-11-24 17:50:24 1189

原创 Flink 常用物理分区算子(Physical Partitioning)

在上述实验中,我们设置全局env的并行度为2,尝试执行2次job,发现2次执行的结果不一致,因为shuffle的完全随机性,将输入流分配到不同的分区中,且每次分配可能不一样。这种做法非常极端,通过调用.global()方法,会将所有的输入流数据都发送到下游算子的第一个并行子任务中去。通过调用 DataStream 的.shuffle()方法,将数据随机地分配到下游算子的并行任务中去。这种方式其实不应该叫做“重分区”,因为经过广播之后,数据会在不同的分区都保留一份,可能进行重复处理。

2023-11-24 15:22:57 1043

原创 Hive常用DDL、DML

【代码】Hive常用DDL、DML。

2023-11-24 11:28:57 367

原创 ClickHouse LIMIT分页查查询

如果为 LIMIT n[,m] 设置了 WITH TIES ,并且声明了 ORDER BY expr_list, 除了得到无修饰符的结果(正常情况下的 limit n, 前n行数据), 还会返回与第n行具有相同排序字段的行(即如果第n+1行的字段与第n行 拥有相同的排序字段,同样返回该结果.虽然指定了LIMIT 5, 但第6行的n字段值为2,与第5行相同,因此也作为满足条件的记录返回。LIMIT n, m 允许选择个 m 从跳过第一个结果后的行 n 行。LIMIT m 允许选择结果中起始的 m 行。

2023-11-23 16:23:33 877

原创 Hive csv文件导入Hive

【代码】Hive csv文件导入Hive。

2023-11-23 14:29:28 1174

原创 Hive 常用存储、压缩格式

【代码】Hive 常用存储、压缩格式。

2023-11-09 16:24:31 526

原创 HiveSQL 常用函数

【代码】HiveSQL 常用函数。

2023-11-08 17:24:08 109

原创 HiveSQL中last_value函数的应用

在以下数据中如何实现对每一个列按照更新时间取最新的非null值?

2023-11-02 18:51:56 960

原创 Flink DataStream创建执行环境的正确方式与细节问题

【代码】Flink DataStream创建执行环境的正确方式与细节问题。

2023-10-27 10:57:47 1147

原创 Flink 将数据写入MySQL(JDBC)

在实际的生产环境中,我们经常会把Flink处理的数据写入MySQL、Doris等数据库中,下面以MySQL为例,使用JDBC的方式将Flink的数据实时数据写入MySQL。

2023-10-26 21:41:07 2124

原创 Flink 中KeyBy、分区、分组的正确理解

数据具体去往哪个分区,是通过指定的 key 值先进行一次 hash 再进行一次 murmurHash,通过上述计算得到的值再与并行度进行相应的计算得到。在Flink中,KeyBy作为我们常用的一个聚合类型算子,它可以按照相同的Key对数据进行重新分区,分区之后分配到对应的子任务当中去。Flink中的KeyBy底层其实就是通过Hash实现的,通过对Key的值进行Hash,再做一次murmurHash,取模运算。注意:数据如果具有相同的key将一定去往同一个分组和分区,但是同一分区中的数据不一定属于同一组。

2023-10-13 17:08:20 2502

原创 Flink 中的时间和窗口

Flink中的窗口并不是提前创建好了的,而是动态创建的,当有落在这个窗口区间范围 的数据达到时,才创建对应的窗口。简单来说,Flink是一个流式计算引擎,主要用来处理无界数据流的,数据源源不断、无穷无尽,想要方便高效的处理这种无界数据流,一种方式就是将这种无界数据划分为多个有界的"数据块",这其实就是窗口(Window)。时间窗口以时间点来定义窗口的开始(start)和结束(end),所以截取出的就是某一时间段的数据。通过上面的图我们可以看到,时间窗口的时间固定,计数窗口的计数固定。

2023-10-11 17:27:31 1228 2

转载 kafka-kafka工作原理1

参考资料kafka工作原理

2021-11-03 18:05:08 157

原创 Scala-匿名函数

package com.scala.A//匿名函数/**1)说明没有名字的函数就是匿名函数。(x:Int)=>{函数体} x:表示输入参数;Int:表示输入参数类型;函数体:表示具体代码逻辑2)案例实操传递匿名函数至简原则:(1)参数的类型可以省略,会根据形参进行自动的推导(2)类型省略之后,发现只有一个参数,则圆括号可以省略;其他情况:没有参数和参数超过 1 的永远不能省略圆括号。(3)匿名函数如果只有一行,则大括号也可以省略(4)如果参数只出现一次,则参数省略且后面参数

2021-09-07 09:33:42 420

原创 Scala-匿名函数至简原则

package com.scala.A/** * 匿名函数至简原则 * */object scala_niming_function_03 { def main(args: Array[String]): Unit = { //1.定义一个函数(函数名称为f1,参数为名为op的匿名函数标签,函数的返回值为Unit),函数的参数为一个匿名函数:匿名函数的参数为两个int类型,输出也为int类型 def f1(op: (Int, Int) => Unit): Unit = {

2021-09-06 18:26:25 849

原创 Scala-惰性加载

package com.scala.A/** 惰性加载 * 当函数返回值被声明为 lazy 时,函数的执行将被推迟,直到我们首次对此取值,该函数才会执行。这种函数我们称之为惰性函数 * *//** * 使用lazy声明的变量只有在使用的时候才会进行初始化。在Scala中,通过使用保护式来实现惰性值。当客户代码引用了惰性值时,保护式会拦截引用并检查此时是否需要初始化惰性。 * 由于保护式能够确保惰性在第一次访问之前便已初始化,因此增加保护式检查只有当第一次引用惰性值时才是必要的。 * 由于,

2021-09-06 18:24:55 213

原创 Scala-控制抽象,实现自定义while循环

package com.scala.A/** * 控制抽象,实现自定义while循环 **/object scala_function_05_1 { def main(args: Array[String]): Unit = { var n = 10 /** * 1)常规的while循环 **/ while (n >= 1) { println(n) n = n - 1 } /** * 2)

2021-09-06 18:24:22 132

原创 Scala-控制抽象(主要争对函数参数):值调用和名调用

package com.scala.A/** * 控制抽象(主要争对函数参数):值调用和名调用 **/object scala_function_05_0 { def main(args: Array[String]): Unit = { //------------------------------------------------------------------------------------------------------------------ /**

2021-09-06 18:23:47 96

原创 Scala-递归

package com.scala.Aimport scala.annotation.tailrec/** * 递归 * 1)说明 * 一个函数/方法在函数/方法体内又调用了本身,我们称之为递归调用 * 2)案例实操 **/object scala_function_04 {//---------------------------------------------------------------------------------------------------------

2021-09-06 18:22:02 359

原创 Scala-函数作为值、参数、返回值传递

package com.scala.A/** * 函数作为值、参数、返回值传递 * */object scala_function_01 { def main(args: Array[String]): Unit = { def f(x: Int): Int = { //有参数,有返回值 println("f1被调用") x + 1 }//---------------------------------------------------------

2021-09-06 18:20:54 566

原创 Scala-柯里化应用

package com.scala.A/** * 函数柯里化:把一个参数列表的多个参数,变成多个参数列表。 * 以前当一个函数有多个参数列表的时候,就是需要用逗号分隔参数列表 * 柯里化(来源于没过一个数学家的人名,currying):每一层调用的时候只有一个参数 **/object scala_function_03_2 { def main(args: Array[String]): Unit = { //------------------------------------

2021-09-06 18:18:18 114

原创 Scala-闭包的具体应用

package com.scala.A/**闭包的具体应用/object scala_function_03_1 {def main(args: Array[String]): Unit = {//------------------------------------------------------------------------------------------------------------------/*常规逻辑两个变量相加的函数如果是想计算两万个数相加呢

2021-09-06 18:17:24 180

dolphinscheduler_dindgding_monitoring-1.0-SNAPSHOT.jar

dolphinscheduler_dindgding_monitoring-1.0-SNAPSHOT

2021-09-03

结合Vue+axios+SpringBoot开发的用户管理系统

结合Vue+axios+SpringBoot开发的用户管理系统,包括整合mybatis,实现前后端分离,满足一个基本用户管理系统的增删改查

2020-12-15

vue-基于springboot+vue+redis实现的前后端分离员工管理系统

vue-基于springboot+vue+redis实现的前后端分离员工管理系统,在springboot基础上,实现前后端分离,同时涉及Redis(NoSql数据库),解决业务缓存问题

2020-10-22

Python-基于Django开发的商场后端管理系统

基于Python-Django开发的商场后端管理系统,适合Python后端开发初学者参考,实现web项目开发,以及前后端连接,数据库操作,初步满足客服的业务需求

2020-10-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除