自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Spark入门(二)

1、RDD概述1.1 什么是RDDRDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据抽象,它代表一个不可变、可分区、里面的元素可并行计算的集合。Dataset:它是一个集合,集合里面有很多个元素Distributed:rdd中的数据是进行了分布式存储,后期方便于进行分布式计算。Resilient:弹性,意味着rdd的...

2018-12-04 00:11:29 390

原创 Scala实现简易Spark RPC通信

Scala Akka实现简易Spark RPC通信AkkaAkka 用 Scala 语言开发,基于 Actor并发模型实现,Akka 具有高可靠、高性能、可扩展等特点,使用 Akka 可以轻松实现分布式 RPC 功能。Actor 是 Akka 中最核心的概念,它是一个封装了状态和行为的对象,Actor之间可以通过交换消息的方式进行通信,每个 Actor 都有自己的收件箱(Mailbox)。...

2018-11-29 23:02:46 428

原创 Scala入门(四) 高级特性

高阶函数Scala 混合了面向对象和函数式的特性,我们通常将可以作为参数传递到方法中的表达式叫做函数作为值的函数val arr = Array(1,2,3,4)val f1 = (x:Int) => x*2arr.map(f1)//Array(2,4,6,8)匿名函数arr.map((x:Int)=>x*2)//Array(2,4,6,8)arr.map(...

2018-11-29 23:01:46 252

原创 Scala入门(三) Actor并发编程

Actor 编程Actor简介Scala 中的 Actor 能够实现并行编程的强大功能,它是基于事件模型的并发机制,Scala是运用消息的发送、接收来实现高并发的。​ Actor 可以看作是一个个独立的实体,他们之间是毫无关联的。但是,他们可以通过消息来通信。一个 Actor 收到其他 Actor 的信息后,它可以根据需要作出各种相应。消息的类型可以是任意的,消息的内容也可以是任意的。与...

2018-11-28 15:24:31 267

原创 Scala入门(二) 面向对象

Class类属性定义val 只读属性 只有gettervar 读写属性 有getter又有setterprivate val 只能在类内部和伴生对象中访问private[this] val 只能在类内部访问构造器主构造器class Student(val name:String,val age:Int)类只有一个主构造器主构造器执行时, 会执行类定义中的所有语...

2018-11-28 15:23:38 178

原创 Scala入门(一) 基础语法

Scala入门(一)1、scala概述1.1 什么是scalascala是一个具有面向对象编程和函数式编程的语言。运行于java虚拟机,并且兼容java程序。www.scala-lang.org1.2 为什么要学习scala1、优雅2、速度快3、融合到hadoop生态圈2、scala基础2.1 声明变量val a=1var b=1声明变量有2中方式,第一种v...

2018-11-28 15:23:08 218

原创 Hadoop入门(二)

Hadoop ArchivesHDFS 并不擅长存储小文件,因为每个文件最少一个 block,每个 block 的元数据都会在 NameNode 占用内存,如果存在大量的小文件,它们会吃掉NameNode 节点的大量内存。Hadoop Archives 可以有效的处理以上问题,它可以把多个文件归档成为一个文件,归档成一个文件后还可以透明的访问每一个文件。 类似压缩shell命令创建档...

2018-11-25 22:48:13 171

原创 HDFS入门(二)

HDFS元数据元数据 按类型分文件, 目录自身的属性信息文件的存储块信息 分块情况 副本个数DN的信息元数据 按形式分内存元数据包含hdfs最完整的数据磁盘元数据fsimage镜像文件包含hdfs的所有目录和文件元数据信息, 但不包括文件块位置的信息, 文件块位置信息只存储在内存中, DN加入集群时, 汇报自己所拥有的块信息给NN, 并且一直更新edit...

2018-11-25 22:47:04 185

原创 Yarn入门

Yarn入门Apache Hadoop YARN (Yet Another Resource Negotiator,另一种资源协调者)是一种新的 Hadoop 资源管理器,它是一个通用资源管理系统和调度平台,可为上层应用提供统一的资源管理和调度yarn 并不清楚用户提交的程序的运行机制yarn 只提供运算资源的调度(用户程序向 yarn 申请资源,yarn 就负责分配资源)...

2018-11-25 22:46:24 474

原创 MapReduce入门(三)

MapReduce工作MapTaskInputFormat (默认 TextInputFormat)会通过 getSplits方法对输入目录中文件进行逻辑切片规划得到 splits,有几个切片就有几个maptask将输入文件切分为splits之后 , 由 RecordReader 对 象(默认LineRecordReader)一行一行读,返回kv对 Key 表示每行首字符偏移值...

