自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 资源 (5)
  • 收藏
  • 关注

原创 大数据Hadoop生态圈介绍

大数据Hadoop生态圈-组件介绍 Hadoop是目前应用最为广泛的分布式大数据处理框架,其具备可靠、高效、可伸缩等特点。 Hadoop的核心组件是HDFS、MapReduce。随着处理任务不同,各种组件相继出现,丰富Hadoop生态圈,目前生态圈结构大致如图所示: 根据服务对象和层次分为:数据来源层、数据传输层、数据存储层、资源管理层、数据计算层、任务调度层、业务...

2019-07-12 14:22:47 52124 4

原创 Java动态代理

代理模式是一种设计模式,能够在不修改源目标的前提下,额外扩展源目标的功能。即通过访问源目标的代理类,再由代理类去访问源目标。

2023-04-19 09:34:33 566

原创 Seatunnel-2.3.0源码解析

的数据源到计算任务中。用户自定义数据源则通过实现。

2023-04-10 09:05:35 2631 1

原创 Minkube部署单节点kubernetes

minkube部署k8s

2023-02-10 09:20:44 852

原创 Abstract Queue Synchronizer——AQS

AQS 的全称为(AbstractQueuedSynchronizer),是一个用来构建锁和同步器的框架,使用 AQS 能简单且高效地构造出同步器, 如ReentrantLock,Semaphore,ReentrantReadWriteLock ,SynchronousQueue等。当然,我们自己也能利用 AQS 非常轻松容易地构造出符合我们自己需求的同步器。

2023-02-08 15:17:42 430

原创 线程安全与锁机制

Java线程安全与锁机制

2022-11-07 19:13:29 294

原创 Centos7编译安装OpenLDAP(2.5.11)

1、准备工作因为OpenLDAP会依赖openssl-1.1.1版本,因此需要检查环境的openssl版本,如果低于openssl-1.1.1,则需要重新安装查看当前环境openssl版本,不满足条件,则先进行openssl-1.1.1安装[root@control-plane local]# openssl versionOpenSSL 1.0.2k-fips 26 Jan 20171.1 openssl-1.1.1安装1)从openssl官网https:...

2022-03-31 16:24:42 2172

原创 单机部署Kube-batch

1、环境信息 利用虚拟机,通过Minikube搭建kubernetes环境,安装和使用kube-batch,虚拟机基础环境参数如下: 操作系统 Centos 7 (Linux 3.10.0-1160.el7.x86_64) CPU 8 核 内存 4 GB 磁盘 50 GB 2、kubernetes安装1)关闭防火墙、s...

2021-10-18 09:32:31 284

原创 设计模式——装饰器模式(Golang)

设计模式——装饰器模式(Golang)装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的功能。应用场景当不能用继承的方式来扩展功能时;或者要扩展的功能比较多,而且这些功能每一种组合都要实现时,用装饰器模式很显然更简单。 当对象的功能要求可以动态地添加,也可以再动态地撤销时。模式结构.

2021-02-08 12:39:20 1088

原创 开源关系数据库——PostgreSQL

一、什么是PostgreSQLPostgreSQL是一个功能强大的开源对象-关系数据库系统,使用和扩展了SQL语言,并结合了许多安全存储和扩展最复杂数据工作负载的功能。1、PostgreSQL架构PostgreSQL采用客户端/服务器的架构提供服务,整个系统由:连接管理系统、编译执行系统、存储管理系统、事务系统、系统表五部分组成。连接管理系统:由系统控制器负责接受外部操作请求,然后对请求进行预处理与分发;编译执行系统:由查询编译器负责操作请求在数据库中的分析处理和转化工作,查询执

2020-09-07 11:37:30 1161

原创 目录访问协议——LDAP

