自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(114)
  • 资源 (2)
  • 收藏
  • 关注

原创 新手入门大数据,大数据的入门!!!认识大数据

大数据介绍大数据的由来大数据的应用领域大数据方面核心技术有哪些?一、数据采集与预处理Flume NGNDCLogstashSqoop流式计算Zookeeper二、数据存储HBasePhoenixYarnMesosRedisAtlasKudu三、数据清洗OozieAzkaban四、数据查询分析HiveImpalaSparkNutchSolrElasticsearch五、数据可视化大数据的由来 对...

2019-04-10 18:25:56 16115 22

原创 ClickHouse部署文档

ClickHouse可以在任何具有x86_64,AArch64或PowerPC64LE CPU架构的Linux,FreeBSD或Mac OS X上运行。指令集,因此,除非另有说明,支持它的CPU使用将成为额外的系统需求。1.启动每个安装包install/doinst.sh 下的启动脚本。官方预构建的二进制文件通常针对x86_64进行编译,并利用。机器:node01,node02,node03 共三台。浏览器访问:8123端口 ,返回ok则搭建成功。Clickhouse安装包。如图所示:此系统支持。

2022-09-16 15:18:38 827 1

原创 Spark写入支持更新【源码二次开发】

在大数据开发过程中,遇到很多Spark写入mysql得场景,目前由于Spark仅支持以下几种由于在写入mysql时,需要数据根据主键进行更新,而不覆盖或追加,次业务场景也比较多。看了Spark源码后,故此有两种方式进行数据更新用于实时覆盖写入数据。此种方式代码开发量少以Spark3.4.0为例新增一种枚举写入方式:在该方法中首先从上游传递SaveMode:mode参数再更加写入的mode判断返回Insert INTO /Replace into sql。

2022-09-04 14:44:28 1248

原创 如何完美解决Sqoop导入导出MySQL数据错位问题

Sqoop

2022-08-27 14:33:13 3060 1

原创 面试HR必谈问题合集

面前必了解:1.公司背景,是否是上市公司,是否是国企,是否正在融资、融资是否有风险、是否是经营异常的公司、是否乙方(外包公司)?、了解企业渠道: 知乎:知乎 - 有问题,就会有答案----倾听民众的呼声中国裁判文书网:首页----了解是否有黑历史...

2021-11-07 18:26:04 407

原创 Azkaban 外部接口的使用与开发

Azkaban 外部接口的使用与开发此文档可用于Azkaban 任务的https调用,提供了查看任务的状态信息、执行情况、任务的创建、上传、触发、取消、调度等功能接口。可以使开发者在编程过程中直接通过https api的调用,来对任务进行控制,开发者可参考azkaban官网提供的api文档。azkaban官网提供的api文档:https://azkaban.github.io/azkaban/docs/latest/#ajax-apiAPI调研结果:功能 是否支持 java api

2021-05-24 17:09:41 1454 1

原创 Gitlab 项目提交 操作

Command line instructionsYou can also upload existing files from your computer using the instructions below.Git global setupgit config --global user.name "wangjunyong"git config --global user.email "[email protected]"Create a new reposito

2021-05-12 15:11:18 300

原创 Spring Boot 注解大全

使用注解的优势: 采用纯java代码,不在需要配置繁杂的xml文件 在配置中也可享受面向对象带来的好处 类型安全对重构可以提供良好的支持 减少复杂配置文件的同时亦能享受到springIoC容器提供的功能 一、注解详解(配备了完善的释义)可采用ctrl+F 来进行搜索哦:@SpringBootApplication:申明让spring boot自动给程序进行必要的配置,这个配置等同于:@Configuration ,@EnableAutoConfi..

2021-04-03 09:17:43 187

原创 Elasticsearch 批量数据迁移和索引mapping修改