2018-11-25 22:44:49 139

原创 离线计算流程

数据采集Flume 收集服务器日志到hdfstype=taildir taildir可以监控一个目录, 也可以用一个正则表达式匹配文件名进行实时收集taildir=spooldir + exec + 支持断点续传agent1.sources = source1agent1.sinks = sink1agent1.channels = channel1agent1.sour...

2018-11-25 22:43:16 953

原创 数据仓库Hive入门( 二 )

数据仓库Hive入门( 二 )hive是将结构化文件映射为一张数据表, 通过sql操作数据的hive数据类型除了支持sql的类型外 还支持java类型 且大小写不敏感DDL结构化文件存放的位置内部表结构化文件存储在hive指定的hdfs文件夹 /user/hive/warehousesql执行删除表操作时, 对应的hdfs文件夹也被删除, 数据清空外部表s...

2018-11-22 20:06:21 294

原创 数据仓库Hive入门( 一 )

数据仓库Hive入门(一)数据仓库数据仓库,英文名称为 Data Warehouse,可简写为 DW 或 DWH数据仓库的目的是构建面向分析的集成化数据环境,为企业提供决策支持(DecisionSupport)。它出于分析性报告和决策支持目的而创建数据仓库不生产数据,数据来源于外部(数据库,日志,爬虫等) 也不消费数据, 属于提供给外部应用使用特性面向主题 面向分析, ...

2018-11-19 23:12:25 179

原创 Flume入门

Flume入门Flume 是 一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的软件Flume 的核心是把数据从数据源(source)收集过来,再将收集到的数据送到指定的目的地(sink)。为了保证输送的过程一定成功,在送到目的地(sink)之前,会先缓存数据(channel),待数据真正到达目的地(sink)后flume 在删除自己缓存的数据。Agent三个组件Source...

2018-11-19 23:10:26 233

原创 MapReduce流量统计

MapReduce流量统计源数据1363157985066 13726230503 00-FD-07-A4-72-B8:CMCC 120.196.100.82 i02.c.aliimg.com 24 27 2481 24681 2001363157995052 13826544101 5C-0E-8B-C7-F1-E0:CMCC 120.197.40.4 4 0 264 0 200...

2018-11-17 22:22:50 1085 1

原创 MapReduce入门 ( 二 )

MapReduce入门( 二 )mr编程中, 利用好key的特性排序 默认为字典序分区 默认为key的哈希值对reducertask数量取模分组 默认为key相同的为一组在mr编程中,可以把上一个mr的输出目录直接作为下一个mr的输入 mr程序能够自动识别里面什么是检验性文件 什么是成功标识文件 什么是真正的数据文件mr默认分区源码: 类HashPartitionmr...

2018-11-17 22:09:34 205

原创 MapReduce入门( 一 )

MapReduce入门简介mapreduce 分布式计算框架核心思想: 分而治之map : 将复杂任务拆分为多个小任务, 并行处理 ( 前提是各个小任务之间没有依赖关系)reduce : 将map阶段的结果进行汇总核心功能: 将用户编写的业务逻辑代码和自带默认组件整合成完整的分布式运算程序, 运行在hadoop集群上表现形式: 键值对的输入输出框架结构: 一个...

2018-11-17 22:02:08 176

原创 HDFS入门

HDFS入门Hadoop Distribute File System hadoop分布式文件系统分布式多台机器 解决文件存不下的问题存储元数据 解决数据查询不方便的问题分块存储 解决数据上传下载问题副本机制 解决数据丢失安全问题特性主从架构 主节点从节点各司其职分块存储 hadoop2....

2018-11-15 21:20:39 231

原创 Hadoop入门

Hadoop入门简介及搭建简介Hadoop是apache旗下的用java语言实现的开源软件框架狭义 : 是一个软件,框架HDFS ( 分布式文件系统) 解决了海量数据的存储问题YARN( 资源管理 任务调度) 解决了集群中资源管理的问题MAPREDUCE( 分布式计算框架 ) 解决了海量数据的计算问题广义 : hadoop是一个生态圈,是一个平台特性扩容能力 在可...

2018-11-14 21:18:46 135

原创 Nginx简单配置

NginxNginx 是一款高性能的 http 服务器/反向代理服务器及电子邮件(IMAP/POP3/smtp)代理服务器。Nginx可以用来部署静态网站, 因为nginx不支持jsp和servlet应用场景:http服务器虚拟主机反向代理 负载均衡nginx安装yum install gcc-c++yum install -y pcre pcre-devel...