一、什么是LDAPLDAP(Lightweight Directory Access Protocol),轻型目录访问协议,是一个为查询、浏览和搜索而优化的数据库存储协议,该协议以树状结构存储数据,类似文件目录一样,LDAP只是一个协议,没有涉及到如何存储数据,因此,需要后端数据库组件来实现。与传统的关系数据库不同,它有优异的读写性能,但写性能差,并且没有事务处理、回滚等复杂功能,不适于存储修改频繁的数据。常与第三方系统相结合,做到账号互通,实现网站/系统的登录,以及用户权限统一管理。1、LDAP特

2020-09-02 09:12:02 975

原创 线程安全与锁机制

一、什么是线程安全线程安全:当多个线程访问一个对象时,如果不用考虑这些线程在运行时环境下的调度和交替执行,也不需要进行额外的同步,或者在调用方法进行任何其他的协调操作,调用这个对象的行为都可以获得正确的结果,即这个对象是线程安全的。Java中的线程安全,就是多个线程之间访问共享数据时,能够正确访问。将Java中访问共享数据的操作由线程安全的“安全程度”由强至弱分为:不可变、绝对线程安全、相对线程安全、线程兼容和线程对立。(1)不可变:不可变对象一定是线程安全的,如final关键字修饰的基本数据类

2020-09-01 14:15:36 530

原创 工作流调度引擎——Oozie

一、什么是OozieOozie由Cloudera公司贡献给Apache的基于工作流引擎的开源框架,用于Hadoop平台的工作流调度。由Oozie Client和Oozie Server两个组件构成,Oozie Server运行于Java Servlet(Tomcat)容器中的web程序。1、组件特性1)Oozie不仅实现多个MR工作流调度,也可以将多种异构程序合成一个工作流。使用Oozie时,若前一个任务执行失败,后一个任务就不会被调度。2)Oozie工作流是一个DAG,当需要执行多个关

2020-08-31 16:54:50 928

原创 交互式SQL查询引擎——Impala

一、什么是ImpalaImpala是Cloudera公司推出的,提供对HDFS、HBase数据的高性能、低延迟的交互式SQL查询功能,与Hive(底层使用MR引擎)相比,具备更快的处理速度。1、组件特性(1)基于内存进行计算,能够对PB级数据进行交互式实时查询、分析(2)无需通过MR,直接与HDFS和HBase交互(3)兼容HiveSQL,支持Hive基本查询操作(4)具有数据仓库特性,可对hive数据直接做数据分析(5)支持Data Local数据本地化,减少网络数据传输(

2020-08-27 09:19:48 845

原创 大数据存储引擎——Kudu

一、什么是Kudu【Fast Analytics on Fast Data】是一个既支持随机读写,又支持OLAP(Online analytical processing)分析的大数据存储引擎,平衡HDFS和HBase随机读写和批量分析性能的存储引擎。1、组织架构Master Server:负责监听集群tserver状态、管理元数据catalog tablet等功能Table Server:负责数据tablet存储,并向client提供数据读写服务。对于给定tabl...

2020-08-26 14:28:21 1156 1

原创 集中权限管理框架——Ranger

一、什么是RangerApache Ranger是提供集中式权限管理的框架,可以实现Hadoop生态中的HDFS、YARN、Hive、Kafka、Storm和Solr等组件进行细粒度的权限访问控制。同时提供审计功能,如日志审计,记录各个组件资料的访问信息。1、组件特性1)基于策略(Policy)的访问权限模型;2)通用的策略同步与决策逻辑,方便控制插件的扩展接入;3)内置常见系统(HDFS、YARN、HBase等)的控制插件,且可扩展;4)内置基于LDAP(轻量级目录访问协议)、

2020-08-24 17:08:46 1610

原创 NoSQL数据库——Redis

一、什么是Redis Redis是一个开源的,基于C语言编写的,包含多种数据结构、支持网络交互的、可基于内存也可持久化的日志型、key-value存储的NoSQL数据库。1、Redis数据类型 1)字符串(strings):可以进行数值计算; 2)列表(lists):链表方式实现,可以实现常数级别的头尾数据插入; 3)无序集合(sets):可以进行数据的求交、并、差集; 4)有序集合(sorted sets):...

2020-08-21 21:01:31 342

原创 分布式存储系统——HBase

