自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(83)
  • 资源 (7)
  • 收藏
  • 关注

原创 java中的instanceof为啥不能和泛型类去比较?

1. 现象如下,当我用参数e去和Array类中的泛型E去做比较的时候提示不合法package array;/** * 自定义一个泛化动态数组工具类,类似与ArrayList集合类 * @author lilei * @description * @Date 2019/6/23 22:08 * @Version 1.0 **/public class Array<E&g...

2019-06-23 23:23:51 6809 1

原创 es在数据量很大的情况下(数十亿级别)如何提高查询性能

待分析

2019-02-12 16:34:28 1396

原创 es写入数据的工作原理和查询数据的工作原理

待分析

2019-02-12 16:34:08 578

原创 es的分布式架构原理

待分析

2019-02-12 16:33:27 293

原创 如何保证消息队列里面的消息不发生丢失情况

待分析

2019-02-12 16:32:47 1411 10

原创 如何处理消息丢失的问题?

待分析

2019-02-12 16:17:46 547

原创 如何保证消息队列中的消息不被重复消费

待分析

2019-02-12 16:14:03 1428 2

原创 如何保证消息队列的高可用性

待分析

2019-02-12 16:12:09 349

原创 hashmap碰撞问题以及解决方案

1. 碰撞问题产生的原因hashmap在进行put操作的时候会根据key的hashcode()方法去获取hash值,在根据这个hash值去找哈希桶的位置,有时候可能某几个key的hashcode的值相同,导致了hash碰撞的产生。2.解决方法jdk中的hashmap采用的是拉链法去解决整个问题的,也就是说当相同的hashcode值找到同样一个位置的时候,采用链表存储,当有新的put操作...

2019-02-12 09:09:06 2428

原创 AQS详解

1.AQS是什么?AQS是AbstractQueuedSynchronizer的简称,它是一个java的底层同步工具类,用一个int类型的变量表示同步状态,并且提供了一系列的CAS操作来管理这个同步状态2.同步队列   同步队列是AQS中 很重要的一部分,它是一个双端队列,遵循FIFO原则,主要的作用是用来存放在锁上阻塞的线程,当一个线程尝试获取锁的时候,如果已经被占用的话,那么当前...

2019-02-11 15:29:21 186

原创 redis哨兵主备切换的数据丢失问题:异步复制、集群脑裂

1 减少异步复制的数据丢失简单来说就是设置min-slaves-max-lag 这个配置 可以确保slaves在指定的时间内 复制数据没完成或者ack时间没在规定时间内,则拒绝写入2 减少脑裂的数据丢失min-slaves-to-write 1min-slaves-max-lag 10如果一个master出现了脑裂,跟其他slave丢了连接,那么上面两个配置可以确保说,如果不能继...

2019-01-16 16:46:36 753

原创 redis断点续传、无磁盘化复制、过期key处理

1、主从复制的断点续传1)redis的master node中会常见一个backlog2)master和slave都会保存一个replica offset,这个offset就是保存在backlog中3)如果slave和master因为网络原因导致断掉了,重新连接上去的时候会从backlog中的offset开始复制4)如果slave中的replica offset在master中的b...

2019-01-16 16:45:57 796

原创 redis如何通过读写分离来承载读请求QPS超过10万+

单机的redis大概支持的qps在几万左右,所以当你的qps到10万+的时候就要通过redis的读写分离来承载高并发的读了。1、redis replication基本原理1)首先slave连接master的时候会发送一个sync的命令2)master会去后台搞一个线程去把自己当前的缓存数据生成一份rdb文件,然后发送给slave3)slave接收到rdb文件以后通过rdb去将数据加...

2019-01-16 16:45:33 1172

原创 redis的RDB和AOF两种持久化机制的工作原理

1.RDB持久化机制介绍简单来说就是将redis内存中的数据生成快照存储到硬盘中去。2.RDB持久化机制执行流程1)执行bgsave的时候,redis的主进程会检查是否存在子进程在执行rdb持久化任务,如果有的话直接返回。2) 如果没有的话redis主进程会fork一个子进程出来去执行rdb持久化任务操作,fork操作的时候会阻塞主进程,fork操作完成后会发消息给主进程,从而不再...

