自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

原创 搭伪分布式集群时VMware虚拟机 NAT模式 配置静态ip

网上好多博客的讲解不完全,埋了很多坑为了xshell访问多个Ubuntu发现Linux公社的一篇良心贴,网关、静态IP、这些照着步骤走就行。https://www.linuxidc.com/Linux/2017-02/140135.html

2020-12-28 16:48:17 188

原创 关于spring cloud生态和大数据的的一些思考

Java开发与大数据开发是两条不同的路,但最后殊途同归,目的都是做集群。一、Java开发技术栈有Spring、SpringMVC、Mybatis、SpringCloud、SpringBoot二、大数据开发

2020-12-22 17:00:48 897

原创 Flink的CEP机制实现恶意登录检测

一、思路使用登录日志文件来进行代码测试,日志格式如下://用户id、IP、登录成功或失败、时间戳76456,110.136.166.128,success,15584308538345,46.105.14.53,success,155843085576456,110.136.166.128,success,155843085776456,110.136.166.128,success,155843085476456,110.136.166.128,fail,155843085976456,1

2020-12-08 12:57:26 571

原创 mapreduce中FileInputFormat与TextInputFormat解析以及HDFS小文件优化

一、FileInputFormat与TextInputFormat在map阶段,文件先被切分成split块,而后每一个split切片对应一个Mapper任务FileInputFormat这个类先对输入文件进行逻辑上的划分,以128M为单位,将原始数据从逻辑上分割成若干个split,每个split切片对应一个Mapper任务TextInputFormat这个类随后将每个split块中的每行记录解析成一个一个的键值对,即<k1,v1>二、HDFS小文件的优化hdfs大量的小文件

2020-10-28 16:23:17 555

原创 Kylin的两种核心算法与cube构建优化

kylin是即席查询很典型的工具,通过预计算构建cube,可以达到毫秒级查询体验,十分快!同时支持REST接口,通过该接口进行应用访问查询。kylin的元数据以及缓存都存储在hbase中。一、核心算法逐层构建算法(layer)该算法构建cube的思想就是逐层,从高维度到低维度,按维度数逐层减少来计算,每个层级的计算(除了第一层,它是从原始数据聚合而来),是基于它上一层级的结果来计算的。比如,[Group by A, B]的结果,可以基于[Group by A, B, C]的结果,通过去掉 C .

2020-09-27 11:47:46 305

原创 Kafka的选举机制

一、broker选举(也叫控制器选举)Kafka架构里有生产者,消费者和broker,第一个启动的broker会去zookeeper里注册,成为leader,而后面去zookeeper注册的broker则会收到异常,只能注册watch对象,对leader进行监控,如果leader broker挂了,其他第一个注册的broker成为新的leader。并更新ISR副本队列。二、分区副本选举每一个partition都有多个副本,一般是2-3个副本,首领副本(leader):也就是leader主副本,每个

2020-09-13 10:39:51 638

原创 MySQL索引优化总结

1.MySQL常用的两种引擎Innodb和Myisam,Innodb是聚集索引,即索引和数据为一个文件,表结构为另一个文件,Myisam是非聚集索引,表结构、索引、数据分别为三个文件。这两种引擎都是面向表的。2.这两种引擎对应的索引结构两种引擎均采用B+树进行索引的存储,其区别在于B+树叶节点上,Innodb存储的是数据(索引和数据存储为一个文件),而Myisam存储是指向数据地址的指针(因为其数据和索引文件分开了)。3.索引类型UNIQUE唯一索引不可以出现相同的值,可以有NULL值。IND

2020-09-09 16:01:16 91

原创 Linux中chmod和unmask权限的详解

三个数字的含义,例如chmod 777,第一个7代表用户的权限,第二个7代表用户所属组的权限,第三个7代表该组外其他用户权限读-r:4,写-w:2,执行-x:1,这是三种类型权限的数字,rwx=4+2+1=7,代表读写执行权限均有。新建一个文件默认权限是644(-wr-r-r-),创建一个新目录,权限默认是755(-wrx-rx-rx-)除了chmod,还有unmask这个命令可以改权限,比如unmask 022 touch,则意味着权限是644,unmask有屏蔽的意思,新建文件默认权限最高是66.

2020-09-05 11:44:02 965

原创 centos安装docker-亲测可以完美安装

经历了网上各种坑之后总结,首先装docker照着官方文档是用的国外的镜像,必须换国内的这里用清华的cd /etc/yum.repos.d/wget https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo替换默认下载源sed -i "s@https://download.docker.com/@https://mirrors.tuna.tsinghua.edu.cn/docker-ce/@g" /etc

2020-08-14 15:31:10 118

原创 Hadoop调优的几个参数

HDFS:hdfs-site.xml中的dfs.namenode.handler.count=20 * log2(Cluster Size),比如集群规模为 8 台时,此参数设置为 60,该参数决定有多少线程数用来处理不同 DataNode 的并发心跳以及客户端并发的元数据操作Yarn:yarn-site.xml 中的yarn.nodemanager.resource.memory-mb,该参数决定yarn能使用的最大物理内存总量,默认是 8192(MB),yarn不会检测物理机内存大小,需要手动指定。.

2020-08-11 22:13:38 122

原创 Kafka生产者与消费者分区策略

一、生产者分区分区的目的在于可以提高并发,并在可在集群中扩展以适应不同大小的数据producer发送的数据会被封装成Producer Recorder对象在生成Producer Recorder对象时指明partition的情况下,直接进入对应的partition分区没有指明partition值,但有key值,将key的hash值与topic的分区数进行取余,进入对应的分区没有partition和key值,则随机生成一个整数(后面每次调用在该整数基础上自增),将该整数和topic的分区数取余,进