一、HBase简介 Google三驾马车:GFS、MapReduce和BigTable代表Google针对大数据存储与处理提出的三种框架。其中,GFS是面向大规模数据密集型应用的、可伸缩的分布式文件系统(HFDS);MapReduce是处理海量数据的分布式并行计算的执行框架(MapReduce);BigTable是处理海量数据的分布式结构化数据存储系统。 因为BigTa...

2020-08-12 15:35:43 1550

原创 分布式消息订阅-发布系统——Kafka

一、什么是KafkaKafka是一个高吞吐量的分布式消息订阅-发布系统,其具备高性能、持久化、多副本备份、横向扩展能力。通过生产者向队列里写消息,消费者从队列里取消息进行业务逻辑,相对于传统的消息队列,实现业务逻辑的解耦,削峰和异步处理。二、基本概念主题(Topic):是特定类型的消息流。消息是字节的有效负载(Payload),话题是消息的分类名或种子(Feed)名。生产者(Producer):是能够发布消息到主题的任何对象。服务代理(Broker):已发布的消息保存在一组服务器中,它们

2020-08-12 09:29:00 1154

原创 大数据之分布式协调服务——Zookeeper

一、什么是Zookeeper  ZooKeeper是Hadoop的正式子项目,是Google的Chubby一个开源的实现,为分布式应用提供高效,可靠的分布式协调服务,提供诸如统一命名、状态同步、集群管理、配置同步、分布式锁等分布式基础服务。二、相关概念1、事务  事务是Zookeeper系统中能够改变服务器状态的操作,一般包括数据节点的创建和删除,数据节点内容更新和客户端会话创建于失效等操作。对于每一个事务请求,Zookeeper都会分配一个全局唯一的事务ID,用zxid表示,通常是一个64位的1

2020-07-31 18:12:52 604

原创 校招字节跳动——面试

1、join、left join 、 full join和cross join区别 join等价于inner join内连接,返回两个表中都有的符合条件的行; left join左连接,返回左表中所有的行和右表中符合条件的行; full join全连接,返回左表中所有的行和右表中所有的行,并按条件连接。 cross join笛卡尔积,返回左表...

2020-07-25 09:49:12 352

原创 大数据——数据流式处理

一、概念 大数据中包含两种处理方式:流处理和批处理。流处理:即流式处理。流式处理假设数据的潜在价值是数据的新鲜度,需要尽快处理得到结果。在这种方式下,数据以流的方式到达。在数据连续到达的过程中,由于流携带了大量数据,只有小部分的流数据被保存在有限的内存中。流处理方式用于在线应用,通常工作在秒或毫秒级别。 批处理:批处理方式中,数据首先被存储,然后再分析。MapReduce是非常重要的...

2020-07-22 10:47:49 13416

原创 快速检索与存储系统——Elasticsearch

一、什么是Elasticsearch?  ELASTICSEARCH(弹性搜索):是一款开源的分布式、RESTful风格的搜索和数据分析引擎,它底层基于Apache Lucene开源库进行封装,其不仅仅提供分布式多用户能力的全文搜索引擎,还可以被准确形容为:1、一个分布式的实时文档存储,每个字段可以被索引与搜索;2、一个分布式实时分析搜索引擎;3、能胜任上百个节点的扩展,并支持PB级别额结构化和非结构化数据。二、Elasticsearch基本概念全文搜索(Full-text Search) 

2020-07-22 10:30:42 670

原创 Java面试——手撕快速排序

