- 博客(69)
- 收藏
- 关注
原创 踩坑解决macOS Ventura13.0.1安装mysql8.0.32修改密码
macOS Ventura13.0.1使用 brewhome 安装mysql8.0.32,安装好之后是没有密码的,需要进入mysql进行密码修改,这是固定步骤了。但是这次安装之后,进去按照之前的修改方法,竟然报语法错误。(已经修改密码策略!查了好久,在stack overflow上找到了外国友人的解决方法,是因为不知道啥时候 password()不能用了,需要改成caching_sha2_password。按道理就是这样的方式啊。
2023-04-19 17:21:28
288
1
原创 国内maven仓库
<!-- 阿里云中央仓库 159行 --> <mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>https://maven.aliyun.com/nexus/content/repositories/central/</u
2021-09-27 16:35:32
195
原创 impala查询报错:TFetchResultsResp(status=TStatus(errorCode=None, errorMessage=‘UDF ERROR: Decimal express
在使用impala查询的时候,在使用cast函数将数据转为decimal类型时,会报错:Bad status for request TFetchResultsReq(fetchType=0, operationHandle=TOperationHandle(hasResultSet=True, modifiedRowCount=None, operationType=0, operationId=THandleIdentifier(secret='\xc8\xc1j\xfe\xd6.B\xa2\x9e\
2021-09-26 11:45:42
1781
原创 sparkStreaming报错Failed to send RPC 6254780973500208805 to /10.11.10.10:48838: java.nio.channels.Clos
sparkStreaming报错Failed to send RPC 6254780973500208805 to /10.11.10.10:48838: java.nio.channels.ClosedChannelException21/04/09 06:33:44 ERROR client.TransportClient: Failed to send RPC 6254780973500208805 to /10.11.10.10:48838: java.nio.channels.ClosedCha
2021-04-09 15:04:04
416
原创 一些hql
ODS层加载数据脚本#!/bin/bashAPP=gmallhive=/opt/module/hive/bin/hive# 如果是输入的日期按照取输入日期;如果没输入日期取当前时间的前一天if [ -n "$2" ] ;then do_date=$2else do_date=`date -d "-1 day" +%F`fisql1=" load data inpath '/origin_data/$APP/db/order_info/$do_date' OVERWR
2021-03-11 23:10:38
102
原创 Cosmos简介及结合spark使用
从Cosmos批量读取数据到Spark// Import Necessary Librariesimport com.microsoft.azure.cosmosdb.spark.schema._import com.microsoft.azure.cosmosdb.spark._import com.microsoft.azure.cosmosdb.spark.config.Config// Read Configurationval readConfig = Config(Map( "
2021-03-08 22:30:56
267
原创 大数据面试题 -- 05
1、hive的数据倾斜现象:在执行MR任务的时候,大多数的reduce节点都执行完毕,而只有几个reduce节点运行很慢或者一直卡在99%,导致整个MR任务运行很慢。原因:这是因为某一个或几个key的数据量要比其他key要多很多,导致这一个reduce节点运行很慢key分布不均匀sql语句本身就会倾斜业务导致建表考虑不周解决思路:1、在map阶段解决2、对key进行操作解决方法:1、使用combine方法在map端提前进行一个reduce计算,大大减少到reduce端时的数据量。但
2020-12-22 11:24:36
159
原创 大数据面试题 -- 06
1、数仓分层的作用2、每层的作用3、hive和mysql的区别Hive 和数据库除了拥有类似的查询语言,再无类似之处。1、数据存储位置Hive 存储在 HDFS 。数据库将数据保存在块设备或者本地文件系统中。2、数据更新Hive中不建议对数据的改写。而数据库中的数据通常是需要经常进行修改的,3、执行延迟Hive 执行延迟较高。数据库的执行延迟较低。当然,这个是有条件的,即数据规模较小,当数据规模大到超过数据库的处理能力的时候,Hive的并行计算显然能体现出优势。4、数据规模Hive支持
2020-12-19 09:35:32
74
原创 大数据面试题 -- 04
1、hdfs的写流程1、client调用分布式文件系统对象通过RPC协议连接namenode,调用create方法在namenode上创建一个新文件,此时文件中是没有数据的2、namenode会对client进行权限检查,和检查这个文件是否存在,如果通过检查,返回client一个输出流对象,如果没通过则返回IOExceptiion3、通过检查后,client向namenode请求上传节点,namenode根据机架感知策略返回副本数个datanode(一般为3个),client将这些节点连接起来形成一个
2020-12-17 21:35:45
90
原创 StructuredStreaming -- 01 【概述,编程模型,source,sink】
文章目录Structured Streaming1、 回顾1.1、Spark 编程模型的进化过程总结1.2、Spark 的 序列化 的进化过程1.2.1、 什么是序列化和序列化?1.2.2、 在 `Spark` 中的序列化和反序列化的应用场景1.2.3、 RDD 的序列化1.2.4、 DataFrame 和 Dataset 中的序列化总结1.3、Spark Streaming 和 Structured Streaming2、 Structured Streaming 入门案例2.1、需求梳理2.2、 代码实
2020-12-09 21:51:24
363
原创 SparkStreaming -- 03 【window函数,与SparkSQL的整合】
文章目录1、window函数操作1.1、 window函数的简介1.2、 常用的窗口函数1.3、 案例演示:1.3.1、1.3.2、1.3.3、2、sparkStreaming和SparkSQL的整合1、window函数操作1.1、 window函数的简介SparkStreaming提供了滑动窗口的操作。这样的话,就可以计算窗口内的n个micro-batch的数据,进行聚合.窗口有两个参数:窗口大小:指的就是有几个单位时间(time unit)的micro-batch滑动周期:类似于定时器
2020-12-08 19:33:12
294
原创 SparkStreaming -- 02 【SparkStreaming和kafka的整合的offset的维护,常用算子】
文章目录1、SparkStreaming与kafka的整合1.1、 比较1.2、 maven依赖1.3、 案例11.4、 使用0-10的Direct方法的优点1.5 、 两种自动维护offset的说明1.5.1、 0-8的receiver如何自动维护offset的图解1.5.2 、 0-10如何自动维护offset的图解1.6、 使用zookeeper手动维护offset1.7、 使用redis手动维护offset2、SparkStreaming的常用转换算子2.1 、常用算子简介2.1.1、 常用的转换算
2020-12-07 19:37:44
247
原创 SparkStreaming -- 01 【概述,案例,和hdfs的整合,和kafka的整合】
1、SparkStreaming的概述1.1、什么是流式计算1、流式计算就是对数据流进行处理,是实时计算2、数据流值的是动态的数据,是不断产生的,没有边界,源源不断3、流式计算中的计算逻辑不止计算一次,是要一致循环计算的(计算不能终止,除非停止作业)流式计算又分为准实时和实时准实时:是介于实时和离线之间,每一次处理的数据要比实时的多,比离线的少很多,微批处理实时:指的是一条记录就(一个事件event)启动一次计算常见的流式计算框架storm:第一代流式处理框架,每生成一条记录就提交一次作业
2020-12-07 17:54:03
222
原创 Kafka启动后过一会儿自动挂掉
meta.properties中的broker.id和server.properties中的不一致meta.properties文件位置在自己设置的server.properties中 log.dirs=。。。 的目录下我的设置路径是这个:log.dirs=/usr/local/kafka/data/kafka-logs所以meta.properties在kafka-logs下!...
2020-12-07 17:22:18
844
原创 大数据面试题 -- 03
1、hive开启map端join的参数,以及其他优化参数map端join适合优化小表join大表的情况(写sql时将小表作为驱动表,也就是select a from b join c on b.id=c.id -->b 为小表,写左边)mapjoin优化适合小表join大表set hive.optimize.skewjoin=true; //有数据倾斜时开启负载均衡,默认falseset hive.auto.convert.join=true; //设置自动选择MapJoin,默认是
2020-12-04 18:03:51
109
原创 Redis -- 01 【简介,特点,搭建,shell,数据类型】
1、Redis的简介1.1、NoSqlNoSql 是Not-Only Sql的简写,泛指非关系型数据库关系型数据库不太适合存储非结构化的大数据(现在的非结构化的数据占比90%),所以提出了一个新的数据库解决方案,来存储这样的数据。NoSql的分类键值对模型的NoSQL:Tokyo、Cabinet/Tyrant、Redis、Voldemort、Berkeley DB应用场景:内容缓存,主要用于处理大量数据的高访问负载优势:快速查询劣势:存储的数据缺少结构化列式模型的NoSQL:Cassa
2020-12-03 21:13:23
127
原创 大数据面试题 -- 01
1、讲一下数仓吧。数仓是一个面向主题的,集成的,相对稳定的,反映历史变化的一个数据仓库,主要用于支持管理决策。面向主题:数仓中的数据是按照主题进行存储的,每一个主题都是决策层分析的一个角度。集成的:不管什么来源的数据都会统一放到数仓中。并且格式,单位,名称等要统一。相对稳定:数据一旦进入数仓中一般不会轻易改变。就算改变也不改变原数据,只是会根据需求重新考虑数据的更新策略。反映历史变化的:时间维度是数仓中很重要的一个维度,数仓中的数据时间跨度会很大,可能有几年到十几年,能反映历史变化。2、数仓分层
2020-12-02 20:01:38
368
原创 大数据面试题 -- 02
1、kafka出现消息堆积怎么办?1、最简单的原因:消费者太少,增加消费者来解决2、还有一个原因就是消费者每次poll的数据业务处理时间不能超过kafka的max.poll.interval.ms,该参数在kafka 0.10.2.1 中的默认值是300s,所以要综合业务数据来设置每次poll的数据量。2、kafka如何实现高吞吐?顺序读写在硬盘中采用顺序读写的方式,性能损耗不大零拷贝“零拷贝技术”只用将磁盘文件的数据复制到页面缓存中一次,然后将数据从页面缓存直接发送到网络中(发送给不同的订阅
2020-12-02 20:01:10
102
原创 Kafka -- 03 【主题,生产者,消费者(java/scala)的实现,自定义分区器】
文章目录1、API创建主题1.1、java实现1.2、scala实现2、API创建生产者2.1、java实现2.2、scala实现3、API创建消费者3.1、java实现3.2、scala实现4、自定义分区器4.1、随机分区器4.2、Hash分区器4.3、轮询分区器1、API创建主题1.1、java实现package KafkaDay02;import kafka.utils.ZkUtils;import org.apache.kafka.clients.admin.AdminClient;i
2020-12-01 22:03:58
127
2
转载 Spark性能调优 -- 02 【-- 高级篇 --】
本文是在对美团技术团队的Spark性能调优指南后做的一个汇总方便自己查看,有兴趣的可以看原文:原文地址文章目录前言1、数据倾斜调优调优概述1.1、数据倾斜原理1.2、数据倾斜的解决方案1.2.1、解决方案一:使用Hive ETL预处理数据1.2.2、解决方案二:过滤少数导致倾斜的key1.2.3、解决方案三:提高shuffle操作的并行度1.2.4、解决方案四:两阶段聚合(局部聚合+全局聚合)1.2.5、解决方案五:将reduce join转为map join1.2.6、解决方案六:采样倾斜key并分拆
2020-11-28 11:45:49
199
转载 Spark性能调优 -- 01 【-- 基础篇 --】
本文是在对美团技术团队的Spark性能调优指南后做的一个汇总方便自己查看,有兴趣的可以看原文:文章目录基础篇调优概述1、开发调优1.1、避免创建重复RDD1.2、尽可能复用同一个RDD1.3、持久化RDD1.4、尽量避免使用shuffle类算子1.5、使用map-side预聚合的shuffle操作1.6、使用高性能的算子1.7、广播大变量1.8、使用Kryo优化序列化性能1.9、优化数据结构1.10、资源配置2、资源参数调优2.1、num-executors2.2、executor-memory2.3、e
2020-11-28 11:03:05
147
原创 Kafka -- 02 【基本操作操作,API,幂等机制,事务机制】
文章目录一、基本操作1.1、topic的CRUD1.1.1、topic的创建1.1.2、topic的查看1.1.3、列出所有主题1.1.4、修改主题1.1.5、删除主题1.2、生产者和消费者1.2.1、启动生产者1.2.2、启动消费者1.3、消费者组与partition1.3.1、设置消费者组二、kafka的API2.1、生产者的API2.1.1、事务机制消费者的API一、基本操作1.1、topic的CRUD主题:kafka的消息都是按照不同的主题进行分开存储的,一个主题可以有多个分区,分区内部的消息
2020-11-27 21:19:31
86
原创 SparkSQL -- 03 【SparkSQL内置函数案例演示】
文章目录其他Action操作showcollectcollectAsListdescribefirst, head, take, takeAsList条件查询和Join操作where条件filter过滤查询指定字段limitorder bygroup bydistinct聚合unionjoin获取指定字段统计信息获取两个DataFrame中共有的记录获取一个DataFrame中有另一个DataFrame中没有的记录操作字段名行转列其他Action操作show以表格的形式在输出中展示DataFrame中
2020-11-26 21:38:11
360
原创 Kafka -- 01【kafka的概述,安装】
文章目录一、Kafka概述1.1、消息队列1.1.1、消息队列是什么?1.1.2、消息队列的特点(作用)1.1.3、消息队列的分类Peer-toPeer发布/订阅p2p和发布/订阅MQ的比较1.1.4、常见的消息队列1.2、Kafka的简介1.3、Kafka的设计目标1.4、Kafka的核心概念二、kafka的分布式安装2.1、版本下载2.2、安装步骤一、Kafka概述1.1、消息队列要更好的理解kafka我们需要先理解消息队列这个概念。kafka就是类似消息队列的框架。1.1.1、消息队列是什么?
2020-11-26 18:59:47
93
原创 SparkSQL -- 02 【SparkSQL文件的读取与落地,和Hive的整合,内置函数,自定义函数】
文章目录一、SparkSQL文件的读取与落地1.1、文件读取1.2、文件的落地二、和Hive的整合三、内置函数四、用户自定义函数4.1、UDF1、2、4.2、UDAF一、SparkSQL文件的读取与落地1.1、文件读取package com.xxx.SparkSQL.Day02import java.util.Propertiesimport org.apache.spark.sql.{DataFrame, SparkSession}object _01SparkFileLoad {
2020-11-25 21:41:11
266
原创 SparkSQL -- 01 【概述,特点,编程模型,基本编程练习】
SparkSQL一、SparkSQL的发展1.1、概述SparkSQL,顾名思义,就是Spark生态体系中的构建在SparkCore基础之上的一个基于SQL的计算模块。SparkSQL的前身叫Shark,最开始的底层代码优化,sql的解析,执行引擎等等完全基于HIve,Shark的执行速度要比Hive高出一个数量级,但是Hive的发展制约了Shark,所以在15年中旬的时候,Shark项目结束,重新独立出来一个项目,就是SparkSQL,不再依赖Hive,做了独立的发展,逐渐的形成两条互相独立的业务:
2020-11-24 21:24:22
179
原创 SparkCore -- 05 【广播变量,累加器,自定义排序,自定义分区器】
广播变量package com.xxx.spark.day06import org.apache.spark.broadcast.Broadcastimport org.apache.spark.rdd.RDDimport org.apache.spark.{SparkConf, SparkContext}/** * 广播变量的使用 */object _01Broadcast { def main(args: Array[String]): Unit = { va
2020-11-23 21:56:27
193
原创 SparkCore -- 04 【常用的RDD算子】
package com.xxx.spark.day03import org.apache.spark.rdd.RDDimport org.apache.spark.rdd.RDD.rddToPairRDDFunctionsimport org.apache.spark.{SparkConf, SparkContext}object _01ExampleOperator { def main(args: Array[String]): Unit = { testRepart
2020-11-18 21:52:13
84
转载 SparkCore -- 03 【Spark的RDD算子超详细解释(附案例)】
Transformation算子Spark算子:RDD基本转换操作(1)–map、flatMap、distincmap将一个RDD中的每个数据项,通过map中的函数映射变为一个新的元素。输入分区与输出分区一对一,即:有多少个输入分区,就有多少个输出分区。hadoop fs -cat /tmp/lxw1234/1.txthello worldhello sparkhello hive //读取HDFS文件到RDDscala> var data = sc.textFile("/t
2020-11-17 21:21:27
155
原创 SparkCore -- 02 【RDD编程(RDD的创建方式,RDD算子的分类,RDD算子的案例】
RDD的创建的方式有三种:1、通过读取一个外部文件(本地文件,hdfs文件)来获取一个RDD2、调用makeRDD()或者parallelize()从集合中创建(集合必须为seq或seq的子类)3、其他RDD调用算子转换而来RDD的分类两类:Transformation算子,也叫转换算子Action算子,也叫行动算子RDD的转化操是通过对数据的一些操作后返回一个新的RDD的操作RDD的行动操作是向驱动器程序返回结果或将结果写入外部存储系统的操作**注意:**Spark采用的是惰性计算模
2020-11-17 19:42:35
128
原创 SparkCore -- 01 【名词解释,以及RDD的概念】
名词解释Standalone的cluster模式下的各个名词Client:客户端进程,负责将作业提交给masterMaster:主控节点,负责接收作业以及管理Worker,并命令worker启动Driver和ExcutorWorker:slave节点上的守护进程,负责管理本节点上的资源,定期向Master心跳反馈,接收Master的命令,启动Driver和Excutor,将任务执行的信息提交给MasterDriver:一个Spark的作业运行需要一个Driver,是作业的主进程,负责作业的解析,生
2020-11-17 19:29:08
139
原创 Scala 02 -- (for循环,字符串差值,文件操作,方法和参数,数组)
for循环语法package Scala_Day02._01_Forobject For_01_ { def main(args: Array[String]): Unit = { //语法:for(变量名<- Range/数组/集合/表达式){循环体} for (i <- 1 to 10) print(i) for (i <- 1 until 11) print(i) //遍历数组
2020-11-11 21:41:07
105
原创 Scala 01-- (简介,安装,基本语法)
一、Scala的简介1.1 scala的简介1. Martin Odersky在2001年开始设计的,Java平台的Scala于2003年底/2004年初发布。2. Scala名字由来:Scalable Language两个单词相结合;意大利语中 scala意为“梯子”或“楼梯”,蕴含“更佳的编程语言”。 3. 设计目标是将面向对象、函数式编程和强大的类型系统结合起来,让人要能写出优雅、简洁的代码。1.2 scala的特点1. 具有面向对象的特点2. 具有函数式编程的特点3. 具有静态类型
2020-11-10 20:41:24
140
原创 hive场景题
第一题:了解哪些窗口函数,都是什么功能?找一个在某个业务中的应用? 手写窗口函数及功能意义,同时随便写一个带窗口函数的sql,并说明其sql的含义。over() 既能显示明细信息,也能显示统计信息分析函数用于计算基于组的某种聚合值,但和聚合函数不同的是:对于每个组返回多行,而group by只返回一行,而窗口函数指定了数据分析函数的窗口大小,这个窗口可能会根据行的变化而变化over中还可以加window子句语法:rows between preceding|following|current r
2020-11-01 09:41:05
1002
原创 nginx以及openresty
一 Nginx的简介1.1 简介Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日。因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务
2020-11-01 09:26:13
1068
原创 sqoop将memstore切换到mysql的错误
1、20/10/29 19:23:24 WARN hsqldb.HsqldbJobStorage: Could not interpret as a number: null20/10/29 19:23:24 ERROR hsqldb.HsqldbJobStorage: Can not interpret metadata schema20/10/29 19:23:24 ERROR hsqldb.HsqldbJobStorage: The metadata schema version is null
2020-10-29 19:36:40
122
原创 sqoop
一、复习flume1. flume的简介 - flume是apache基金会旗下的一款项目 - flume用于采集数据,通常采集的是行为数据(日志文件) (结构上分类:结构化数据,半结构化的数据,非结构化的数据 采集数据的种类进行分类:行为数据(日志文件),业务数据,内容数据,第三方数据源) - flume具有的特点:分布式的,可靠性的,高可用的等 2. flume的体系结构 - 运行单元是agent, agent至少包含一个source,一个channel,一个sink -
2020-10-28 21:47:54
138
原创 flume
文章目录一、大数据项目简介1.1 整个学习周期的项目1.2 数据采集和监控系统的简介二、Flume框架概要2.1 flume的简介2.2 设计思想2.3 Flume体系结构(重点)2.4 Flume的数据流模型2.5 采集方案模板2.6 常用的核心组件三、Flume的安装四、Flume案例演示案例1)avro+memory+logger案例2)exec+memory+logger案例3)exec+memory+hdfs案例4)spool+memory+logger案例5)spool+file+hdfs案例6
2020-10-27 19:47:04
131
原创 Hbase -- 03 【rowkey的设计原则,二级索引,协处理器,Hbase的优化参数】
文章目录ROWKEY的设计原则(重点)rowkey的重要性rowkey的设计原则案例演示:多条件的rowkey设计:9.4.2 针对事务数据Rowkey设计9.4.3 针对统计数据的Rowkey设计9.4.4 针对通用数据的Rowkey设计Hbase的二级索引Hbase的协处理器协处理器的引入协处理器的分类协处理器的应用:二级索引表的创建Hbase的优化参数(熟悉)服务端(hbase-site.xml中设置)jvm和垃圾收集参数客户端zookeeper调优其他总结ROWKEY的设计原则(重点)##热点问
2020-10-22 20:33:42
1206
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人