2018-11-13 21:07:27 219

原创 数据库中间件MyCat

数据库中间件MyCat数据库集群产生的背景如今随着互联网的发展,数据的量级也是成指数的增长,从GB到TB到PB。对数据的各种操作也是愈加的困难,传统的关系性数据库已经无法满足快速查询与插入数据的需求。这个时候NoSQL的出现暂时解决了这一危机。它通过降低数据的安全性,减少对事务的支持,减少对复杂查询的支持,来获取性能上的提升。但是,在有些场合NoSQL是无法满足使用场景的,就比如有些使用场...

2018-11-13 21:06:48 217

原创 RedisCluster

Redis Cluster什么是Redis-Cluster为何要搭建Redis集群。Redis是在内存中保存数据的,而我们的电脑一般内存都不大,这也就意味着Redis不适合存储大数据,适合存储大数据的是Hadoop生态系统的Hbase或者是MongoDB。Redis更适合处理高并发,一台设备的存储能力是很有限的,但是多台设备协同合作,就可以让内存增大很多倍,这就需要用到集群。Redis集群...

2018-11-13 21:04:11 188

原创 Zookeeper集群

Zookeeper集群大部分分布式应用需要一个主控、协调器或者控制器来管理物理分布的子进程。目前,大多数都要开发私有的协调程序,缺乏一个通用机制,协调程序的反复编写浪费,且难以形成通用、伸缩性好的协调器,zookeeper提供通用的分布式锁服务,用以协调分布式应用。所以说zookeeper是分布式应用的协作服务。zookeeper作为注册中心,服务器和客户端都要访问,如果有大量的并发,肯定会...

2018-11-13 21:03:17 624

原创 分布式和集群

分布式和集群集群集群是一种计算机系统, 它通过一组松散集成的计算机软件和/或硬件连接起来高度紧密地协作完成计算工作。在某种意义上,他们可以被看作是一台计算机。集群系统中的单个计算机通常称为节点,通常通过局域网连接,但也有其它的可能连接方式。集群计算机通常用来改进单个计算机的计算速度和/或可靠性。一般情况下集群计算机比单个计算机,比如工作站或超级计算机性能价格比要高得多。集群拥有以下两个特点...

2018-11-13 21:02:21 143

原创 ngnix+lua+js埋点 实现自定义日志采集

ngnix+lua+js埋点 实现自定义日志采集1 收集数据的页面js埋点: 在想要手机数据的页面预先放一段js代码, 当用户发生行为时, 触发js方法, 收集数据,发到后端http://192.168.4.101/index.html 这里的index.html page1.html page2.html 放在101的tomcat中在页面js中添加点击事件 点击事件触发后, ...

2018-11-13 21:00:09 1565

原创 Zookeeper

Zookeeperzookeeper是一个分布式协调服务的开源框架,解决分布式集群中应用系统的一致性问题zookeeper本质是一个分布式的小文件存储系统,基于目录树方式主从集群:主角色 leader master 大哥从角色 follower slave 小弟主从角色各司其职,从角色要收到主角色的管理。(常见的是一主多从)主备集群:主角色 active...

2018-11-13 20:59:43 180

原创 Shell编程

Shell编程shell是C语言写的程序 通过shell可以访问系统内核shell既是命令语言, 又是程序设计语言shell编程一般是指编写shell script脚本编程shell编程只需要 文本编辑器和脚本解释器bash是大多数linux默认的shell ( /etc/shells )基本格式hello.sh 扩展名不影响脚本执行 见名知意 如果用php编写脚本 就用....

2018-11-10 16:25:07 192

原创 Linux加强

Linux加强查找grep 文本搜索工具,使用正则表达式搜索文本 grep [option] pattern [file]ps -ef | grep sshd 查找指定 ssh 服务进程ps -ef | grep sshd | grep -v grep 查找指定服务进程,排除 grep 本身ps -ef | grep sshd –c 查找指定进程个数cat a.txt ...

2018-11-10 11:31:38 195

原创 VMware SSH