public class test { public static void quickSort(int[] a, int left, int right) { if (left > right || left < 0 || right > a.length - 1) { return; } int key = a[left]; int i = l...

2020-06-04 20:21:52 390

原创 电信平台北向Java开发——证书校验

关于JAVA 北向应用服务器开发,Demo证书问题:Demo工程无法对接电信平台(证书问题)将Demo工程导入Eclipse后,修改相应电信平台的IP——BASE_URL,应用ID——appId,应用SERCRET——secret;运行出错,问题显示为:原因: 电信在2019-3月之后,将平台的证书做了更换,所以在SSL校验的时候,证书校验不通过,导致了如上问题:解决方法有两种:1、将ca.jks文件替换成电信平台的,CA证书连接为:。 2、取消证书校验。方法如下:...

2020-06-04 20:17:10 465

原创 Java开发+大数据开发-凉面考点总结

1、HDFS数据完整性校验 (a)校验和:Hadoop在写入数据到HDFS上时,会为每一个固定长度(默认是512字节)的数据执行一次“校验和”,“校验和”的值和数据一起保存起来。在传输前和传输后分别计算一个校验和,比较两者之间的值,常采用32位循环校验码的方式(CRC32)。 (b)数据块检测程序DataBlockScanner:DataNode运行着一个后台进程(DataBl...

2019-08-22 21:22:44 224

原创 LeetCode——SingleNubmber Ⅱ

题目 给定一组数字,这些数字里面每一个都重复出现了三次,只有一个数字只出现了一次,要求在O(n)时间和O(1)空间消耗内解出来。解题思路 时间复杂度要求O(n),因此不能排序后再进行遍历,同时空间复杂度为O(1),考虑通过位图计算,因为计算机中任何数据都是以二进制方式进行存储,因此可以利用位运算得出出现一次的数字。设计one,two,three分别表示出现一次、两次...

2019-08-16 16:52:58 177

原创 剑指offer(第二版)面试题48:最长不含重复字符的子字符串(Java)

题目 请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度。假设字符串中只包含从’a’到’z’的字符。例如,在字符串中”arabcacfr”,最长非重复子字符串为”acfr”,长度为4。解题思路动态规划思想 通过一个额外数组存储出现过字符的地址,数组默认为0,额外变量Max记录最长不重复子字符串长度,len积累当前子字符串长度。分两种情况:...

2019-08-09 14:54:46 928

转载 MySQL底层实现机制

摘要本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题。特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免混乱,本文将只关注于BTree索引,因为这是平常使用MySQL时主要打交道的索引,至于哈希索引和全文索引本文暂不讨论。文章主要内容分为三个部分。第...

2019-08-06 14:29:19 5348

原创 剑指offer(第二版)面试题36:二叉搜索树与双向链表(Java)

题目 输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。解题思路 利用分治策略,将排序二叉树分为左子树和右子树两个部分,其中左子树的最后一个节点为根节点的前一节点,右子树的第一个节点为根节点的后一个节点,二叉排序树中分为左节点和右节点,可以利用左节点存储前节点,右节点存储后节点,利用迭代计算的方式得到双向...

2019-08-05 15:39:48 178

原创 剑指offer(第二版)面试题34:二叉树中和为某一值的路径(Java)

题目输入一颗二叉树和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。二叉树结点的定义如下:struct BinaryTreeNode{ int m_nValue; BinaryTreeNode* m_pLeft; BinaryTreeNode* m_pRight;}解题思路先说一个具体的例子,输入下图的二叉...

2019-08-05 14:37:36 159

转载 关系数据设计-5大范式

数据库设计五大范式 设计关系数据库时,遵从不同的规范要求,设计出合理的关系型数据库,这些不同的规范要求被称为不同的范式,各种范式呈递次规范,越高的范式数据库冗余越小。过程 影响 1NF——>2NF 消除非主属性对码的部分依赖 2NF——>3NF 消除非主属性对码的函数传递依赖 3NF——>BCNF 消除主属性之间的部分函数依赖和传...

2019-07-28 10:00:50 892

原创 剑指offer(第二版)面试题31:栈的压入、弹出序列(Java)

题目输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的)解题思路建立一个辅助栈,把输入的第一个序列中的数字因此压入该辅助栈,并按照第二...

2019-07-26 09:05:11 112

原创 剑指offer(第二版)面试题29:顺时针打印矩阵(Java)

题目输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。例如:如果输入如下矩阵:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1、2、3、4、8、12、16、15、14、13、9、5、6、7、11、10。解题思路 ...

2019-07-25 21:52:24 187

原创 JAVA基础-第五部分

1、进程与线程关系 1)一个线程只属于一个进程,一个进程至少拥有一个或多个线程; 2)进程作为资源调度的基本单位,所有线程共享该进程资源; 3)线程作为调度的基本单位,真正实现在处理机上执行; 4)线程执行过程需要协作同步,不同进程的线程利用消息通信同步。2、进程与程序的区别 1)程序是一组有序的静态指令,进程是一次程序的执行过程 2)程序可以长期保...

