自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

lastwhisper

i 'm not a coder

  • 博客(75)
  • 资源 (6)
  • 收藏
  • 关注

原创 设计模式(Design Pattern)详细整理(含思维导图)

设计模式(Design Pattern)设计模式(Design pattern)代表了最佳的实践,是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。设计模式是软件工程的基石,如同大厦的一块块砖石一样,项目中合理地运用设计模式可以完美地解决很多问题。2020年,受疫情影响,苦心沸血学习了两个月的设计模式,整理了一套设计模式的学习路线,学习很枯燥,整理很麻烦,但是学会了感觉就很棒,设计模式绝对是值得所有软件从事人员学习的内容,

2020-05-19 11:55:42 3635

原创 对Closeable和AutoCloseable的理解

目录Closeable和AutoCloseable的理解背景:一、Closeable1.1Closeable接口源码:1.2使用close需要注意:二、AutoCloseable2.1AutoCloseable源码2.2.{try}-with-resources的使用注意2.3.{try}-with-resources的解释2.4{try}-with-res...

2019-11-15 16:31:52 1164 1

原创 Hive元数据信息表

概述作为Hive的元数据,一般存储在Mysql中,一般起名为hive,管理这些元数据需要许多表,以下介绍常使用的hive元数据信息表回到顶部一、存储Hive版本的元数据表(VERSION)VERSION – 查询版本信息该表比较简单,但很重要。VER_ID SCHEMA_VERSION VERSION_COMMENT ID主键 Hiv...

2019-07-19 17:09:43 1607

原创 String.format()的详细用法,详细说明+示例

问题场景一段字符串的中间某一部分是需要可变的,JAVA里有专门的实现方式String.format()字符串常规类型格式化的两种重载方式format(String format, Object… args) 新字符串使用本地语言环境,制定字符串格式和参数生成格式化的新字符串。 format(Locale locale, String format, Object… args) 使用指...

2019-07-09 14:59:26 1050 1

原创 【leetcode】两数之和

工作之余,感觉还是要加强基础知识的掌握,于是再次进行leetcode的刷题之旅了,go!原题链接:https://leetcode-cn.com/problems/two-sum/方法一:暴力法暴力法很简单,遍历每个元素x,并查找是否存在一个值与target-x相等的目标元素。public int[] twoSum(int[] nums, int target) { fo...

2019-07-08 20:12:00 149

原创 flink1.8快速实践

官方文档:https://ci.apache.org/projects/flink/flink-docs-release-1.8/1.1下载与安装https://flink.apache.org/downloads.htmlhttps://mirrors.tuna.tsinghua.edu.cn/apache/flink下载完成后解压,得到目录结构如下:1.2启动flink...

2019-07-08 13:14:04 573

转载 字节、字、bit、Byte的关系

字 word字节 byte位 bit,来自英文bit,音译为“比特”,表示二进制位。字长是指字的长度1字=2字节(1 word = 2 byte)1字节=8位(1 byte = 8bit)一个字的字长为16一个字节的字长是8bps 是 bits per second 的简称。一般数据机及网络通讯的传输速率都是以「bps」为单位。如56Kbps、100.0Mbps 等等。B...

2019-07-03 10:35:18 5844

转载 分布式一致性——二阶段提交协议,三阶段提交协议

分布式系统,这早已不是什么新鲜的东西了,在分布式系统的架构设计过程中,往往会存在分布式一致性的问题,经过前人的辛苦探究,提出了二阶段提交协议,三阶段提交协议,Paxos算法等等,用来解决分布式一致性的问题。今天我就讲一下,二阶段提交协议和三阶段提交协议的过程,以及它们的优缺点。2PC,就是二阶段提交协议。顾名思义,就是将事务的提交过程分成两个阶段来处理。那我们来看看这两个阶段分别做了什么。...

2019-03-29 10:26:14 194

原创 使用java Future模式异步调用详细实例展示