VMware虚拟网络网卡(网络适配器 network adapter) : 在网络上拥有独一无二的MAC地址交换机 : 可以把一些电脑连接在一起组成一个局域网虚拟网桥: 一个局域网与另一个局域网之间建立连接的桥梁。网桥两边网络拓扑地位一样虚拟DHCP服务器: 给内部网络自动分配 IP 地址 作为对所有计算机作中央管理的手段。虚拟net服务器( Network Address T...

2018-11-10 11:30:43 891

原创 MongoDB简单使用(java)

MongoDBMongoDB 是一个跨平台的,面向文档的数据库,是当前 NoSQL 数据库产品中最热门的一种。它介于关系数据库和非关系数据库之间,是非关系数据库当中功能最丰富,最像关系数据库的产品。它支持的数据结构非常松散,是类似JSON 的 BSON 格式,因此可以存储比较复杂的数据类型。MongoDB 最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可...

2018-11-08 21:25:11 238

原创 MavenProfile

MavenProfile在我们平常的java开发中,会经常使用到很多配制文件(xxx.properties,xxx.xml),而当我们在本地开发(dev),测试环境测试(test),线上生产使用(product)时,需要不停的去修改这些配制文件,次数一多,相当麻烦。现在,利用maven的filter和profile功能,我们可实现在编译阶段简单的指定一个参数就能切换配制,提高效率,还不容易出错...

2018-11-08 19:37:38 309

原创 任务调度SpringTask

任务调度SpringTask在企业级应用中,经常会制定一些“计划任务”,即在某个时间点做某件事情,核心是以时间为关注点,即在一个特定的时间点,系统执行指定的一个操作。常见的任务调度框架有Quartz和SpringTask等。配置spring.xml 添加task注解驱动<?xml version="1.0" encoding="UTF-8"?><b

2018-11-08 19:37:15 111

原创 简单微信扫码支付集成(java)

微信扫码支付(java)项目中引入微信支付,按API要求组装参数,以XML方式发送(POST)给微信支付接口(URL),微信支付接口也是以XML方式给予响应。程序根据返回的结果(其中包括支付URL)生成二维码或判断订单状态。1.导入SDK依赖和httpClienthttpclient用于在后端发送请求<dependency> <groupId>com.g.

2018-11-05 21:42:08 522

原创 二维码生成插件qrious(纯JS)

二维码生成插件qrious(纯JS)二维码又称QR Code,QR全称Quick Response,是一个近几年来移动设备上超流行的一种编码方式,它比传统的Bar Code条形码能存更多的信息,也能表示更多的数据类型。信息容量大, 可以容纳多达1850个大写字母或2710个数字或500多个汉字二维码容错级别L级(低) 7%的码字可以被恢复。M级(中) 的码字的15%可以被恢复。Q级(...

2018-11-05 21:40:33 1582

原创 分布式ID生成器snowflake

分布式ID生成器snowflakesnowflake算法是twitter开源的spring容器管理<bean id="idWorker" class="util.IdWorker"> <!-- 进程ID --> <constructor-arg index="0" value="0"></construc

2018-11-05 21:40:16 459

原创 redis SerializationException

org.springframework.data.redis.serializer.SerializationException: Cannot deserialize; nested exception is org.springframework.core.serializer.support.SerializationFailedException:使用redis时,报出redis序列化...

2018-11-04 21:46:23 1778

原创 跨域解决CORS

跨域解决CORS1.JS跨域js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据。只要协议、域名、端口有任何一个不同,都被当作是不同的域。localhost:9000中的ajax 向localhost:9001中的controller发送请求 就是跨域没有解决跨域请求时,如果跨域了,会报...

2018-11-03 23:38:42 216

原创 购物车实现(cookie+redis)

购物车实现(cookie+redis)用户未登录, 添加商品到购物车时, 将购物车信息存储到cookie中用户登录后,将cookie中的购物车合并到redis中,删除cookie信息,添加商品时,直接添加到redis中1.controller@Autowiredprivate HttpServletResponse response;controller中可以直接autowire...

2018-11-03 23:17:08 2906

原创 CAS单点登录

CAS单点登录解决项目部署在多个服务器中时,产生的登录问题 SSO(Single Sign On)当用户在一个服务器登录后,访问同系统的其他服务器无需再次登录用户只需要登录一次就可以访问所有相互信任的应用系统。比如 搜索模块 商品模块 订单模块 部署在不同服务器用户在搜索服务器登录,那么在访问商品 订单时 也是登录状态这个问题是传统session无法解决的cas单点登录基于cook...

2018-11-02 22:20:41 244

原创 SpringBoot短信微服务

SpringBoot短信微服务springboot+activemq+阿里大鱼 做得发送验证码功能当mq监听器监听到消息队列有消息时,取出消息,发送短信1.SpringBootspringboot是对spring的封装, 并不是新的技术解决了spring 配置文件太多,jar包冲突的问题让更多人的人更快的对 Spring 进行入门体验,为 Spring 生态系统提供了一种固定的...

2018-10-31 19:46:35 577

空空如也

空空如也

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

TA关注的人

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