2019-01-16 16:45:03 203

原创 redis主从架构版安装

step1. 将准备好的tar.gz文件上传到linux服务器,解压缩并删除压缩包 a.解压缩命令 tar -zxvf redis.xxx.tar.gz b.删除压缩包命令 rm -rf redis.xxx.tar.gzstep2.进入到redis的解压缩目录,编译redisyum -y install gccmake MALLOC=libcmake &amp;&amp; ...

2019-01-16 10:38:39 99

原创 springboot整合RabbitMQ,消费失败无响应问题?

待解决

2018-12-23 12:36:17 1629 5

原创 Spark性能调优---fastutil优化数据格式

Spark中应用fastutil的场景:1、如果算子函数使用了外部变量;那么第一,你可以使用Broadcast广播变量优化;第二,可以使用Kryo序列化类库,提升序列化性能和效率;第三,如果外部变量是某种比较大的集合,那么可以考虑使用fastutil改写外部变量,首先从源头上就减少内存的占用,通过广播变量进一步减少内存占用,再通过Kryo序列化类库进一步减少内存占用。2、在你的算子函数里,...

2018-11-30 17:08:52 154

原创 spark性能调优---Kryo序列化

1.为啥要用Kryo序列化Spark算子操作的时候如果用到外部数据的话,都会对外部数据进行序列化,Spark内部是使用Java的序列化机制,ObjectOutputStream / ObjectInputStream,对象输入输出流机制,来进行序列化这种默认序列化机制的好处在于,处理起来比较方便;也不需要我们手动去做什么事情,只是,你在算子里面使用的变量,必须是实现Serializable接口...

2018-11-30 16:31:12 248

原创 spark性能调优---广播变量的使用

Broadcast VariablesBroadcast variables allow the programmer to keep a read-only variable cached on each machine rather than shipping a copy of it with tasks. They can be used, for example, to give e...

2018-11-30 15:24:57 216

原创 spark运维监控:查看历史作业的webUI

1、停止集群2、配置spark-env.shexport SPARK_HISTORY_OPTS="-Dspark.history.ui.port=18080 -Dspark.history.retainedApplications=50 -Dspark.history.fs.logDirectory=hdfs://centos-5:9001/spark-event"3、重启集群4、...

2018-11-29 19:10:43 1642

原创 spark作业监控:standalone模式下查看历史作业

1.关闭现有的master和worker进程2.修改spark-defaults.conf文件,配置三个属性spark.eventLog.enabled truespark.eventLog.dir hdfs://centos-5:9001/spark-eventspark.eventLog.compress true...

2018-11-29 19:08:44 830

原创 查看spark对应各种框架的版本情况

1.下载你使用的spark版本源码2.打开源码里面的pom文件3.查找你要用的框架版本 例如  我要查我现在用的spark2.2.1对应的hive版本&lt;properties&gt; &lt;project.build.sourceEncoding&gt;UTF-8&lt;/project.build.sourceEncoding&gt; &lt;proj...

2018-11-27 16:18:41 5397

原创 spark常见算子操作

package com.yzc.lilei.spark.transformoperate;import org.apache.spark.SparkConf;import org.apache.spark.api.java.JavaPairRDD;import org.apache.spark.api.java.JavaRDD;import org.apache.spark.api.j...

2018-11-22 20:37:07 337

转载 矩阵求导公式

原文地址:矩阵求导公式【转】作者:三寅今天推导公式,发现居然有对矩阵的求导,狂汗--完全不会。不过还好网上有人总结了。吼吼,赶紧搬过来收藏备份。基本公式:Y = A * X --&gt; DY/DX = A'Y = X * A --&gt; DY/DX = AY = A' * X * B --&gt; DY/DX = A * B'Y = A' * X' * B --&gt; DY/...

2018-09-26 14:47:57 1352

原创 phoenix查询日期范围

官网太简易了  找官网的内置函数一个个试出来的  有点佩服我自己  哈哈哈select * from "T_BCAllUserActLog" WHERE "reserved8" is not null and CAST(TO_DATE("reserved8") AS DATE) between CAST(TO_DATE('2018-09-18 00:00:00') AS DATE) and...

