自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 关于对java项目中应用分层的简单理解

对java项目中应用分层的简单理解

2022-09-11 13:58:00 745 1

转载 JUnit5使用学习

转载自:https://www.yuque.com/atguigu/springboot/ksndgx

2021-07-31 21:11:18 270

转载 hive之Json解析(普通Json和Json数组)

https://www.cnblogs.com/yfb918/p/10644262.html

2020-11-21 20:12:28 315

转载 Kafka consumer消息的拉取及偏移的管理

消费者拉取消息并处理主要有4个步骤:获取消费者所拉取分区的偏移位置OffsetFetchRequest(新的消息是从偏移位置开始的)创建FetchReqeust,生成Map<Node, FetchRequest>,以消费者所拉取消息的节点为key来分组,所消费的TopicPartition的数据为value,并放入到unsent队列调用poll方法实际发送请求给相应的node,如果返回成功,在onSecuss方法中,消息被保存在completedFetches中从completedFet

2020-11-08 20:54:57 699

转载 kafka消费者组

阅读目录一、 误区澄清与概念明确 一直以来都想写一点关于kafka consumer的东西,特别是关于新版consumer的中文资料很少。最近Kafka社区邮件组已经在讨论是否应该正式使用新版本consumer替换老版本,笔者也觉得时机成熟了,于是写下这篇文章讨论并总结一下新版本consumer的些许设计理念,希望能把consumer这点事说清楚,从而对广大使用者有所帮助。在开始之前,我想花一点时间先来明确一些概念和术语,这会极大地方便我们下面的讨论。另外请原谅这文章有点长,毕竟要讨论的东西.

2020-11-08 20:52:36 385

转载 Scala中的String.split函数

