自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Flink面试题

关于spark和flink我可能会问这20个问题,当然并不是说简单回答一下就可以了,每一个题都可以引申很多问题,拿第一个问题来说,里面还有很多东西,比如spark的依赖关系是存在什么地方?RDD的宽窄依赖划分等? 因为你如果什么问题都问,问三天三夜都问不完,所以一定有针对性,而且后面一定会有模拟场景现场编程的问题,因为上面的问题都是偏原理的,你不会你也可以背下来,但是编程就考验你的真实水平了,比如给你一个实时计算的场景,让你写出主要的代码实现.这也是为什么我在星球里面很少分享原理性的东西,更多的怎么解决真实

2020-05-17 20:17:21 4675 1

原创 运行时数据区域

运行时数据区域根据 <Java虚拟机规范>的规定, Java 虚拟机所管理的内存将包括以下几个部分:堆 Heap。虚机机栈 VM Stack。本地方法栈 Native Method Stack。方法区 Method Area。程序计数器 Program Counter Register。运行时区域程序计数器 Program Counter Register程序计数器是 每个线程独有的,是一块比较小的内存区域,他可以理解为当前线程所执行的字节码的行号的指示器。Java的多

2020-05-17 20:15:37 198

原创 为什么要了解垃圾回收与内存分配?

为什么要了解垃圾回收与内存分配?当需要排查出各种内存溢出,内存泄露问题时,当垃圾收集成为系统达到更高并发的瓶颈时,就知道了解垃圾回收与内存分配的策略。垃圾回收算法垃圾回收要解决的首要问题,就是找出哪些对象有用,哪些对象无用,无用的对象就要被回收。比较常见的对象标明算法有引用计数器算法 和 可达性分析算法。引用计数器:原理是记录被引用了多少次,增加一次引用,值增1,减少引用,值减1,如果引用为0,说明对象可以被回收。该算法的效率高,原理也简单,但是不能解决 对象之间循环引用 的问题。可达性分析

2020-05-17 20:15:05 383

原创 类加载机制

类加载机制类是在运行期间第一次使用时动态加载的,而不是一次性加载所有类。因为如果一次性加载,那么会占用很多的内存。类的生命周期加载(Loading)验证(Verification)准备(Preparation)解析(Resolution)初始化(Initialization)使用(Using)卸载(Unloading)类加载过程包含了加载、验证、准备、解析和初始化这 5 个阶段。1. 加载加载是类加载的一个阶段,加载过程完成以下三件事:通过类的完全限定名称获取定义该类

2020-05-17 20:14:23 166

原创 hive优化实战

这里从四个方面对 Hive 常用的一些性能优化进行了总结。一 : 表设计层面优化利用分区表优化分区表 是在某一个或者几个维度上对数据进行分类存储,一个分区对应一个目录。如 果筛选条件里有分区字段,那么 Hive 只需要遍历对应分区目录下的文件即可,不需要 遍历全局数据,使得处理的数据量大大减少,从而提高查询效率。当一个 Hive 表的查询大多数情况下,会根据某一个字段进行筛选时,那...

2020-03-30 10:29:50 209

原创 java的模式