2018-09-19 10:22:28 2517

转载 二项分布、指数分布与泊松分布的关系

1、泊松分布由法国数学家西莫恩·德尼·泊松(Siméon-Denis Poisson)在1838年时发表;若X服从参数为的泊松分布,记为X~P(),泊松分布的概率分布函数:参数λ是单位时间(或单位面积)内随机事件的平均发生率。统计学上,满足三个条件,即可用泊松分布(1)小概率事件,两次以上事件发生概率趋于0;(2)事件发生的概率独立且互不影响;(3)发生概率时稳定的;...

2018-09-10 21:35:35 7624

转载 浅显易懂——泰勒展开式

第一次见到泰勒展开式的时候,我是崩溃的。泰勒公式长这样:好奇泰勒是怎么想出来的,我想,得尽量还原公式发明的过程才能很好的理解它。首先得问一个问题:泰勒当年为什么要发明这条公式?因为当时数学界对简单函数的研究和应用已经趋于成熟,而复杂函数,比如:这种一看就头疼的函数,还有那种根本就找不到表达式的曲线。除了代入一个x可以得到它的y,就啥事都很难干了。所以泰勒同学就迎难而上!决定让这些式...

2018-09-01 16:58:52 14040 13

原创 linux查看文件夹目录大小

1.磁盘还剩多少空间: df -h2.当前的文件夹下的磁盘使用情况: du --max-depth=1 -h3.查看单个文件夹目录大小: du -sh 文件或文件夹路径 

2018-08-27 14:03:03 12711

转载 阿里P7/P8学习路线图——技术封神之路

一、基础篇JVMJVM内存结构堆、栈、方法区、直接内存、堆和栈区别Java内存模型内存可见性、重排序、顺序一致性、volatile、锁、final垃圾回收内存分配策略、垃圾收集器(G1)、GC算法、GC参数、对象存活的判定JVM参数及调优 Java对象模型oop-klass、对象头HotSpot即时编译器、编译优化类加载机制classLoader...

2018-08-03 09:24:58 334 2

原创 java操作phoenix查询指定table_schema中的数据

原因:    1.phoenix映射hbase表的时候,如果hbase表是存放在某个命名空间下面的话,phoenix创建表的时候必须创建table_schema以后在取创建表,然后才能映射成功解决方法:        1.如果用./sqlline.py 命令去启动的话,访问schema中的表数据的时候要先使用use &lt;table_schema&gt;命令先指定特定的schema,然后在去访问...

2018-06-25 10:28:26 4958 2

原创 phoenix对hbase进行映射

1.查看phoenix的版本,如果版本是4.10之前的,映射关系是根据列来映射的,phoenix可以通过create table(...)来映射2.如果版本是4.10以后的,则只能通过视图来创建,create view(...),才能查询到hbase中的数据...

2018-06-22 10:16:05 840

转载 数学基础之列联表分析2——独立性检验(卡方检验)

1.       独立性检验步骤     Step1:建立原假设     H0:两变量相互不独立;H1:两变量相互独立     Step2:计算自由度与理论频数    Step3:计算统计量     Step4:查χ2方分布临界值表,确定接受域例:对表1所示频数分布表,以95%显著水平,检验色觉与性别是否有关。解:    Step1:H0:色觉与性别相互不独立;H1:色觉与性别相互独立    St...

2018-06-16 22:47:49 30735 4

转载 数学基础之曼哈顿距离,欧式距离,余弦距离