需求:原始索引中有2亿条数据,并且在线上运行,现在需要更具给部分数据添加一个标签(即新增一个字段,address);困难:1).Elasticsearch不支持动态修改mapping。2).由于数据量很大,新建索引,并且进行数据迁移效率很慢数据情况:索引:test_jyong_old别名:test_jyong_alias数据量:2亿mapping:{ "test_jyong_old": { "mappings": { "doc": {

2021-03-08 14:47:57 817

原创 Spark任务流程解析

Spark主要的角色SparkControlProcesses Driver Application entry point that contains the SparkContext instance Master In charge of scheduling and resource orchestration
 Worker Responsible for node ...

2021-01-07 17:13:40 494

原创 多线程批量提交Spark任务

一.目的1.避免资源的浪费2.提高任务执行的效率3.防止任务未执行完毕,session和线程池已关闭,导致任务失败二、异常conding:1)method 1 for (String s : list) { Dataset<Row> sql = sparkSession.sql(s); sql.show(); } sparkSession.close(); Syste.

2021-01-07 16:35:14 1241 2

原创 最简易的Maven打包

一、简洁方式将依赖包和class一起打包<build> <plugins> <!-- Maven Assembly Plugin --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembl

2020-12-11 17:53:44 247

原创 ElasticSearch磁盘达到阈值异常,写不进去数据

异常信息{ "error": { "root_cause": [ { "type": "cluster_block_exception", "reason": "index [blog1] blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];" } ], "

2020-12-11 15:37:54 2480

转载 从实际案例聊聊Java应用的GC优化-《美团大神笔记》

当Java程序性能达不到既定目标,且其他优化手段都已经穷尽时,通常需要调整垃圾回收器来进一步提高性能,称为GC优化。但GC算法复杂,影响GC性能的参数众多,且参数调整又依赖于应用各自的特点,这些因素很大程度上增加了GC优化的难度。即便如此,GC调优也不是无章可循,仍然有一些通用的思考方法。本篇会介绍这些通用的GC优化策略和相关实践案例,主要包括如下内容: > 优化前准备: 简单回顾JVM相关知识、介绍GC优化的一些通用策略。 > 优化方法: 介绍调优的一般流程:明确优化目标→优化→跟踪优化结果。

2020-11-26 21:09:18 203

原创 深入浅出JVM虚拟机

------------------------------------------深入理解Java虚拟机------------------------------------------java内存区域划分1. 程序计数器当前线程所执行的字节码行号指示器 每个线程都有独立的程序计数器 如果执行的是java方法,记录字节码指令地址。如果执行Native方法,则为空(Undefined) 不会有OutOfMemoryError出现2. 虚拟机栈线程私有, 生命周期与线程相同 描

2020-11-26 21:05:38 271

原创 Sql之家

sql进阶---------------->一.basic1、说明:创建数据库CREATE DATABASE database-name2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'--- 开始 备份BACKUP DATABASE

2020-11-17 22:14:21 332

原创 ElasticSearch设置通用模板

1.模板,一般有以下一下常见的通用模板参数{ "order": 0, // 模板优先级,数字越大优先级越高 "index_patterns": ["jyong-*,test-*"], // 匹配该模板的索引名称正则 "settings": {}, // 索引设置 "mappings": {}, // 索引中各字段的映射定义 "al

2020-10-22 18:40:37 1408

原创 阿里云轻量级服务器ElasticSearch集群部署

搭建搞定三台阿里云轻量级服务器ip内网 ip公网 角色 172.116.1.100 47.100.1.100 master 172.116.1.101 47.100.1.101 salve 172.116.1.102 47.100.1.102 salve 搞定三台机器的网络配置,前提:在阿里云轻量级应用管理控制台开启端口92001.上传ElasticSearch部署包,以elasticsearch.tar.gzel...

2020-09-26 22:00:28 700 1

原创 Redis-benchmark性能测试

redis-benchmark测试机器:1核心 2g Centos7.3测试:100个并发,100000个请求命令:redis-benchmark [option] [option value]redis-benchmark -h [localhost] -p [port] -c [paramllism] -n [requests]redis 性能测试工具可选参数如下所示:序号 选项 描述 默认值 1 -h 指定服务器主机名 127.0.

2020-09-17 20:52:09 196

原创 ElasticSearch常用DSL查询语句

数据:{ "took" : 1, "timed_out" : false, "_shards" : { "total" : 1, "successful" : 1, "skipped" : 0, "failed" : 0 }, "hits" : { "total" : { "value" : 4, "relation" : "eq" }, "max_score" : 1.0, "hits" :

2020-09-05 18:22:48 776

原创 ElasticSearch增删改查原理

一.基础知识的刨析1.ElasticSearch中的indexElasticSearch中的索引(index)是用于组织数据的逻辑命名空监(如数据库)。ElasticSearch的所有默认有5个分片(shard)--当然这是7.x版本之前的特性了。7.x之后新建索引默认都是1个分片。分片是实际存储数据的lucene索引,它本身就是一个搜索引擎。每个分片可以有零个或多个副本(replicas)默认是1个。ElasticSearch索引还具有‘类型(type)’(如数据库中的表),允许在索引中队数据

2020-08-30 19:00:24 454

原创 Hive数据倾斜的刨析和解决

1.Hive Sql执行原理 首先我们执行的一个个Hive Sql,他是怎么执行的呢? (https://blog.csdn.net/Mirror_w/article/details/89461885这里有详细原理详解)1.首先客户端Client,提交一个Sql查询任务2.客户端通过Thrift Srever服务与Driver进行通信,将执行任务发送给Driver驱动3.Driver驱动会将Sql同过解析器进行解析,解析成一个逻辑执行计划,然后与源数据库进行通信,比如提交一个(sel..

2020-08-08 09:55:05 190

原创 SparkSession写入mysql出现的数据库死锁问题?

最近工作中模型出现的死锁问题azkaban spark任务报错信息代码:代码上看都是正常的DataFrame写入mysql操作,并且是update操作来看看数据库结构:这次看到,数据库时由联合主键构成的,查看了源数据,发现hive中数据又很多是相同的数据。此前:做了一个小测试,将所有的联合主键取消掉,这个表没有的主键,因此写操作是insert操作了,执行sp...

2020-02-29 13:30:30 912

原创 Spark度量系统相关讲解

Spark的Metrics System的度量系统,有两个部分组成:source,sink,创建的时候需要制定instance。度量系统会周期的将source的指标数据被sink周期性的拉去,sink可以有很多。Instance代表着使用度量系统的角色。在spark内部,目前master,worker,Executor,client driver,这些角色都会因为要去做监控而创建使用度量系统。...

2019-11-13 21:05:46 340

原创 Spark的调度系统

Spark的调度系统一,简介Spark调度机制可以理解为两个层面的调度。首先,是Spark Application调度。也就是Spark应用程序在集群运行的调度,应用程序包括Driver调度和Executor调度。其次,就是每个Spark Application都会有若干Jobs(Spark Actions),然后这些job是以何种机制,在Executor上执行的,也是需要一个调度管理的机...

2019-11-13 20:56:08 231

原创 Linux部署之节点初始化部署

-------------------------原始节点配置--------------------------------------1.配置ip属性cd /etc/sysconfig/network-scripts/vi ifcfg-eth0注释掉:HWADDR(真正公司里不能做)修改:ONBOOT=yesBOOTPROTO=static添加:IPADDR=192.168...

2019-08-05 21:07:00 399

原创 Git私服部署

1.准备一台服务器必要条件:网络环境2.安装Git服务环境准备命令:yum -y install curl curl-devel zlib-devel openssl-devel perl cpio expat-devel gettext-devel gcc cc3.下载gitgit官网下载:https://mirrors.edge.kernel.org/pub/...

2019-08-01 12:16:01 787

原创 深度理解篇之SparkShuffle

SparkShuffle对于shuffle的话,对于1.6以前的版本,有一个shufflemanager,shuffle管理器。Spark在传统的模式中分为hashManager和常用的sortshuffleManager。简单来说hashShuffle是什么原理呢?他是一种简单的粗暴的方式,也就是map的一个任务,读到一条数据,该存的时候,首先要算出hash,算出去哪个分区,这时...

2019-07-13 19:49:00 936

原创 深度理解篇之SparkSubmit 任务提交-个人拙见

首先逻辑代码会写成一个类,那么这个类是怎么执行的呢?会有一个主方法会有new SparkContext,new SparkConf,sc.texfile(...),这些代码是在哪执行的呢?而这点就和SparkSubmit的两种模式挂钩了,一个是client客户端模式,另一个是cluster模式,这两种模式代表的是什么呢?代表的是写的代码在Sparksubmit后是在本机执行还是将代码发送到集群...

2019-07-13 19:46:16 529

原创 深度理解篇之Spark架构原理-个人拙见

继上篇https://blog.csdn.net/Mirror_w/article/details/95783445那么相应的实现是怎么实现的呢?先说它的框架,在框架当中,mapreduce也好,Spark也好,资源层和计算才能是隔开的,是解耦的,在MapReduce当中,Yarn是资源层,然后自己的计算支持着计算层,比如说有客户端、有appMaster、有maptask reduce t...

2019-07-13 19:44:44 344

原创 深度理解篇之Spark语义-个人拙见

Spark语义Spark是一个分布式计算程序,他是大数据的计算引擎层面,在计算引擎层面,分为两大类,一类是属于流式计算,一类是数据批量计算,流计算里面是storm、flink,批计算里面是map reduce 和spark,想理清楚spark和MapReudce做对比,首先着两者的对比,就是mapreduce很慢,spark很快,那么为什么spark很快,首先不是基于内存的,由于每个stage...

2019-07-13 19:40:56 623

原创 深度理解篇之HBase的读写流程-个人拙见

HBase的读写流程HBase中最基本的原理就是rowkey,进行增删改查的话,首先要找到rowkey所存在的Regoin,Regoin在RegoinServer中,一般Regoin都是RegoinServer区间的一个定义,这是它最基本最狭义的一个描述,但是这里面要知道相关的元数据信息比如说写流程,写流程:客户端先去zookeeper,zookeeper中有一个节点,类似于root表...

2019-07-13 19:39:26 492

原创 深度理解篇之HBase结构原理-个人拙见

HBaseHBase是一个存储层,在大数据的储存层里有HDFS,为什么有HBase呢?HDFS是线性的批量的,加载的IO性能会好一点,HDFS不支持修改,不能随机的修改,那么HBase是怎样的一个模型呢?第一它首先支持随机的读和写,你想修改HBase中的某一条数据,只要根据rowkey,立马就可以进行修改,这就说HBase修改能力是有的,在大数据的整个生态当中,一定会有批量计算,一定会有随机读...

2019-07-13 19:36:53 346

原创 深度理解篇之Hive-个人拙见

Hive公司的数据越来越多,业务越来越多,会伴随着在存储层存下不同的文件,每个文件代表什么意思呢?打开文件之后,每一列代表什么意思呢?这时候就很难去分别,很难去管理了,人很难通过电脑记录下来将这写不同的数据,所以可以通过第三方存储系统来存储这些记录,比如说数据库建表来记录那个目录里面存的是什么数据,每个数据有什么特点,每一行每一列代表什么意思。总体的意思就是我们得有一个存储系统来记录大量业...

2019-07-13 19:33:00 683

原创 深度理解篇之MapReduce-个人拙见

MapReduceMapReduce是一个分布式计算框架,MR主要是来自原Google的那片论文,从名字上看只有两个阶段,两个阶段map阶段和reduce阶段。Mapreduce框架追求的是对过去计算特征的一种抽取,发现计算就是对数据一般都是过滤或者聚合的操作,比如我们写sql时的where条件,就是一种过滤,而select * 的查询没有聚合的操作,MapReduce中只有map就可以完成这...

2019-07-13 19:30:19 665

原创 深度理解篇之HDFS读写流程-个人拙见

文件的写流程首先客户端和namenode进行建立连接,无论是查询还是创建,都是先进行与namenode进行交互获取元数据,当我们开始提交写请求时,首先客户端会检查文件名、路径是否合法,文件名是否被占用,一系列的检查通过之后那么,会创建一个.copying的一个扩展名的文件,此时namenode触发了块的副本放置策略,因为只有namenode才知道集群的节点信息,机架信息,怎么去放置的信息,触发...

2019-07-13 19:27:16 629

原创 深度理解篇之HDFS-个人拙见

Hdfs架构首先Hdfs是一个分布式文件系统,它是分布式计算架构的支持。怎么实现的呢?采用一种“分而治之”的思想,将一个很大的数据块,打散到不同的节点上去存储。具体怎么实现的呢?首先将一个数据文件按照一定的偏移量offset进行切割,将不同偏移量的所切割数据放置在不同的储存节点之上,并且采用了副本机制。什么是副本机制呢?为了解决数据的容错、丢失,在其他节点上进行数据备份...

2019-07-13 19:25:19 349

原创 mysql 8.0.11安装教程

安装环境:win71、下载zip安装包:MySQL8.0 For Windows zip包下载地址:https://dev.mysql.com/downloads/file/?id=476233,进入页面后可以不登录。后点击底部“No thanks, just start my download.”即可开始下载。2、安装2.1解压zip包到安装目录我的解压在了E:\sof...

2019-07-12 07:47:09 383

原创 Spark中foreachRDD、foreachPartition和foreach解读

foreachRDD、foreachPartition和foreach的不同之处主要在于它们的作用范围不同,foreachRDD作用于DStream中每一个时间间隔的RDD foreachPartition作用于每一个时间间隔的RDD中的每一个partition,foreach作用于每一个时间间隔的RDD中的每一个元素。在Spark 官网中,foreachRDD被划分到Output O...

2019-07-11 08:58:26 654

原创 算法的时间复杂度和空间复杂度

通常,对于一个给定的算法,我们要做 两项分析。第一是从数学上证明算法的正确性,这一步主要用到形式化证明的方法及相关推理模式,如循环不变式、数学归纳法等。而在证明算法是正确的基础上,第二部就是分析算法的时间复杂度。算法的时间复杂度反映了程序执行时间随输入规模增长而增长的量级,在很大程度上能很好反映出算法的优劣与否。因此,作为程序员,掌握基本的算法时间复杂度分析方法是很有必要的。算法执...

2019-07-08 20:09:55 505

spark任务执行深入浅出

spark刨析

2020-12-30

ElasticSearch写入原理及优化.docx

ElasticSearch写入原理及优化案例,此文章深入刨析了ElasticSearch在put和get时的原理。并且对于批量数据写入时进行优化给出最佳的方案和示例

2020-09-01

空空如也

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

TA关注的人

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