今天在写一个统计用户信息的程序时出现了bug,导致统计结果与真实值有很大差距。经过仔细检查,我发现是错误地使用split函数导致的。看来还是对scala中的split函数的理解不够透彻。本篇博文将详细解释scala中String.split的参数及用法。因为scala中的String复用了Java的String,因此这也是Java中String.split的用法。split函数主要有两种参数形式:def split(arg0: String): Array[String]def split(arg0

2020-11-03 21:52:03 908

原创 Spark rdd中无元素时rdd.foreach里面的代码不会执行

2020-10-22 22:40:31 444

原创 Spark FlatMap(x=>new ListBuffer())或者FlatMap(x=>new ListBuffer[String]())

如下图,在返回不包含元素的ListBuffer时,如果ListBuffer没有指定类型(即ListBuffer中包含的是什么类型的成员),在执行后面的操作时就会报错。如下图,指定了ListBuffer中成员的类型后,执行后面的操作时就不会报错。...

2020-10-22 22:36:51 275 1

原创 Hive 2.3.7 insert overwrite 清空表

1.原数据全是null的情况(能清空)hive> select * from testNull;OKNULLNULLNULLTime taken: 0.08 seconds, Fetched: 3 row(s)hive> insert overwrite table testNull select * from testNull where 1=0;hive> select * from testNull;OKTime taken: 0.089 seconds2.原

2020-10-18 22:24:57 1524

原创 Hive2.3.7中对手动插入null的测试

1.create table testNull(id int) row format delimited fields terminated by ‘,’;2.insert into testNull(id) values(null);3.插入的null,查询出NULLhive> select * from testNull;OKNULL4.看看单元格是否存储的字符串,或者空指针null、NULL(就是看空指针null是否能存为null)hive> select * from

2020-10-18 22:14:55 781

原创 dayofweek

dayofweek(param) – Returns the day of the week of date/timestamp (1 = Sunday, 2 = Monday, …, 7 = Saturday)param can be one of:A string in the format of ‘yyyy-MM-dd HH:mm:ss’ or ‘yyyy-MM-dd’.A date valueA timestamp valueExample:SELECT dayofweek(‘200

2020-10-11 21:11:59 129

转载 HBase 行键设计

HBase 有两种基本的键结构:行键(row key)和列键(column key)。两者都可以存储有意义的信息,一种是键本身存储的内容,另一种是键的排列顺序。概念HBase 的表中数据分隔主要是使用列族(column family)而不是列,并非列式存储,如下图,表示了用户逻辑上把一个单元格的数据存到了一张表中,实际上底层存储是按列族线性地存储单元格,并包含了一些必要信息:HBase左上图是数据的逻辑视图,列键包含了列族和列(cf1:c1、cf2:c1...),每一行必须有一个行键(r

2020-10-09 22:54:39 2054

转载 HBase全网最佳学习资料汇总

HBase全网最佳学习资料汇总摘要: HBase这几年在国内使用的越来越广泛,在一定规模的企业中几乎是必备存储引擎,互联网企业阿里巴巴、百度、腾讯、京东、小米都有数千台的HBase集群,中国电信的话单、中国人寿的保单都是存储在HBase中。前言HBase这几年在国内使用的越来越广泛,在一定规模的企业中几乎是必备存储引擎,互联网企业阿里巴巴、京东、小米都有数千台的HBase集群,中国电信的话单、中国人寿的保单都是存储在HBase中。注意大公司有数十个数百个HBase集群,此点...

2020-10-01 23:07:50 1048

转载 Kafka consumer消息的拉取及偏移的管理

消费者拉取消息并处理主要有4个步骤:获取消费者所拉取分区的偏移位置OffsetFetchRequest(新的消息是从偏移位置开始的)创建FetchReqeust,生成Map<Node, FetchRequest>,以消费者所拉取消息的节点为key来分组,所消费的TopicPartition的数据为value,并放入到unsent队列调用poll方法实际发送请求给相应的node,如果返回成功,在onSecuss方法中,消息被保存在completedFetches中从comple...

2020-10-01 16:01:04 696

转载 kafka listeners 和 advertised.listeners 的应用

介绍区别在公司内网部署 kafka 集群只需要用到 listeners,所以一直也不用管 advertised.listeners 是做啥的,刚开始有查过,因为经验不足,始终理解的不够,后来发现在 docker 部署和云服务器上部署,内外网需要作区分时,发挥了它强大的作用。那么先看看文字类描述:listeners: 学名叫监听器,其实就是告诉外部连接者要通过什么协议访问指定主机名和端口开放的 Kafka 服务。advertised.listeners:和 listeners 相比多了个 adv

2020-09-24 22:02:43 1009

转载 Spark 2.x kafka LocationStrategies 的几种方式

Spark 2.x kafka LocationStrategies 的几种方式。1. LocationStrategies.PreferBrokers()仅仅在你 spark 的 executor 在相同的节点上,优先分配到存在 kafka broker 的机器上;2. LocationStrategies.PreferConsistent();大多数情况下使用,一致性的方式分配分区所有 executor 上。(主要是为了分布均匀)3. LocationStrategies.Pref

2020-09-24 21:58:44 317

原创 SparkStreaming创建DirectStream连接kafka时策略详解

https://www.jianshu.com/p/c765168b5045

2020-09-24 21:55:47 146

转载 oracle分组排序取前几

 项目需求:分组排序1、要求取出按field1分组后,并在每组中按照field2排序;2、根据要求取出1中已经分组排序好的前多少行的数据; 1.row_number() over()row_number()over(partition by col1 order by col2)表示根据col1分组,再分组内部根据col2排序,而此函数计算的值就表示每组内部排序后的顺序编号(组内连续的唯一的)。 (1,2,3,4,5.....)2.rank() over(...

2020-09-12 15:32:08 1993

转载 Oracle批量更新数据,使用begin end

/* 使用begin end批量更新 注意end后面必须使用;结束 并且每条update语句都要用;来结束 所以close为;END; 是为了补全语法 */ <foreach collection="list" item="item" index= "index" open="BEGIN" close=";END;" separator =";"> update xxxx &lt...

2020-09-12 14:59:38 1658

转载 解决sqlplus /as sysdba登陆oracle无效

安装完oracle,然后执行完下面的自动配置脚本后,没有任何地方设置过密码。# /etc/init.d/oracledb_ORCLCDB-19c configure在这个命令执行完成后,会提醒查看完整日志的地方:Look at the log file “/opt/oracle/cfgtoollogs/dbca/ORCLCDB/ORCLCDB.log” for further details.Database configuration completed suc...

2020-09-11 22:25:09 3990 3

原创 java junit测试之mock的用法

测试时,用到的Mock,他是生成一个模拟的对象,这个对象中的方法和真实对象中的方法是一一对应的,只是这些方法都是空壳,当用模拟对象调用方法时,自己要去设置这些方法的返回值,以及是否会抛出异常等,真实方法的行为在模拟对象方法中,要自己设置去模拟。...

2020-09-06 22:02:59 1532

转载 Spring AOP——Spring 中面向切面编程

https://www.cnblogs.com/joy99/p/10941543.html

2020-09-03 21:11:29 62

转载 Checked exception is invalid for this method!异常解决方案

在用mockito来模拟异常的时候,当要抛出自定义的异常,而非RuntimeException等自定义异常时,常常会出现如下错误信息:Checkedexception is invalid for this method!以前我可以通过doThrow(CheckedException.class).when(service).show(anyObject),来绕过这个错误。但是当抛出的异常要携带某些信息时,就不能不给异常传参了,于是就得这么写:doThrow(new CheckedEx.

2020-09-01 22:15:05 15529

转载 Spark SQL Dataframe 写入oracle

可以看此处文章https://xvlvzhu.github.io/2018/01/07/Spark%E6%93%8D%E4%BD%9C%E6%95%B0%E6%8D%AE%E5%BA%93%E7%A4%BA%E4%BE%8B/以下是写入Oracle数据库 val url = "jdbc:oracle:thin:@//ip:1521/数据库名称" val user = "ods" val password = "oracle" val driver = "oracle.jdbc.driver.

2020-09-01 22:03:45 1578

转载 震惊了!原来这才是kafka!

震惊了!原来这才是kafka!简介kafka是一个分布式消息队列。具有高性能、持久化、多副本备份、横向扩展能力。生产者往队列里写消息,消费者从队列里取消息进行业务逻辑。一般在架构设计中起到解耦、削峰、异步处理的作用。kafka对外使用topic的概念,生产者往topic里写消息,消费者从读消息。为了做到水平扩展,一个topic实际是由多个partition组成的,遇到瓶颈时,可以通过增加partition的数量来进行横向扩容。单个parition内是保证消息有序。每新写一条消息,kafka就是在对

2020-09-01 21:59:30 126

原创 一文读懂HashMap

https://www.jianshu.com/p/ee0de4c99f87

2020-09-01 21:54:38 114

转载 spark1.5.x升级spark2.1.1代码改动

spark1.5.x升级spark2.1.1代码改动背景公司一直用spark1.5.2, 最近将其升级至spark2.1.1。本文的总结升级过程需要改动的地方。涉及了spark普通项目和spark streaming项目,项目均为java语言开发。改动一:flatMap and mapPartitions 返回iterator对于spark1.5,flatMap和mapPartitions算子返回的是集合,比如list。而升级到spark2之后需要返回迭代器iterator。参见官方说明:spark

2020-09-01 21:51:15 237

转载 Spark性能调优篇五之使用fastUtil工具包

Spark性能调优篇五之使用fastUtil工具包        今天再来介绍一个小的优化点,是一个通过使用fastutil工具包对数据格式进行优化。首先来明确一个东西,什么是fastutil?        fastutil是一个Java集合框架的扩展,通过实现Java集合的接口,提供了特殊类型的map,list等等。通过使用fastutil可以使

2020-09-01 21:48:01 354

转载 Scala解析Json字符串

1. 添加相应依赖       Json解析工具使用的 json-smart,曾经对比过Java的fastjson、gson。Scala的json4s、lift-json。其中 jso...

2020-08-30 22:57:57 711

转载 10分钟详解Spring全家桶7大知识点

Spring框架自诞生以来一直备受开发者青睐,有人亲切的称之为:Spring 全家桶。它包括SpringMVC、SpringBoot、Spring Cloud、Spring Cloud Dataflow等解决方案。很多研发人员把spring看作心目中最好的java项目,没有之一。所以这是重点也是难点,工作中必须会,面试时肯定考。那么,今天花费10分钟,梳理Spring框架相关知识。一、Spring知识点-汇总spring系列包含非常多的项目,可以满足java开发中的方方面面。先来看常用框架的知

2020-08-30 22:51:03 184

转载 IDEA--IDEA debug断点调试技巧

目录一、Debug开篇二、基本用法&快捷键三、变量查看四、计算表达式五、智能步入六、断点条件设置七、多线程调试八、回退断点九、中断DebugDebug用来追踪代码的运行流程,通常在程序运行过程中出现异常,启用Debug模式可以分析定位异常发生的位置,以及在运行过程中参数的变化。通常我们也可以启用Debug模式...

2020-08-30 22:41:54 498

转载 【IDEA】 idea 常用快捷键

IDEA 一款非常优秀的开发工具,本篇博客总结一些在 IDEA 中常用的快捷键,旨在提高开发效率,如果你想修改默认的快捷键,可以看我的这篇博客 IDEA 如何修改...

2020-08-30 22:35:50 829

转载 在日志中记录Java异常信息的正确姿势

遇到的问题今天遇到一个线上的BUG,在执行表单提交时失败,但是从程序日志中看不到任何异常信息。在Review源代码时发现,当catch到异常时只是输出了e.getMessage(),如下所示:logger.error("error: {}, {}", params, e.getMessage());在日志中看不到任何信息,说明e.getMessage()返回值为空字符串。原因分析先来看一下Java中的异常类图:Throwable是Java中所有异常信息的顶级父类,其中的成员变量d...

2020-08-30 22:19:10 569

转载 设置Crontab执行任务时不发送邮件

crontab的定时任务执行后都会给root发送一封邮件,通过以下方法可以防止这种情况SHELL=/bin/bashPATH=/sbin:/bin:/usr/sbin:/usr/bin#这是第一种方法,设置MAILTO参数为空MAILTO=""HOME=/# For details see man 4 crontabs# Example of job definition:# .---------------- minute (0 - 59)# | .------------- .

2020-08-17 21:41:51 3055

原创 SecureCRT中SFTP经常用到的命令

按ALT+P弹出SFTP窗口,弹出新窗口,就可以进行ftp操作。输入:help,显示FTP提供的命令pwd:显示linux主机上当前所在目录(即远程主机上的目录)lpwd:显示本地目录(假如你用windows上传文件,windows就是本地)ls:查询远程主机上当前目录下有哪些文件lls:查询本地当前目录下有哪些文件lcd:改变本地主机上的上传目录(本地目录)cd:改变远程主机上的接收目录(远程目录)get:将远程目录中的文件下载到本地目录put:将本地目录中的文件上传到远程目录quit

2020-08-02 17:07:56 328

原创 pyinstaller打包python程序

怕忘记,记一下。使用的是anaconda,先在anaconda中新建一个环境,然后先安装pillow,再安装pyinstaller。然后进入到脚本所在文件夹,利用环境对应的命令行执行pyinstaller -F xx.py。最后生成的exe在脚本所在的文件夹中,在dist文件夹中找。运行exe时,缺什么,就在pyinstaller所在的环境装什么。...

2020-01-01 01:00:26 117

空空如也

空空如也

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

TA关注的人

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