java Future模式想必大家都比较熟悉,大体实现起来也比较简单,因为模式单一,我先介绍一下一般步骤,再讲一下,目前项目中遇到具体问题的解决方式 一般来说,使用java Future模式实现多线程,具体步骤如下, 1.新建一个异步任务类,如 xxxTask 实现 Callable<xxxTask.Result>(或者Runnable<xxx>...

2019-01-29 17:33:36 818

转载 Nginx配置详解

Nginx配置详解序言Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发的。从2004年发布至今,凭借开源的力量,已经接近成熟与完善。Nginx功能丰富,可作为HTTP服务器,也可作为反向代理服务器,邮件服务器。支持FastCGI、SSL、Virtual Host、URL Rewrite、Gzip等功能。并且支持很多第三方的模块扩展。Nginx的...

2019-01-18 17:04:54 145

原创 JAVA泛型通配符T,E,K,V区别,T以及Class T,Class ? 的区别

JAVA泛型通配符T,E,K,V区别,T以及Class<T>,Class<?>的区别1. 先解释下泛型概念泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。Java语言引入泛型的好处是安全简单。在Java SE 1.5之前,没有泛型...

2018-12-24 16:14:33 571

转载 fastJson java后台转换json格式数据

fastJson java后台转换json格式数据什么是JSON?JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。 易于人阅读和编写。同时也易于机器解析和生成。 它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。 JSON...

2018-08-31 11:04:59 358

原创 二叉树的4种遍历方法

二叉树的遍历方法分为前中后序遍历,另外还有一种层序遍历,算法如下:/** * 构造二叉树 */public class TreeNode { public int val; public TreeNode left; public TreeNode right; public TreeNode(int x) { val = x; ...

2018-08-22 16:32:02 702

转载 Hive 数据倾斜解决方案(调优)

Hive 数据倾斜解决方案(调优)在做Shuffle阶段的优化过程中,遇到了数据倾斜的问题,造成了对一些情况下优化效果不明显。主要是因为在Job完成后的所得到的Counters是整个Job的总和,优化是基于这些Counters得出的平均值,而由于数据倾斜的原因造成map处理数据量的差异过大,使得这些平均值能代表的价值降低。Hive的执行是分阶段的,map处理数据量的差异取决于上一个stage的...

2018-08-20 11:08:01 277

转载 Spark中的checkpoint作用与用法

Spark中的checkpoint作用与用法checkpoint的意思就是建立检查点,类似于快照,例如在spark计算里面 计算流程DAG特别长,服务器需要将整个DAG计算完成得出结果,但是如果在这很长的计算流程中突然中间算出的数据丢失了,spark又会根据RDD的依赖关系从头到尾计算一遍,这样子就很费性能,当然我们可以将中间的计算结果通过cache或者persist放到内存或者磁盘中,但是这样也...

2018-07-04 09:51:21 335

转载 Spark 以及 spark streaming 核心原理及实践

Spark 以及 spark streaming 核心原理及实践导语spark 已经成为广告、报表以及推荐系统等大数据计算场景中首选系统,因效率高,易用以及通用性越来越得到大家的青睐,我自己最近半年在接触spark以及spark streaming之后,对spark技术的使用有一些自己的经验积累以及心得体会,在此分享给大家。本文依次从spark生态,原理,基本概念,spark streaming原...

2018-07-03 16:43:10 605

转载 scala的隐式转换

摘要:通过隐式转换,程序员可以在编写Scala程序时故意漏掉一些信息,让编译器去尝试在编译期间自动推导出这些信息来,这种特性可以极大的减少代码量,忽略那些冗长,过于细节的代码。 使用方式:1.将方法或变量标记为implicit2.将方法的参数列表标记为implicit3.将类标记为implicit Scala支持两种形式的隐式转换:隐式值:用于给方法提供参数隐式视图:用于类型间转换或使针对某类型的...

2018-06-29 16:19:56 218

转载 Spark远程调试

Spark远程调试                       本例子介绍简单介绍spark一种远程调试方法,使用的IDE是IntelliJ IDEA。 1、了解jvm一些参数属性 -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8888 这里对上面的几个参数进行说明:-Xdebug 启用调试特性-Xrunjdwp ...

2018-06-29 11:48:10 1060

转载 Spark中的checkpoint作用与用法

Spark中的checkpoint作用与用法2017年07月27日 23:19:11checkpoint的意思就是建立检查点,类似于快照,例如在spark计算里面 计算流程DAG特别长,服务器需要将整个DAG计算完成得出结果,但是如果在这很长的计算流程中突然中间算出的数据丢失了,spark又会根据RDD的依赖关系从头到尾计算一遍,这样子就很费性能,当然我们可以将中间的计算结果通过cache或者pe...

2018-06-28 12:27:21 429

翻译 Spark共享变量-Broadcast广播变量介绍及scala实现

通常情况下,当1个function传递到1个spark operation(例如:map、reduce)时,这个function是在远程的集群node上被执行的。这些变量会被复制到每一台机器,在远程机器上不会更新这些变量,然后又传送回driver program。跨tasks共享读写变量的支持,通常是低效率的。然而,spark提供了2种通用的共享变量模式:广播变量和累加器。  广播变量  广播变量...

2018-06-28 11:33:23 3652

转载 Mysql 工作原理

Mysql 工作原理刚开始接触一个新的事物的时候,我觉得很有必要从其工作原理入手,弄清楚这个东西的来龙去脉,为接下来的继续深入学习做好铺垫,掌握好其原理有助于我们从整体上来把握这个东西,并且帮助我们在排错过程中理清思路。接下来,还是从mysql的工作原理开始入手,下面先来一张经典的图:   上面的图就是mysql的内部架构,可以清楚的看到Mysql是由SQL接口,解析器,优化器,缓存,存储引擎组成...

2018-06-27 21:39:23 342

转载 scala-泛型

Scala学习——泛型[T]6种使用 1 package com.dtspark.scala.basics 2 3 /** 4 * 1,scala的类和方法、函数都可以是泛型。 5 * 6 7 * 2,关于对类型边界的限定分为上边界和下边界(对类进行限制) 8 * 上边界:表达了泛型的类型必须是"某种类型"或某种类型的"子类",语法为“<:”, 9 * 下边界...

2018-06-21 20:12:32 151

翻译 Java Lambda表达式

Java Lambda表达式入门原文链接: Start Using Java Lambda Expressions下载示例程序 Examples.zip 。简介虽然看着很先进,其实Lambda表达式的本质只是一个"语法糖",由编译器推断并帮你转换包装为常规的代码,因此你可以使用更少的代码来实现同样的功能。本人建议不要乱用,因为这就和某些很高级的黑客写的代码一样,简洁,难懂,难以调试,维护人员想骂娘...

2018-06-15 16:03:30 327

转载 kafka 知识总结

1.kafka 知识总结1、kafka是什么类JMS消息队列,结合JMS中的两种模式,可以有多个消费者主动拉取数据,在JMS中只有点对点模式才有消费者主动拉取数据。kafka是一个生产-消费模型。Producer:生产者,只负责数据生产,生产者的代码可以集成到任务系统中。  数据的分发策略由producer决定,默认是defaultPartition  Utils.abs(key.hashCode...

2018-06-13 15:55:25 324

翻译 storm消息容错机制(ack-fail)

storm消息容错机制(ack-fail)1、介绍在storm中,可靠的信息处理机制是从spout开始的。一个提供了可靠的处理机制的spout需要记录他发射出去的tuple,当下游bolt处理tuple或者子tuple失败时spout能够重新发射。Storm通过调用Spout的nextTuple()发送一个tuple。为实现可靠的消息处理,首先要给每个发出的tuple带上唯一的ID,并且将ID作为...

2018-06-08 10:06:16 1639

原创 Vmware14安装苹果系统macos

使用Vmware14安装苹果系统macos一、工具&材料:1、Vmware 14 pro;2、用于VMware 12的mac补丁,unlocker:项目地址:  https://github.com/DrDonk/unlocker这个补丁也能用于其他平台比如linux。3、然后就是macos的镜像文件二、应用unlocker补丁:把下载好的unlocker解压,右键使用管理员运行win-i...

2018-06-06 19:13:23 2329

翻译 Linux 的硬链接与软链接详解

理解 Linux 的硬链接与软链接Linux 的文件与目录现代操作系统为解决信息能独立于进程之外被长期存储引入了文件,文件作为进程创建信息的逻辑单元可被多个进程并发使用。在 UNIX 系统中,操作系统为磁盘上的文本与图像、鼠标与键盘等输入设备及网络交互等 I/O 操作设计了一组通用 API,使他们被处理时均可统一使用字节流方式。换言之,UNIX 系统中除进程之外的一切皆是文件,而 Linux 保持...

2018-06-06 11:06:02 275

转载 IntelliJ IDEA debug使用教程

IntelliJ IDEA debug使用教程在调试代码的时候,你的项目得debug模式启动,也就是点那个绿色的甲虫启动服务器,然后,就可以在代码里面断点调试啦。下面不要在意,这个快捷键具体是啥,因为,这个keymap是可以自己配置的,有的人keymap是mac版的,有的是Windows版的。我的就是Windows,而且修改keymap为eclipse的keymap,因为我算是eclipse转过来...

2018-06-04 21:16:07 339

原创 修改/usr 权限后,不能使用su/sudo

运行su,报错:su: Authentication failure解决方法:chown root:root  /bin/suchmod 4755 /bin/su或者运行sudo时,报如下这个错误sudo: must be setuid root,解决方法chown root:root /usr/bin/sudochmod 4755 /usr/bin/sudo注意,以上命令需要root权限,如果不...

2018-06-01 13:19:44 3099

转载 Mysql limit offset 用法示例

Mysql limit offset示例例1,假设数据库表student存在13条数据。 代码示例:语句1:select * from student limit 9,4语句2:slect * from student limit 4 offset 9// 语句1和2均返回表student的第10、11、12、13行  //语句2中的4表示返回4行,9表示从表的第十行开始例2,通过limit和of...

2018-05-31 10:28:42 46319

转载 log4j详解

日志是应用软件中不可缺少的部分,Apache的开源项目log4j是一个功能强大的日志组件,提供方便的日志记录。在apache网站:jakarta.apache.org/log4j 可以免费下载到Log4j最新版本的软件包。一、入门实例1.新建一个JAva工程,导入包log4j-1.2.17.jar,整个工程最终目录如下2、src同级创建并设置log4j.properties ### 设置###l...

2018-05-30 17:51:49 154

转载 java中queue的使用

java中queue的使用Queue接口与List、Set同一级别,都是继承了Collection接口。LinkedList实现了Queue接 口。Queue接口窄化了对LinkedList的方法的访问权限(即在方法中的参数类型如果是Queue时,就完全只能访问Queue接口所定义的方法 了,而不能直接访问 LinkedList的非Queue的方法),以使得只有恰当的方法才可以使用。Blockin...

2018-05-30 09:44:47 448

转载 Java 读取 .properties 配置文件的几种方式

Java 读取 .properties 配置文件的几种方式Java 开发中,需要将一些易变的配置参数放置再 XML 配置文件或者 properties 配置文件中。然而 XML 配置文件需要通过 DOM 或 SAX 方式解析,而读取 properties 配置文件就比较容易。介绍几种读取方式:1、基于ClassLoder读取配置文件注意:该方式只能读取类路径下的配置文件,有局限但是如果配置文件在类...

2018-05-29 21:32:47 309

原创 sqoop原理及实战

1. sqoop数据迁移1.1 概述sqoop是apache旗下一款“Hadoop和关系数据库服务器之间传送数据”的工具。导入数据:MySQL,Oracle导入数据到Hadoop的HDFS、HIVE、HBASE等数据存储系统;导出数据:从Hadoop的文件系统中导出数据到关系数据库  1.2 工作机制将导入或导出命令翻译成mapreduce程序来实现在翻译出的mapreduce中主要是对input...

2018-05-29 18:15:48 3226 1

原创 工作流调度器azkaban

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

2018-05-29 00:58:08 274

转载 区块链概念及简单介绍

友情提醒:比特币采用区块链技术,但是区块链并不等同于比特币;全篇基于比特币底层区块链技术讲述,所以,部分模型可能不适用于以太坊等。另外,由于文章采用了一定的抽象、类举的叙事方式,中间或多或少有些地方会跟区块链底层严谨的技术实现有出入,如果让你觉得困惑,可以在评论下方留言或者私信我一起探讨。最后,也是受限于自己知识结构的不完整,这篇文章会随着我对区块链更深入认识后,随时进行修订,最后更新时间可参考该...

2018-05-28 19:11:56 1883 1

转载 漏斗模型和路径分析

在互联网数据化运营实践中,有一类数据分析应用是互联网行业所独有的,那就是漏斗模型和路径分析的应用漏斗模型通常是对用户在网页浏览中一些关键节点的转化程度所进行的描述,比如从浏览到实际购买产品都需要经历三个步骤:浏览商品、将商品加入到购物车、将购物车的东西提交到订单,直到订单完成在线支付,上面的三个步骤走下来,买家人数越来越少,这个过程就是漏斗模型,漏斗模型的主要分析目的是针对网站运营过程中的各个关键...

2018-05-28 18:54:51 1871

转载 网站统计中的数据收集原理及实现(js埋点实现)

网站统计中的数据收集原理及实现网站统计 埋点 Web Openresty网站数据统计分析工具是网站站长和运营人员经常使用的一种工具,比较常用的有谷歌分析、百度统计和腾讯分析等等。所有这些统计分析工具的第一步都是网站访问数据的收集。目前主流的数据收集方式基本都是基于javascript的。本文将简要分析这种数据收集的原理,并一步一步实际搭建一个实际的数据收集系统。数据收集原理分析简单来说,网站统计分...

2018-05-25 12:22:07 9816

原创 Flume介绍以及实战应用

1.1 Flume介绍前言:在一个完整的大数据处理系统中,除了hdfs+mapreduce+hive组成分析系统的核心之外,还需要数据采集、结果数据导出、任务调度等不可或缺的辅助系统,而这些辅助工具在hadoop生态体系中都有便捷的开源框架,如图所示: 1.1.1 概述1.) Flume是一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统。2. )Flume可以采集文件,socket数据包...

2018-05-24 15:41:28 1634

原创 Hive详细介绍及简单应用

 1. Hive基本概念1.1  Hive简介1.1.1 什么是HiveHive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能。1.1.2 为什么使用Hive1.) 直接使用hadoop所面临的问题 人员学习成本太高 项目周期要求太短 MapReduce实现复杂查询逻辑开发难度太大2.)操作接口采用类SQL语法,提供快速开发的能力。 避免了去...

2018-05-24 12:47:26 143148 5

设计模式(Design Pattern).xmind

设计模式(Design Pattern)思维导图,详细整理,展开页含很多详细比较,希望能帮到更多的人

2020-05-19

VSCode-darwin-stable.zip

前端开发IDE利器,适用于MacOs下的前端开发,对Vue支持良好,入门学习前端必备。

2019-07-20

零基础学SQL孙浏毅著.pdf

零基础学SQL,孙浏毅著,是初学者学习SQL很好的入门和进阶教程。

2019-07-06

skill-map-master.zip

知识图谱,包含各种开发技术,前后端、大数据、运维、测试等技能体系的思维导图

2019-07-06

《maven实战》徐晓斌

《maven实战》最新版,徐晓斌著,看后你会对后台开发中的jar包管理以及相关内容有新的理解

2019-01-31

apache-hive-1.2.1-bin.tar.gz

已经安装并且配置好的hive资源包,版本为1.2.1,兼容性强,适合开发,学习使用

2018-05-24

空空如也

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

TA关注的人

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