大数据开发学习路线 磨拳擦掌!说数据是一个企业最核心的东西之一,我想大家应该都能基本认同吧,毕竟连XXX都说过,这是一个数据为王的时代,谁掌握了数据谁就掌握未来!怪不得咱这里的小伙伴们个个都磨拳擦掌,都嚷嚷着想从事大数据相关的开发工作,问能不能整一个大数据开发相关的技术学习路线和知识点大梳理。得嘞,你们就负责冲,学习路线俺来安排!注:本文已收录于Github开源项目:github.com/hansonwang99/JavaCollection,里面有各大方向编程的详细自学路线、面试题和面经..
图解ZooKeeper的典型应用场景,超级简单 0 介绍zookeeper在很多框架中都有应用,例如:Dubbo,Hadoop,Kafka等,但典型的用法也就几种,掌握了这几种用法,再看zookeeper在相关框架中的应用就很轻松,下一篇文章将会详细介绍zookeeper在dubbo中的使用,以便有一个更深刻的了解本文参考了《从Paxos到ZooKeeper》,鉴于本文的定位是一篇科普性质的文章,因此对于一些诸如共享锁和分布式队列的具体实现没有进行更详细的描述,实际工作中需要实现时可以参考这本书zookeeper的数据模型和文件系统类似,每一
Lambda用在哪里?几种场景? 目录前言 Lambda表达式语法 案例 几种场景 口诀 函数式接口 Lambda用在哪里 总结前言上一篇我们介绍了Lambda的由来,今天我们看看Lambda的用法,看看如何简洁Lambda表达式语法Lambda的语法极为简单,类似如下结构:(parameters) -> expression或(parameters) -> { statements; }Lambda表达式由三部分组成:1、paramaters:类似方法中的形参列表,这里
Mysql 中,这 21 个写 SQL 的好习惯,你值得拥有呀 前言每一个好习惯都是一笔财富,本文分SQL后悔药, SQL性能优化,SQL规范优雅三个方向,分享写SQL的21个好习惯,谢谢阅读,加油哈~1. 写完SQL先explain查看执行计划(SQL性能优化)日常开发写SQL的时候,尽量养成这个好习惯呀:写完SQL后,用explain分析一下,尤其注意走不走索引。explain select * from user where userid =10086 or age =18;2、操作delete或者update语句,加个.
用漫画让你清楚了解linux内核,看懂了么? 作者Daniel Stori花了一幅漫画 “InSide The Linux Kernel” 。来自 TurnOff.us。贼生动形象了,一起来看看吧。我们先来看看这幅漫画的全貌!这幅漫画是以一个房子的侧方刨面图来绘画的。使用这样的一个房子来代表 Linux 内核。地基作为一个房子,最重要的莫过于其地基,在这个图片里,我们也从最下面的地基开始看起:地基(底层)由一排排的文件柜组成,井然有序,文件柜里放置着“文件”——电脑中的文件。左上角,有一只胸前挂着 421 号牌的..
了解HashMap数据结构,超详细! 写在前面:小伙伴儿们,大家好!今天来学习HashMap相关内容,作为面试必问的知识点,来深入了解一波!思维导图:学习框架图1,HashMap集合简介HashMap基于哈希表的Map接口实现,是以key-value存储形式存在,即主要用来存放键值对。HashMap的实现不是同步的,这意味着它不是线程安全的。它的key、value都可以为null。此外,HashMap中的映射不是有序的。JDK1.8之前的HashMap由数组+链表组成的,数组是HashMap的主体,链表则是主要为
全面解析ArrayList,超详细! 写在前面:小伙伴儿们,大家好!上一篇我们介绍了HashMap相关知识点——了解HashMap数据结构,超详细!今天来学习ArrayList相关内容,作为面试必问的知识点,来深入了解一波!思维导图:ArrayList学习图1,ArrayList底层数据结构ArrayList就是动态数组,是List接口的可调整大小的数组实现;除了实现List接口之外,该类还提供了一些方法来操纵内部使用的存储列表的数组大小。它的主要底层实现是数组Object[] elementData。数组的
MySQL存储引擎InnoDB与Myisam的六大区别 MySQL有多种存储引擎,每种存储引擎有各自的优缺点,可以择优选择使用:MyISAM、InnoDB、MERGE、MEMORY(HEAP)、BDB(BerkeleyDB)、EXAMPLE、FEDERATED、ARCHIVE、CSV、BLACKHOLE。MySQL支持数个存储引擎作为对不同表的类型的处理器。MySQL存储引擎包括处理事务安全表的引擎和处理非事务安全表的引擎:· MyISAM管理非事务表。它提供高速存储和检索,以及全文搜索能力。MyISAM在所有MySQL配置里被支持,它是默认的存储引擎,除
13个MySQL送命题!大厂必看 想进大厂,mysql不会那可不行,来接受mysql面试挑战吧,看看你能坚持到哪里?1. 能说下myisam 和 innodb的区别吗?myisam引擎是5.1版本之前的默认引擎,支持全文检索、压缩、空间函数等,但是不支持事务和行级锁,所以一般用于有大量查询少量插入的场景来使用,而且myisam不支持外键,并且索引和数据是分开存储的。innodb是基于聚簇索引建立的,和myisam相反它支持事务、外键,并且通过MVCC来支持高并发,索引和数据存储在一起。2. 说下mysql的索引有哪些吧,聚簇
老背题却记不住TCP为什么三次握手? 前言今天肥朝和大家唠唠老生常谈的一个问题,TCP为什么要三次握手。为什么会突然想起这个话题呢?按照肥朝以往的风格,网上一搜就一大把的文章,肥朝一般都是不愿意去提及的。其实每个技术人都或多或少萌生过写博客的想法,但是后面发现想写的内容网上似乎都有,最后就断了这个念头。因此,肥朝的定位就两个,一个是成体系的源码解析类文章(类似17年的Dubbo源码解析和19年的图解SpringBoot源码),一个是真实场景源码实战,既然是真实场景,那么雷同的概率就几乎忽略不计了。既然如此,那为啥要提T.
MySQL事务简介 前言:在学习 MySQL 的过程中,事务永远是一项绕不开的话题,日常程序开发也经常会用到事务。本篇文章将以 MySQL 8.0 版本为基础,一起来深入了解下 MySQL 事务。一、事务的定义数据库事务(Database Transaction) ,是指作为单个逻辑工作单元执行的一系列操作,要么完整地执行,要么完全地不执行。事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永久更新面向数据的资源。通过将一组相关操作组合为一个要么全部成功要么全部失败的单元,可以简化错误恢复并使应用程..
数据库范式介绍 前言:关于数据库范式,时常有听说过,一直没有详细去了解。一般数据库书籍或数据库课程会介绍范式相关内容,范式也经常出现在数据库考试题目中。不清楚你是否对范式有比较清晰的了解呢?本篇文章我们一起来学习下数据库范式吧。1.数据库范式简介为了建立冗余较小、结构合理的数据库,设计数据库时必须遵循一定的规则。在关系型数据库中这种规则就称为范式。范式是符合某一种设计要求的总结。要想设计一个结构合理的关系型数据库,必须满足一定的范式。范式的英文名称是 Normal Form ,简称 NF 。它是英国人 ..
java 使用Lambda和filter对对象集合过滤 1、如下:用户对象public class User(){ private String name; private int age; private String sex;}2、构造用户集合List<User> list = new ArrayList<>();User user1 = new User("张三",15,"男");User user2 = new User("李四",22,"男");User user3 = new User("王五",
Spring官方都推荐使用的@Transactional事务,为啥我不建议使用! 事务管理在系统开发中是不可缺少的一部分,Spring提供了很好事务管理机制,主要分为编程式事务和声明式事务两种。关于事务的基础知识,如什么是事务,数据库事务以及Spring事务的ACID、隔离级别、传播机制、行为等,就不在这篇文章中详细介绍了。默认大家都有一定的了解。本文,作者会先简单介绍下什么是声明式事务和编程式事务,再说一下为什么我不建议使用声明式事务。编程式事务基于底层的API,如PlatformTransactionManager、TransactionDefinition 和.
springboot或spring中使用编程式事务和声明式事务 spring中使用事务有两种方式,一种是编程式,一种是声明式。编程式事务编程式事务管理使用TransactionTemplate或者直接使用底层的PlatformTransactionManager。对于编程式事务管理,spring推荐使用TransactionTemplate。类似下面的代码,注入transactionTemplate后,执行execute方法,方法参数是一个TransactionCallback的匿名实现,TransactionCallbackWithoutResult是一个抽象
2020-10-29 Hadoop(分布式计算平台)从单个服务器扩展到数千台服务器,每台机器提供本地计算和存储存储系统HDFS(Hadoop DIstributed File System 分布式文件系统)使用Java实现的、分布式的、可横向扩展的分布式文件系统。可存储超大文件,采用流式数据访问模式,运行于通用X86服务器上。NameNode,是HDFS集群的管理节点,负责管理和维护HDFS集群的命名空间以及元数据信息并管理集群中的数据节点。有两个重要的文件:EditLog,用于记录针对文件的操作(文件
MySQL 冷、热备份 文章转自:http://www.linuxidc.com/Linux/2014-03/98710.htm冷备份(OFF, 慢, 时间点上恢复)冷备份发生在数据库已经正常关闭的情况下,当正常关闭时会提供给我们一个完整的数据库。冷备份是将关键性文件拷贝到另外位置的一种说法。对于备份数据库信息而言,冷备份是最快和最安全的方法。冷备份的优点:1.是非常快速的备份方法(只需拷贝文件)2.容易归档(简单拷贝即可)3.容易恢复到某个时间点上(只需将文件再拷贝回去)4.能与归档方法相结合,作数据..
2020-10-21 java 8的lambda表达式提供了一些方便list操作的方法,主要涵盖分组、过滤、求和、最值、排序、去重。跟之前的传统写法对比,能少写不少代码实体类import java.math.BigDecimal;import java.util.Date;public class User { private Long id; /** * 姓名 */ private String name; /** * 年龄 */.