自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 fastJson

概述fastjson是可用于将Java对象转换为JSON字符串,也可以用于将JSON字符串转换成Java对象的一个Java库。fastjson可以任意Java对象,包括没有预先声明的对象类型。JSON的语法也很简单:1、 数据在键值对中2、 数据由逗号分隔3、花括号保存对象4、方括号保存数组GitHub地址:https://github.com/alibaba/fastjson...

2020-04-10 23:06:23 148

原创 okhttp3

I.简介HTTP是现代应用常用的一种交换数据和媒体的网络方式,高效地使用HTTP能让资源加载更快,节省带宽。OkHttp是一个高效的HTTP客户端,它有以下默认特性:支持HTTP/2,允许所有同一个主机地址的请求共享同一个socket连接 连接池减少请求延时 透明的GZIP压缩减少响应数据的大小 缓存响应内容,避免一些完全重复的请求当网络出现问题的时候OkHttp依然坚守自己的职责...

2020-04-10 22:57:45 173

原创 Hive

1.什么是hive1.1.hive基本思想Hive是基于Hadoop的一个数据仓库工具(离线),可以将结构化的数据文件映射为一张数据库表,并提供类SQL操作(CRUD)功能。1.2.为什么使用Hive直接使用hadoop所面临的问题人员学习成本太高项目周期要求太短MapReduce实现复杂查询逻辑开发难度太大 Spark为什么要使用Hive操作接口采用类SQL语法,提供快速开...

2020-04-09 13:15:43 366

原创 Spark--数据的读取与保存