单例模式单例模式定义保证一个类仅有一个实例,并提供一个访问它的全局接口。单例模式的类图单例模式示例饿汉模式public class Singleton1 { private final static Singleton1 singleton = new Singleton1(); private Singleton1() { } public static Sing...

2020-03-30 10:18:46 121

原创 Spark Job Submit分析

Spark Job Submit1. Driver向Master注册Application过程val command = Command("org.apache.spark.executor.CoarseGrainedExecutorBackend", args, sc.executorEnvs, classPathEntries, libraryPathEntries, extraJavaO...

2020-03-29 18:01:41 344

原创 java面试语言基础

一、八种数据类型类型 大小 封装类 byte 1字节 Byte short 2字节 Short int 3字节 Integer double 8字节 Double float 4字节 Float char 2字节 Caharacter long 8字节 Long bo...

2020-02-24 10:49:34 97

原创 P3===时间复杂度和空间复杂度

一、算法效率的度量方法1、算法采用的策略、方案2、编译产生的代码质量3、问题的输入规模4、机器执行指令的速度

2020-02-19 20:21:14 124

原创 谈谈算法

一、算法初体验int i=0,sum=0,n=100;for(i=1;i<=n;i++){ sum=sum+i}println(sum)对比高斯的算法int i=0,sum=0,n=100;sum=(1+n)*n/2println(sum)二、什么是算法算法就是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一...

2020-02-18 15:48:59 120

原创 数据结构和算法导论

一、什么是数据结构程序设计=数据结果+算法数据结构就是数据元素相互之间之间存在的一种或多种特定关系的集合二、逻辑结构和物理结构1、逻辑结构 数据对象中数据元素之间的相互关系2、物理结构 数据的逻辑结构在计算机中的存储形式三、四大逻辑结构1、集合结构:集合结构中的数据元素中除了同属于一个集合外,他们之间没有任何关系2、线性结构:线性结构...

2020-02-18 10:19:36 365

原创 数据结构的那些事儿【未完结……】

一、什么是数据结构以某种特定的布局方式存储数据的容器。这种布局方式决定了数据结构对于某些操作是高效的。二、为什么需要数据结构数据是计算科学中最关键的实体,而数据结构则可以将数据以某种组织形式存储,因此,数据结构的价值不言而喻需要根据不同的场景,按照特定的格式进行存储,有很多数据结构能够满足不同格式存储数据的需求三、常见的数据结构1、数组2、栈3、队列...

2020-02-17 20:50:42 99

原创 datax实战-hive同步数据到mysql

{ "core": { "transport": { "channel": { "speed": { "record": "10000", "byte": 1048576 } } ...

2020-02-17 15:54:05 1880

原创 hive自定义udf函数实战

一、UDF相关概念udf函数,用户自定义函数,可以直接在sql语句中计算的函数优点:允许实现模块化的程序设计、方便修改代码、增加函数 UDF的执行速度很快,通过缓存计划在语句重复执行时降低代码的编译开销,比存储方法的执行效率更高 可用于减少网络流量UDF放入内存中,设计不当可能导致系统的崩溃,所以必须在必要的时候实施优化,对udf的优化是通过改写原来的udf代码实现,主要包括两种场...

2020-02-17 15:44:11 1335

原创 datax实战-mysql同步数据到hive

{ "job": { "setting": { "speed": { "channel": 1 }, "errorLimit": { "record": 0, "percentage": 0.02 ...

2020-02-17 15:39:01 2302

原创 spark算子reducebykey和groupbykey的对比

一、场景reducebykey和groupbykey作为经常使用的算子,都会触发shuffle操作1.reducebykey返回的k-v的tuple的rdd2.groupbykey返回的k-iterable的tuple的rdd二、源码解读这两个方法的底层都调用了combineByKeyWithClassTag这个方法groupbykey 调用reducebyk...

2020-02-11 16:42:31 328

原创 spark-streaming消费kafka写入hbase踩坑实战

场景otter同步mysql的数据到kafka,spark-streaming消费kafka,采用motator异步写hbase。mysql的insert,update,delete特别频繁,每秒都有大量的insert,delete,update以下都是基于同一条数据操作1. 坑 Delete(byte [] row), Put(byte[] row),bufferedmu...

2020-02-11 16:27:25 1035

原创 spark-streaming消费kafka写hbase代码实战调优

1、处理逻辑通过新增map集合来提升处理性能2、资源配置--executor-cores 3 \--num-executors 5\--executor-memory 2G \--driver-memory 2G \3、测试场景这个topic有15个分区,并且数据量挺大,所以需要15个core处理,从earliest消费写到测试表,4千万的数据量第三次...

2020-02-11 16:23:11 339

原创 hive写入Elasticsearch实战与性能

一、写入ES的映射add jar hdfs://****/user/hive/jar/elasticsearch-hadoop-6.6.1.jar; --注意jar包版本,不同elastic集群指定相应的版本jar包--关闭Hive推测执行SET hive.mapred.reduce.tasks.speculative.execution = false;SET mapreduce.m...

2020-02-11 15:25:44 1166 1

原创 hive sql练习一

背景数仓很火的情况下,sql是bi'xu必须要会的,这也是面试了好几家大厂都碰壁的问题,所以写个专题练练sql。一、建表//1、学生信息表hive> create table xcj_student (s_id string,s_name string,s_birth string,s_sex string) row format delimited fields termi...

2020-02-10 23:36:56 184

原创 hive sql练习二

1、有十万个淘宝店铺,每个顾客访问任意一个店铺时都会生成一条日志,访问日志存储表为visit,其中访问用户ID字段名称为uid,访问店铺的字段名称为store,请统计每个店铺的uvselect store,count(distanct uid) as uv from visit group by store;2、有一亿个用户,被存储在表User中,其中用户唯一字段Uid,用户年龄age和用...

2020-02-10 23:36:08 482

原创 spark整合kafka实战

一、如何实现sparkstreaming从kafka中读取数据1、在kafka0.10版本之前有两种方式,一种是基于receiver,一种是direct <1>、receiver:是采用kafka高级api,利用receiver接收器来接收kafka中topic的数据,从kafka接收来的数据会存储在spark的executor中,之后sparkstreaming提交的jo...

2020-02-10 21:16:32 327

原创 spark经典面试题

一、什么是宽依赖,什么是窄依赖,哪些算子是宽依赖,哪些是窄依赖1、宽依赖:一个分区对应多个分区,这就表明有shuffle过程,父分区数据经过shuffle过程的hash分区器划分子rdd。例如:groupbykey reducebykey sortbykey等操作,shuffle可以理解为数据从原分区打乱重组到新分区2、窄依赖:一个分区对应一个分区,这个过程没有shuffle过...

2020-02-10 20:32:43 263

原创 flume和logstash的区别

一、flume架构Flume的配置是真繁琐,source,channel,sink1、source负责数据产生的搜集2、channel负责数据的存储持久化3、sink负责数据的转发二、logstashinput、filter、output1、input负责数据的输入2、filter负责对采集日志进行分析,提取字段,一般都是将关键字段提取放入es中检索分析3、...

2020-02-06 09:57:18 2903 1

原创 hive的数据存储格式

hive支持hadoop中的TextFile、RCFile、SequenceFile、AVRO、ORC、Parquet格式1、TextFile每一行都是一条记录,每行都以换行符\n结尾,数据不压缩,磁盘开销大,数据解析开销大,可以结合Gzip和Bzip2使用。这种方式,hive不会对数据切分,从而也不会对数据进行并行处理2、SequenceFile是一种二进制文件,使用方便、可以分割、可以...

2020-02-06 09:30:21 218

原创 spark的开窗函数实战

1、count(*)2、row_number() over()排序3、row_number() over(partition by……分区4、【开窗嵌套开窗】rank() over()5、dense_rank() over() 函数一、count(*) 得到所有专业下所有老师的访问数:valmiddleData:DataFrame=session.sql(...

2020-02-05 22:21:43 491

原创 HTTP和TCP的区别和联系

谈到几次面试,都问了http和tcp协议的相关知识,所以总结一下!!!一、基本概念1、手机能够使用联网功能是因为底层实现了TCP/IP协议 建立一个TCP连接需要经过"三次握手" 第一次握手:客户端发送sync(syn=j)包到服务器,并进入syn_send状态,等待服务器确认 第二次握手:服务器收到sync包,必须确认客户的syn(ack=j+1)...

2020-02-05 21:05:03 275

翻译 分布式Runtime

一、任务和算子链分布式计算中,flink会将算子(operator)的子task链式组成tasks,每个task由一个线程执行,把算子链化为tasks是一个非常好的优化,他减少了线程之间的通信和缓冲,而且能增加吞吐量降低延迟二、job Manager ,task managers clientsJobManager (也成为master)用来协调分布式计算,负责进行任务调度,协调chec...

2019-05-16 17:02:24 122

翻译 Flink 编程模型

一、抽象级别Flink提供了不同级别的抽象,以及开发流处理和批处理作业1、最底层的抽象仅仅提供了有状态流,通过过程函数(Process Function)嵌入到DataStream中 API中,用户可以自由的处理来自一个或者多个数据流的事件,并使用一致的容错的状态2、DataStream API(有界或者无界数据集)以及DataSet api无界数据集3、table API 以...

2019-05-16 16:34:13 147

原创 Flink 本地执行入门

一、maven依赖<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <flink.version>1.6.3</flink.version> <java.version>1.8</j...

2019-05-15 21:55:49 569

原创 flink介绍

一、基于Flink spark和storm的对比storm、spark streaming、flink都是开源的分布式系统,具有低延迟、可扩展和容错性诸多优点,允许你在运行数据流代码时,将任务分配到一系列具有容错能力的计算机上并行运行,都提供了简单的API来简化底层实现的复杂程度。Apache Storm在Storm中,先要设计一个用于实时计算的图状结构,我们称之为拓扑(topolo...

2019-05-15 10:44:51 104

weka源码学习

目录 Weka 开发[1]-Instances类 1 Weka开发[2]-分类器类 2 Weka开发[3]-Evaluation类 3 Weka开发[4]-特征选择 4 Weka开发[5]-半监督算法 6 Weka开发[0]-导入Weka包 8 半监督算法工具SVMlin使用 12 半监督算法工具SVMlin读取数据代码介绍 14 Weka开发[6]-参数设置 16 Weka开发[7]-LibSVM 17 Weka开发[8]-ID3源码介绍 18 Weka开发[9]—KMeans源码介绍 21 Weka开发[10]—NBTree源码介绍 25 Weka开发[11]—J48源代码介绍 31 Weka开发[13]-Ensemble 39 Weka开发[14]-AdaBoost源代码介绍 42 Weka开发[15]-ZeroR源代码介绍(入门篇) 45 Multi-Label Classification(多标签分类) 介绍 47 Weka开发[16]-OneR源代码介绍 47 Weka开发[-1]——在你的代码中使用Weka 51 挖掘多标签数据综述(multi-label data mining)[Available] 62 数据流-移动超平面(HyperPlane)构造 63 Weka开发[17]——关联规则之Apriori 66 Weka开发[18]——寻找K个邻居 67 Weka开发[19]——NaiveBayes源代码分析 69 Weka开发[20]——IB1源代码分析 74 Weka开发[21]——IBk(KNN)源代码分析 77 Weka开发[22]——REPTree源代码分析(1) 81 Weka开发[23]——PART源代码分析 94 Weka开发[24]——Apriori源代码分析(1) 101 Weka开发[24]——Apriori源代码分析(2) 106 Weka开发[25]——Bagging源代码分析 112 Weka开发[26]——Voting源代码分析 116 Weka开发[27]——SMO源代码分析[1] 122 Weka开发[27]——SMO源代码分析[2] 127 weka开发[27]——SMO源代码分析[3] 132 Weka开发[27]——SMO源代码分析[4] 138

2018-02-02

sparkStreaming实战学习资料

Spark核心概念简介: Spark使用maven进行打包(减少jar包大小): Spark中的(弹性分布式数据集)简称RDD: Spark中的Transformation操作之Value数据类型的算子: Spark中的Transformation操作之Key-Value数据类型的算子: Spark中的Action操作: Transformation->map算子: Transformation->flatMap算子: FaltMap算子与Map算子的区别 Action->reduce算子: Action->collect算子: Spark懒加载: Spark本地运行只要数据不要多余的日志: Spark本地运行没有Hadoop而报错: SparkStreaming中的window窗口操作: SparkStreaming中的reduceByWindow窗口操作: SparkStreaming中的正常操作(每读2秒就计算一次): Spark中的local[2]: Spark中的处理流程图像:

2018-02-02

shakespeare.json和账户数据日志数据集ELK

莎士比亚数据集 账户数据集 日志数据集三个数据集,让学习ELK的学生学习

2018-01-02

ELK学习资料

本文档是整套的elk学习资源,内容详细 ES5.0新版本特性 1.支持lucene 6.x:索引性能提升 提升25% 磁盘占用少了 2.新增sliced scroll类型:并发遍历 新增切片类型,进行并发的遍历 3.新增profile api:查询优化 4、新增reindex:对数据进行重建 进行异步重建提高索引的性能 5.新增ingest节点 直接在es中进行简单的过滤 不需要在logstash里面过滤

2017-12-26

空空如也

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

TA关注的人

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