曼哈顿距离,欧式距离,余弦距离1.曼哈顿距离曼哈顿距离又称马氏距离(Manhattan distance),还见到过更加形象的,叫出租车距离的。具见上图黄线,应该就能明白。计算距离最简单的方法是曼哈顿距离。假设,先考虑二维情况,只有两个乐队 x 和 y,用户A的评价为(x1,y1),用户B的评价为(x2,y2),那么,它们之间的曼哈顿距离为 2.欧式距离欧式距离又称欧几里得距离或欧几里得度量(Eu...

2018-06-15 15:51:21 3297

原创 数学基础之方差、标准差和协方差三者之间的定义与计算

理解三者之间的区别与联系,要从定义入手,一步步来计算,同时也要互相比较理解,这样才够深刻。方差方差是各个数据与平均数之差的平方的平均数。在概率论和数理统计中,方差(英文Variance)用来度量随机变量和其数学期望(即均值)之间的偏离程度。在许多实际问题中,研究随机变量和均值之间的偏离程度有着很重要的意义。标准差方差开根号。协方差在概率论和统计学中,协方差用于衡量两个变量的总体误差。而方差是协方差...

2018-06-14 16:31:55 6127

原创 sparkRDD算子系列-treeAggregate算子

1.函数定义:def treeAggregate[U: ClassTag](zeroValue: U)( seqOp: (U, T) =&gt; U, combOp: (U, U) =&gt; U, depth: Int = 2): U = withScope2.函数解释:     aggregate需要三个参数(初始值zeroValue,函数seqOp和函数combOp)...

2018-06-14 10:41:18 421

原创 spark性能调优---rdd重构和rdd持久化

1.尽量去复用RDD,差不多的RDD,可以抽取称为一个共同的RDD,供后面的RDD计算时,反复使用。2.公共RDD一定要实现持久化(persite,catch),持久化可以持久化到内存(内存不够可以存放到磁盘里面)3.序列化我们需要持久化的RDD,序列化会节省空间,不过要使用的时候必须反序列化4.为了数据的高可靠性,而且内存充足,可以使用双副本机制,进行持久化持久化的双副本机制,持久化...

2018-06-07 14:22:09 386

原创 spark性能调优---调节并行度

并行度:其实就是指的是,Spark作业中,各个stage的task数量,也就代表了Spark作业的在各个阶段(stage)的并行度。如果不调节并行度,导致并行度过低,会怎么样?假设,现在已经在spark-submit脚本里面,给我们的spark作业分配了足够多的资源,比如50个executor,每个executor有10G内存,每个executor有3个cpu core。基本已经达到了集群或...

2018-06-06 19:39:08 268

原创 Spark核心RDD:combineByKey函数详解

为什么单独讲解combineByKey?因为combineByKey是Spark中一个比较核心的高级函数,其他一些高阶键值对函数底层都是用它实现的。诸如 groupByKey,reduceByKey等等如下给出combineByKey的定义,其他的细节暂时忽略(1.6.0版的函数名更新为combineByKeyWithClassTag)def combineByKey[C]( cr...

2018-06-04 09:49:29 389

原创 spark中map和flatMap的区别

不同点:map操作是对RDD中每个元素进行操作的,操作的结果是一对一的而flatMap操作也是对RDD中每个元素进行操作的,但是它的操作结果是一对一或者是一对多的如spark入门的单词统计案例中对单词的分割就要用到flatMap,因为分割以后的结果比元素要多用map就不行:    package com.lilei.rdd;import org.apache.spark.SparkConf;...

2018-06-04 08:31:28 1380

原创 sparksql查询hbase中的数据

1.demo环境说明    demo是根据spark2.2+hadoop2.7+hbase1.3(亲测版本兼容,其他不同版本可能会出现不兼容的情况)2.代码案例package com.yzc.test;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.hbase.HBaseConfiguration;i...

2018-05-29 16:38:14 3929 2

深入理解JVM & G1 GC

深入jvm垃圾回收 调优细节。

2019-04-18

net-snnp.exe

支持64为操作系统,快快下载把。。。

2018-06-04

香港科技大学TensorFlow三天速成

想快速入门tensorflow 的小伙伴看过来了,你值得拥有这本

2018-06-04

高等数学积分推导全过程

积分推导全过程,适合想学机器学习的人看。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

2018-04-23

通过pip命令安装scrapy必备

pypiwin32-220-cp36-none-win_amd64 通过pip命令安装。。。。。。。。。。。。。。。。。。。。。

2018-04-17

k-means算法详细解释

更加深入的了解聚类算法中的k均值算法。。。。。。。。。。。。。。。。

2018-04-10

空空如也

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

TA关注的人

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