一、动机  我们已经学了很多在 Spark 中对已分发的数据执行的操作。到目前为止,所展示的示例都是从本地集合或者普通文件中进行数据读取和保存的。但有时候,数据量可能大到无法放在一台机器中,这时就需要探索别的数据读取和保存的方法了。  Spark 及其生态系统提供了很多可选方案。本章会介绍以下三类常见的数据源。  • 文件格式与文件系统:对于存储在本地文件系统或分布式文件系统(比如 N...

2020-03-26 10:27:55 1056

原创 PageRank算法

一、PageRank算法简介(摘自《Spark快速大数据分析》)PageRank是执行多次连接的一个迭代算法,因此它是RDD分区操作的一个很好的用例。算法会维护两个数据集:一个由(pageID,linkList)的元素组成,包含每个页面的相邻页面的列表;另一个由(pageID,rank)元素组成,包含每个页面的当前排序值。它按如下步骤进行计算。将每个页面的排序值初始化为1.0。...

2020-03-23 11:09:09 431

原创 pairRDD的CombineByKey

RDD的CombineByKey使用方法这是一个很抽象化的方法,一开始看得一头雾水。但是大部分的聚合函数都基于这个方法去实现的,比如常用的reduceByKey,所以这个方法很重要。方法参数def combineByKey[C]( //在找到给定分区中第一次碰到的key(在RDD元素中)时被调用。此方法为这个key初始化一个累加器。 createCombine...

2020-03-19 00:16:47 167

原创 secureCRT sftp常用命令

securecrt 按下ALT+P就开启新的会话 进行ftp操作。输入:help命令,显示该FTP提供所有的命令pwd: 查询linux主机所在目录(也就是远程主机目录)lpwd: 查询本地目录(一般指windows上传文件的目录:我们可以通过查看”选项“下拉框中的”会话选项“,如图二:我们知道本地上传目录为:D:/我的文档)ls: 查询连接到当前linux主机所在目录有哪些文件lls:...

2020-03-02 12:08:18 1102

原创 jdk动态代理的思考

jdk动态代理获取代理类:public static Object newProxyInstance(ClassLoader loader, Class<?>[] interfaces, InvocationHandler h...

2020-02-24 12:21:36 98

原创 java多线程中的虚假唤醒

引言条件变量是我们常用的同步原语之一,它的正确使用方式一般如下图:在wait端,我们必须把判断布尔条件和wait()放到while循环中,而不能用if语句,原因是可能会引起虚假唤醒。那么,究竟什么是虚假唤醒,导致虚假唤醒的原因又是什么呢?什么是虚假唤醒?举个例子,我们现在有一个生产者-消费者队列和三个线程。1) 1号线程从队列中获取了一个元素,此时队列变为空。2) 2号线程也想从...

2020-01-14 11:26:29 311

原创 Spring控制反转IOC

作者:Mingqi链接:https://www.zhihu.com/question/23277575/answer/169698662来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。要了解控制反转( Inversion of Control ), 我觉得有必要先了解软件设计的一个重要思想:依赖倒置原则(Dependency Inversion Princip...

2020-01-12 10:52:17 171

原创 设计模式--外观模式facade pattern

外观模式外观模式(Facade Pattern)隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口。这种类型的设计模式属于结构型模式,它向现有的系统添加一个接口,来隐藏系统的复杂性。这种模式涉及到一个单一的类,该类提供了客户端请求的简化方法和对现有系统类方法的委托调用。介绍意图:为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易...

2020-01-12 10:48:29 118

原创 RDD转DataFrame

package com.zpark.lucas/** * @Author Lucas * @Date 2019/12/30 14:49 * @Version 1.0 */import jdk.nashorn.internal.runtime.regexp.joni.constantsimport org.apache.spark.rdd.RDDimport org.ap...

2019-12-30 15:31:06 189

原创 Spark的存储级别

Spark 中一个很重要的能力是将数据持久化(或称为缓存),在多个操作间都可以访问这些持久化的数据。当持久化一个 RDD 时,每个节点的其它分区都可以使用 RDD 在内存中进行计算,在该数据上的其他 action 操作将直接使用内存中的数据。这样会让以后的 action 操作计算速度加快(通常运行速度会加速 10 倍)。缓存是迭代算法和快速的交互式使用的重要工具。RDD 可以使用 persist...

2019-12-30 11:27:05 3095

原创 RDD和DataFrame的区别

spark3.0版本可能不太公布底层的RDD,以后使用dataframe将成为趋势,现在大都数公司也多使用dataframe来处理数据RDD、DataFrame和DataSet是容易产生混淆的概念,必须对其相互之间对比,才可以知道其中异同。RDD和DF的区别上图直观地体现了DataFrame和RDD的区别。左侧的RDD[Person]虽然以Person为类型参数,但Spark框架本身不了解...

2019-12-30 11:23:40 530

原创 Spring复习+@Bean注解

1、HelloSpring:package com.lucas;/** * @Author Lucas * @Date 2019/12/26 11:15 * @Version 1.0 */public class HelloSpring { public void hello() { System.out.println("hello"); }}...

2019-12-27 10:19:38 146

原创 微服务---7.负载均衡Ribbon

实际环境中,我们往往会开启很多个user-service的集群。此时我们获取的服务列表中就会有多个,到底该访问 哪个呢? 一般这种情况下我们就需要编写负载均衡算法,在多个实例列表中进行选择。 不过Eureka中已经帮我们集成了负载均衡组件:Ribbon,简单修改代码即可使用。 什么是Ribbon: 接下来,我们就来使用Ribbon实现负载均衡。 7.1.启动...

2019-12-19 10:01:30 315

原创 Spring RestTemplate中几种常见的请求方式

GET请求在RestTemplate中,发送一个GET请求,我们可以通过如下两种方式:第一种:getForEntitygetForEntity方法的返回值是一个ResponseEntity,ResponseEntity是Spring对HTTP请求响应的封装,包括了几个重要的元素,如响应码、contentType、contentLength、响应消息体等。比如下面一个例子:@RequestM...

2019-12-19 09:17:44 304

原创 微服务---6.Eureka注册中心

6.4.Eureka详解6.4.1.基础架构Eureka架构中的三个核心角色:服务注册中心 Eureka的服务端应用,提供服务注册和发现功能,就是刚刚我们建立的eureka-server服务提供者 提供服务的应用,可以是SpringBoot应用,也可以是其它任意技术实现,只要对外提供的是Rest风格服务即可。本例中就是我们实现的user-service服务消费者 消费应用从注册中心获...

2019-12-18 16:56:04 2669

原创 微服务---5.微服务场景模拟

5.1.创建父工程5.1.1.Spring工程创建

2019-12-18 14:40:37 377

原创 微服务---4.初始SpringCloud

微服务是一种架构方式,最终肯定需要技术架构去实施。微服务的实现方式很多,但是最火的莫过于Spring Cloud了。为什么?后台硬:作为Spring家族的一员,有整个Spring全家桶靠山,背景十分强大。技术强:Spring作为Java领域的前辈,可以说是功力深厚。有强力的技术团队支撑,一般人还真比不了群众基础好:可以说大多数程序员的成长都伴随着Spring框架,试问:现在有几家公司开发...

2019-12-17 10:43:27 267

原创 Spring REST Template

简介我们之前都使用过HttpClient来发送HTTP请求,但我们很多时间都需要将HttpClient请求或者响应的数据转换为Java对象,HttpClient需要我们自己手动来解析。我们今天要介绍的Spring REST Template比HttpClient用起来更加方便简洁。思路:一、后台主要提供RESTFUL Service服务二、门户,也就是前端系统,用来处理浏览器提交的请求,接...

2019-12-16 21:39:31 637

原创 工程测试1

1、SpringBoot项目ResResult:实体类:保存结果 两个字段successmessageUser:两个字段:username passwordUserDao:三个方法 :save 、findone、findAllUserDaoImpl:List<User> users / save:往users中add 、findone:在L...

2019-12-16 15:49:03 205

原创 rest服务

rest服务是一种web服务架构,其目的是为了创建良好扩展性的分布式系统rest应该具备以下条件:使用客户/服务器模型(简称C/S结构,是一种网络架构,它把客户端 (Client) 与服务器(Server) 区分开来。每一个客户端软件的实例都可以向一个服务器或应用程序服务器发出请求。) 例如前后端分离,页面和服务不在同一服务器上运行。层次化的系统 例如一个父系统下有多个子模块,每个模块都...

2019-12-16 14:11:02 277

原创 微服务---2.远程调用方式

2.远程调用方式无论是微服务还是SOA,都面临着服务间的远程调用。那么服务间的远程调用方式有哪些呢?常见的远程调用方式有以下几种:RPC:Remote Produce Call远程过程调用,类似的还有RMI。自定义数据格式,基于原生TCP通信,速度快,效率高。早期的webservice,现在热门的dubbo,都是RPC的典型Http:http其实是一种网络传输协议,基于TCP,规定了...

2019-12-13 11:29:50 482

原创 微服务---1系统架构的演变

0. 学习目标了解系统架构的演变了解RPC与Http的区别掌握HttpClient的简单使用知道什么是SpringCloud独立搭建Eureka注册中心独立配置Robbin负载均衡会配置Hystix熔断会使用Feign进行远程调用能独立搭建Zuul网关能编写Zuul的拦截器1.系统架构演变随着互联网的发展,网站应用的规模不断扩大。需求的激增,带来的是技术上的压力。系统架...

2019-12-13 11:10:48 260

原创 Spark的RDD的aggregate() 函数

aggregate() 函数的返回类型不需要和 RDD 中的元素类型一致,所以在使用时,需要提供所期待的返回类型的初始值,然后通过一个函数把 RDD 中的元素累加起来放入累加器。考虑到每个结点都是在本地进行累加的,所以最终还需要提供第二个函数来将累加器两两合并。aggregate(zero)(seqOp,combOp) 函数首先使用 seqOp 操作聚合各分区中的元素,然后再使用 comb...

2019-12-13 09:12:15 713

原创 Spark中foreachRDD、foreachPartition和foreach

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

2019-12-12 16:41:16 269

原创 SparkStreaming窗口函数

结合Spark官网上Spark Streaming的编程指南对Spark Streaming进行介绍StreamingContext如同SparkContext一样,StreamingContext也是Spark Streaming应用程序通往Spark集群的通道,它的定义如下:/** * Main entry point for Spark Streaming functionalit...

2019-12-11 14:53:37 1467

原创 Kafka机制

TopicTopic是Kafka数据写入操作的基本单元,可以指定副本一个Topic包含一个或多个Partition,建Topic的时候可以手动指定Partition个数,个数与服务器个数相当每条消息属于且仅属于一个TopicProducer发布数据时,必须指定将该消息发布到哪个TopicConsumer订阅消息时,也必须指定订阅哪个Topic的信息Kafka中的Message是以to...

2019-12-10 15:13:20 559

原创 Linux查看文件命令

Linux查看文件命令linux查看日志文件内容命令有cat 由第一行开始显示文件内容 tac 从最后一行开始显示,可以看出 tac 是 cat 的倒着写 nl 显示的时候,顺道输出行号! more 一页一页的显示文件内容 less 与 more 类似,但是比 more 更好的是,他可以往前翻页! head 只看头几行 tail 只看尾巴几行你可以使用man [命令]来查看...

2019-12-10 13:55:12 173

原创 Echats入门

https://www.w3cschool.cn/echarts_tutorial/echarts_tutorial-mec528xa.html

2019-12-09 16:29:27 187

原创 Kibana使用

Kibana是一个开源的分析和可视化平台,设计用于和Elasticsearch一起工作。你用Kibana来搜索,查看,并和存储在Elasticsearch索引中的数据进行交互。你可以轻松地执行高级数据分析,并且以各种图标、表格和地图的形式可视化数据。Kibana使得理解大量数据变得很容易。它简单的、基于浏览器的界面使你能够快速创建和共享动态仪表板,实时显示Elasticsearch查询的变化...

2019-12-09 16:27:41 214

原创 HBase

HBase是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系...

2019-12-05 17:53:20 253

原创 Mapreduce和YARN

Hadoop 的最常见用法之一是 Web 搜索。虽然它不是唯一的软件框架应用程序,但作为一个并行数据处理引擎,它的表现非常突出。Hadoop 最有趣的方面之一是 Map and Reduce 流程,它受到Google开发的启发。这个流程称为创建索引,它将 Web爬行器检索到的文本 Web 页面作为输入,并且将这些页面上的单词的频率报告作为结果。然后可以在整个 Web 搜索过程中使用这个结果从已定义...

2019-12-05 17:36:01 142

原创 YARN

Apache Hadoop YARN (Yet Another Resource Negotiator,另一种资源协调者)是一种新的 Hadoop 资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度,它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处.YARN的基本思想是将JobTracker的两个主要功能(资源管理和作业调度/监控)分离,什么是JobT...

2019-12-05 15:44:31 166

原创 Hadoop的几个名词Namenode、Datanode、Jobtracker、Tasktracke理解

hadoop的集群是基于master/slave模式,namenode和jobtracker属于master,datanode和tasktracker属于slave,master只有一个,而slave有多个.SecondaryNameNode内存需求和NameNode在一个数量级上,所以通常secondary NameNode(运行在单独的物理机器上)和 NameNode 运行在不同的机器上。...

2019-12-05 14:56:08 766

原创 flink安装部署

一. Flink的下载安装包下载地址:http://flink.apache.org/downloads.html ,选择对应Hadoop的Flink版本下载Flink 有三种部署模式,分别是 Local、Standalone Cluster 和 Yarn Cluster。二. Local模式对于 Local 模式来说,JobManager 和 TaskManager 会公用一个 ...

2019-12-05 14:21:11 711

原创 Azkaban 实战

Azkaba 内置的任务类型支持 command、java。1 Command 类型之单 job 工作流案例1)创建 job 描述文件vim command.job#command.jobtype=command command=echo 'hello'2)将 job 资源文件打包...

2019-12-04 16:07:38 231

原创 Azkaban安装配置

一 概述1.1 工作流调度系统1)一个完整的数据分析系统通常都是由大量任务单元组成:shell 脚本程序,java 程序,mapreduce 程序、hive 脚本等。2)各任务单元之间存在时间先后及前后依赖关系。3)为了很好地组织起这样的复杂执行计划,需要一个工作流调度系统来调度执行。  例如,我们可能有这样一个需求,某个业务系统每天产生 20G 原始数据,我们每天都要对其进行处理,处...

2019-12-04 14:00:56 607

原创 sqoop

一、概述sqoop 是 apache 旗下一款“Hadoop 和关系数据库服务器之间传送数据”的工具。核心的功能有两个:导入、迁入导出、迁出导入数据:MySQL,Oracle 导入数据到 Hadoop 的 HDFS、HIVE、HBASE 等数据存储系统导出数据:从 Hadoop 的文件系统中导出数据到关系数据库 mysql 等 Sqoop 的本质还是一个命令行工具,和 HDFS,Hiv...

2019-11-29 14:36:39 304

androidapi_chm.zip

挺好用的androidapi可以参考,分享出来供朋友下载。

2015-05-02

空空如也

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

TA关注的人

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