2019-07-25 14:24:14 228

原创 剑指offer(第二版)面试题28:对称的二叉树(Java)

题目请实现一个函数,用来判断一棵二叉树是不是对称的,如果一棵二叉树和他的镜像是一样的,那么它是对称的。解题思路可以递归的方式进行查找,首先第二层,满足左节点等于右节点,然后分别将左节点和右节点作为参数传入checknext函数,在函数中,利用左节点的left与右节点的right、左节点的right与右节点的left递归判断,同时满足条件时进行下一层判断,当其中有一个为空或者不等,跳出递...

2019-07-25 11:12:22 149

原创 剑指offer(第二版)面试题26:树的子结构(java)

题目输入两棵二叉树A和B,判断B是不是A的子结构。例如图中所示的两棵二叉树,由于A中有一部分子树的结构和B 是一样的,因此B是A的子结构。解题思路要查找树A中是否存在和树B结构一样的子树,思路是第一步:先在树A中查找与根结点的值一样的结点,这实际就是树的先序遍历,当树A和树B为空时,定义相应的输出。如果树A某一结点的值和树B头结点的值相同,则调用findnext,做第二步判断。...

2019-07-25 10:42:23 115

原创 剑指offer(第二版)面试题24:反转链表(Java)

题目:定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点。解题思路:运用两个额外节点保存当前节点上一节点和当前节点下一节点,依次遍历时,改变当前节点指向前一节点,直到遍历完成代码如下:import java.io.IOException;public class test { public static void main(String[] a...

2019-07-25 09:56:55 177

原创 剑指offer(第二版)面试题23:链表中环的入口节点(Java)

题目如果一个链表中包含环,如何找出环的入口节点?解题思路可以用两个指针来解决这个问题。先定义两个指针P1和P2指向链表的头结点。如果链表中环有n个结点,指针P1在链表上向前移动n步,然后两个指针以相同的速度向前移动。当第二个指针指向环的入口结点时,第一个指针已经围绕着环走了一圈又回到了入口结点。剩下的问题就是如何得到环中结点的数目。我们可以使用一快一慢的两个指针。如果两个指针相遇,...

2019-07-24 21:38:45 109

原创 剑指offer(第二版)面试题19:正则表达式匹配(Java)

题目请实现一个函数用来匹配包括'.'和'*'的正则表达式。模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串"aaa"与模式"a.a"和"ab*ac*a"匹配,但是与"aa.a"和"ab*a"均不匹配解题思路递归实现每次分别在str 和pattern中取一个字符进行匹配,如果匹配,则...

2019-07-23 12:20:11 113

Zookeeper笔记.docx

zookeeper学gn习过程自己总结的基本概念,运行原理,使用方法和应用场景等笔记信息,对于初学者来说可以很快入门zookeeper,上手实战

2020-07-24

北向应用——电信平台CA证书.rar

该证书应用于电信平台2019年3月调整证书后,北向应用服务器开发,HTTPS证书验证,其中包括测试根证书、商用根证书。

2020-06-04

hcc-dataset.zip

该分析数据是运用关联规则挖掘病理数据的数据集,通过关联规则挖掘游泳信息

2019-05-13

购物篮分析.zip

其中融合了三种不同购物篮信息,满足对于关联规则中购物篮分析的数据需求,可以通过三种数据集进行验证和实验

2019-05-13

spark全案例

spark通过 java api开发方法的所有示例代码,保证准确可行

2018-12-05

空空如也

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

TA关注的人

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