2020-08-06 15:10:05 515

原创 Java内存分配机制

在jvm中,内存分为方法区,虚拟机栈,堆,本地方法栈,程序计数器方法区:很少产生垃圾回收,线程共享,用来加载类的常量,类的信息。虚拟机栈:存储局部变量表,操作数栈,线程私有本地方法栈:只为Native方法服务堆:几乎所有对象在这里创建,所有线程共享,垃圾回收频率很高程序计数器:通过改变这个计数值可以选取下一条需要执行的字节码指令,分支、循环、跳转、异常处理和线程恢复等功能都需要依赖这个计数器完成内存分配策略对象优先在堆的Eden区分配。大对象直接进入老年代。长期存活的对象将直接进入老

2020-07-28 23:21:53 117

原创 Redis之RDB与AOF

由于Redis是内存数据库,数据有保存的需求,AOF与RDB都是redis的持久化方式,AOF和RDB文件的存储后缀分别为*.aof *.rdb一、RDBRedis创建一个fork子进程来进行持久化,写完后才会替换掉上一次保存的文件,redis启动时会自动恢复*.rdb文件里面的数据配置文件中设置参数:#在配置文件中进行参数设置,RDB的触发命令是:save 60 5#意味着在60秒内达到5次操作以上则触发存储shutdown#shutdown命令关闭redis也会触发保存二、AOFA

2020-07-17 10:16:18 124

原创 Elastic search基于RestFul的基础操作

用kibana的开发工具来编写代码,elasticsearch head插件可视化查看索引一、创建索引#创建名为test1的索引,类型为type1,id为1#如果使用post命令创建,则不需要指定idPUT /test1/type1/1{"name":"测试1"}在head插件里可以看到插入的索引二、定义索引规则PUT /test2{ "mappings": { "properties": { "name":{ "type": "text"

2020-07-13 19:39:06 261

原创 RDD、DataFrame、DataSet转换

在spark中,这三种数据集比较重要,DataFrame和DataSet都是基于RDD的,而DataFrame和RDD相比,则多了表结构信息,即schema,而DataSet则又比DataFrame多了类信息。DataSet是面向对象的接口,DataFrame则是面向spark SQL的接口。这三者都是懒执行,需要action算子做三个数据集之间的转换时,需要引入implicitsimport spark.implicits...

2020-07-07 22:48:49 220

原创 Spark里RDD持久化的三个算子

要将计算过程中的数据保存下来,就需要用到三种算子,分别是cache,persist,checkpoint。一、cache算子该算子是懒执行算子,需要action算子触发执行,默认将数据存储在内存中,//用法var rdd=sc.textfile("")rdd=rdd.cache()二、persist算子该算子同样是懒执行算子,其可以手动的指定持久化级别级别说明MEMORY_ONLY只保存在内存,如果内存不够,可能持久化失败,未序列化MEMORY_AND_DISK

2020-06-29 22:42:30 379

原创 Mycat实现数据库垂直、水平拆分

一、基本概念:垂直拆分是把不同的表拆到不同的数据库中,而水平拆分是把同一个表拆到不同的数据库中。二、垂直分片修改Mycat的schema.xml切换到mycat目录,命令是vi schema.xml。#schema.xml里面需要修改的配置内容<table name="news" primaryKey="id" dataNode="dn1" type="global"/><table name="comments" primaryKey="id" dataNode="dn2"

2020-06-28 23:13:21 475

原创 Scala语言中的函数

最近学Scala的函数有点灵活,和Java或者python都有不小的区别,不是很好理解,在此归纳总结一下。一、匿名函数传一个int型的参数进去,返回x+1。在后面的代码直接调用inc即可。Scala是变量名在前,类型在后。var inc = (x:Int) => x+1var x = inc(7)-1二、函数柯里化柯里化是将一起传入的多个参数单独分开def add(x:Int,y:Int)=x+y#柯里化后def add(x:Int)(y:Int) = x + y其等价于有内含

2020-06-25 21:59:10 184

原创 Hive优化的几种方法

一、local模式由于hive是使用mapreduce来执行,在只有少量数据的时候,执行效率反而不如单台机器执行效率高。通过设置 set hive.exec.mode.local.auto=true,但当文件大小超过128m或者数量大于四则会换到集群模式,可以由下面两个命令设置hive.exec.mode.local.auto.inputbytes.max=134217728(128m)hive.exec.mode.local.auto.input.files.max=4二、join做join

2020-06-17 11:29:12 511

原创 scrapy爬虫-链家网

一、scrapy环境准备需要在Anconada里面装scrapy的包以及依赖包,下面的包也装一下。在pycharm里面配置使用Anconada的环境。这里尤其要注意,Anconda的安装路径不能有中文和空格,否则pycharm无法识别Anconda环境,我在这个坑折腾了几个小时才找到原因。1、Matplotlib2、pandas3、sklearn4、json5、requests6、logging7、redis8、selenium9、multiprocessing10、pyquery1

2020-06-09 17:16:41 914

原创 CDH的配置总结

一、各个节点的ip地址以及主机名的更改1.通过ifconfig命令查询Ubuntu网卡名称,之后修改网卡配置文件。sudo vi /etc/network/interfaces将配置文件里面的内容改为auto ens33iface ens33 inet staticaddress 192.168.9.11netmask 255.255.255.0gateway 192.168.9.22.接下来把/etc/hostname和/etc/hosts改了就行3.关闭防火墙,命令是sudo

2020-05-28 22:45:39 926

空空如也

空空如也

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

TA关注的人

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