- 博客(15)
- 收藏
- 关注
原创 KeyValueTextInputFormat与NLineInputFormat的简单使用
一、KeyValueTextInputFormat原理简述 KeyValueTextInputFormat使用案例: 1、需求 统计输入文件中每一行的第一个单词相同的行数。 (1)输入数据 banzhang ni hao xihuan hadoop banzhang banzhang ni hao xihuan hadoop banzhang (2)期望结果数据 banzhang 2 xihuan 2 2.需求分析 3.代码实现 (1)、Mapper: package com.atguigu.mapre
2020-07-30 21:49:22
426
原创 切片与MapTask并行度决定机制、FileInputFormat切片机制、ReduceTask并行度
目录1、切片与MapTask并行度决定机制1.1 问题引出1.2 MapTask并行度决定机制2、FileInputFormat切片机制2.1 切片机制(input.getSplits(job))2.2 切片大小参数配置3、ReduceTask的并行度3.1 设置ReduceTask并行度(个数)3.2 注意事项 1、切片与MapTask并行度决定机制 1.1 问题引出 1.2 MapTask并行度决定机制 2、FileInputFormat切片机制 2.1 切片机制(input.getSplits(job
2020-07-30 16:09:50
362
原创 ECMAScript 6基础语法总结
1、什么是 ECMAScript 6 ECMAScript 6.0(简称 ES6)是 JavaScript 语言的下一代标准, 2015 年 6 月正式发布。它的目标,是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言。 2、ECMAScript 和 JavaScript 的关系 **一个常见的问题是,ECMAScript 和 JavaScript 到底是什么关系?** 要讲清楚这个问题,需要回顾历史。1996 年 11 月,JavaScript 的创造者 Netscape
2020-07-29 20:39:57
391
原创 vue基础知识总结
一、什么是vue? 在为 AngularJS 工作之后,Vue 的作者尤雨溪开发出了这一框架。他声称自己的思路是提取 Angular 中为自己所喜欢的部分,构建出一款相当轻量的框架。Vue 最早发布于 2014 年 2 月。作者在 Hacker News、Echo JS 与 Reddit 的 javascript 版块发布了最早的版本。一天之内,Vue 就登上了这三个网站的首页。Vue 是 Github 上最受欢迎的开源项目之一。同时,在 JavaScript 框架/函数库中,Vue 所获得的星标数已超过
2020-07-29 20:10:10
297
原创 MybatisPlus中的删除和逻辑删除
删除又分为逻辑删除和物理删除,那么它们有什么区别呢? 物理删除:真实删除,将对应数据从数据库中删除,之后查询不到此条被删除数据。 逻辑删除:假删除,将对应数据中代表是否被删除字段状态修改为“被删除状态”,之后在数据库中仍旧能看到此条数据记录。 在我们日常开发中,为了保留数据,经常会使用逻辑删除的方式进行数据删除,下面我们就来看看物理删除与逻辑删除怎么实现的吧 首先假设我有这样一张表 实体类: package com.atguigu.mybatis_plus.entity; import java.util
2020-07-28 22:26:53
6710
1
原创 CombineTextInputFormat切片机制及其案例实操
框架默认的TextInputFormat切片机制是对任务按文件规划切片,不管文件多小,都会是一个单独的切片,都会交给一个MapTask,这样如果有大量小文件,就会产生大量的MapTask,处理效率极其低下。 一、应用场景: CombineTextInputFormat用于小文件过多的场景,它可以将多个小文件从逻辑上规划到一个切片中,这样,多个小文件就可以交给一个MapTask处理。 二、虚拟存储切片最大值设置 CombineTextInputFormat.setMaxInputSplitSize(job,
2020-07-28 21:16:16
769
原创 MapReduce中自定义bean对象并实现序列化接口
实现bean对象序列化步骤有如下7步。 (1)实现Writable接口 (2)反序列化时,需要反射调用无参构造器,所以必须有无参构造器 (3)重写序列化方法 (4)重写反序列化方法 (5)注意反序列化的顺序和序列化的顺序完全一致 (6)要想把结果显示在文件中,需要重写toString() (7)如果需要将自定义的bean放在key中传输,则还需要实现Comparable接口,因为MapReduce框中的Shuffle过程要求对key必须能排序 下面我们来看一个具体的案例 需求:统计每一个手机号耗费的总上行流
2020-07-28 20:12:15
959
原创 自定义实现MarpReduce中的WordCount功能
1、需求 在给定的文本文件中统计输出每一个单词出现的总次数。 2、环境准备 (1)创建Maven工程 (2)在pom.xml文件中添加如下依赖 <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>REL
2020-07-26 17:36:45
277
原创 在idea中搭建hadoop运行环境
今天我将为大家讲解一下如何使用idea搭建Hadoop运行环境,它一共有一下几个步骤: (1)、下载hadoop jar包 根据自己电脑的操作系统到官网下载hadoop jar包到非中文路径(例如:D:\Develop\hadoop-2.7.2) (2)、配置HADOOP_HOME环境变量 (3)、配置Path环境变量 4.创建一个Maven工程HadoopDemo 5.在pom文件中导入相应的依赖坐标+日志添加 <dependencies> <dependency
2020-07-25 22:04:50
5843
1
原创 MybatisPlus中的分页插件的使用
今天我将为大家讲解一下如何在springboot中集成MybatisPlus实现分页效果,首先我们将搭建一下环境并引入相关依赖。 环境: Springboot:2.2.1.RELEASE MybatisPlus:3.3.1 依赖: <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> &l
2020-07-25 20:56:14
3149
原创 MybatisPlus之乐观锁插件的简单使用
什么叫乐观锁呢?百度百科上是这样说的: 乐观锁机制采取了更加宽松的加锁机制。相对悲观锁而言,乐观锁更倾向于开发运用。悲观锁大多数情况下依靠数据库的锁机制实现,以保证操作最大程度的独占性。但随之而来的就是数据库性能的大量开销,特别是对长事务而言,这样的开销往往无法承受。而乐观锁机制在一定程度上解决了这个问题。 看百度百科上的例子: 如一个金融系统,当某个操作员读取用户的数据,并在读出的用户数据的基础上进行修改时(如更改用户帐户余额),如果采用悲观锁机制,也就意味着整个操作过 程中(从操作员读出数据、开
2020-07-21 23:11:21
578
原创 MybatisPlus如何自动填充时间
需求描述: 项目中经常会遇到一些数据,每次都使用相同的方式填充,例如记录的创建时间,更新时间等,而这两个字段也是阿里巴巴java开发手册中创建表时推荐我们添加的。因此,在这里,我将告诉大家如何使用MyBatis Plus的自动填充功能,完成这些字段的赋值工作。 首先在这里我有一张user表,我为它添加了一些数据,如下图所示。 第一步:在User表中添加datetime类型的新的字段 create_time、update_time。 第二步:实体类上增加字段并添加自动填充注解。 import java.ut
2020-07-19 22:38:18
2270
原创 如何用python打印等腰三角形
首先先来观察一下等腰三角形有什么特征 通过观察图片,我们可以发现这几个特征: 1、可知第一行有1个✳,第二行三个✳,第三行5个✳,可知第n行为2(n-1)+1✳ 2、✳前面还有空格,可知第一行有5个空格,第二行有4个空格,第三行便有3个,依次类推即可,如果把三角形倒过来看,便会发现,第n行有(n-1)个空格,这样更好理解 根据这些特征,我们可以这样写代码: for i in range(6):...
2019-09-24 19:57:51
28492
3
原创 用python如何求100以内的素数?
我们先来说一下素数的定义 素数:质数(prime number)又称素数,有无限个。一个大于1的自然数,除了1和它本身外,不能被其他自然数整除,换句话说就是该数除了1和它本身以外不再有其他的因数;否则称为合数。 根据这个特征,我们的代码可以这样写 i=2 while i<=100: for j in range(2,i): #除1和它本身之外的因数 if i%j=...
2019-09-24 17:23:32
2523
原创 二叉树三种遍历详解
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 今天在网上学...
2019-09-15 14:52:54
986
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