自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 netstat 命令详解

netstat 常用语查看端口占用情况,一般结合grep port 一起使用常见参数-a (all)显示所有选项,默认不显示LISTEN相关-t (tcp)仅显示tcp相关选项-u (udp)仅显示udp相关选项-n 拒绝显示别名,能显示数字的全部转化成数字。-l 仅列出有在 Listen (监听) 的服務状态-p 显示建立相关链接的程序名-r 显示路由信息,路由表-e 显示扩展信息,例如uid等-s 按各个协议进行统计-c 每隔一个固定时间,执行该netstat命令。.

2021-11-10 13:40:11 1514

原创 ES 种常见查询操作

#------------------查询操作--------------------#查询出当前索引中的全部数据GET /movie_index/_searchGET /movie_index/_search?q=_id:66#查询全部GET /movie_index/_search{ "query": { "match_all": {} }}#根据电影的名称进行查询GET /movie_index/_search{ "query": { "matc...

2021-11-04 11:26:51 210

原创 ElasticSearch RestFulAPI(DSL)

DSL 全称 Domain Specific language,即特定领域专用语言查询集群健康情况查询各个节点状态 查询各个索引状态创建索引 查询某个索引的分片情况删除索引 对文档进行操作创建文档 根据文档 id 查看文档 API:GET /索引名/类型名/文档 id GET /movie_index/movie/1?pretty查询所有文档API...

2021-11-04 09:30:35 1365

原创 ElasticSearch 的基本概念

概念Elasticsearch 有几个核心概念,先理解这些概念将有助于掌握 Elasticsearch。近实时(Near Realtime / NRT)Elasticsearch 是一个近实时的搜索平台,从生成文档索引到文档成为可搜索,有一个轻微的延迟(通常是一秒钟)。集群(Cluster)ES 默认就是集群状态,整个集群是一份完整、互备的数据。集群是一个或多个节点(服务器)的集合。集群中的节点一起存储数据,对外提供搜索功能。集群由一个唯一的名称标识,该名称默认是“elasticsearch”。集群

2021-11-04 09:12:00 186

原创 ElasticSearch基础

1.1 简介Elasticsearch是一个高度可伸缩的开源全文搜索引擎。Elasticsearch让你可以快速、实时地存储、搜索和分析大量数据,它通常作为互联网应用的内部搜索引擎,为需要复杂搜索功能的应用提供支持。ElasticSearch是一个基于 Lucene 的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful web 接口。Elasticsearch 是用 Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。1.2 使用场景

2021-11-04 09:01:30 74

原创 数仓架构设计

离线数仓实时数仓

2021-11-03 13:49:31 61

转载 Flink 函数(Functions)

Flink-函数 | 用户自定义函数(UDF)标量函数 | 表函数 | 聚合函数 | 表聚合函数用户自定义函数(UDF) 用户定义函数(User-defined Functions,UDF)是一个重要的特性,它们显著地扩展了查询的表达能力 一些系统内置函数无法解决的需求,我们可以用UDF来自定义实现 在大多数情况下,用户定义的函数必须先注册,然后才能在查询中使用 函数通过调用registerFunction()方法在 TableEnvironment...

2021-11-03 09:29:06 710

转载 Table API和Flink SQL

概述Flink 对批处理和流处理,提供了统一的上层 API Table API 是一套内嵌在 Java 和 Scala 语言中的查询API,它允许以非常直观的方式组合来自一些关系运算符的查询 Flink 的 SQL 支持基于实现了 SQL 标准的 Apache Calcite使用样例 导入pom依赖,1.11.X之后,推荐使用blink版本 <!-- Table API 和 Flink SQL --><dependency> <groupId&.

2021-11-02 13:50:30 253

转载 Flink 容错机制

Flink-容错机制 | 一致性检查点 | 检查点到恢复状态过程 | Flink检查点算法(Chandy-Lamport) | 算法操作解析 | 保存点简介10.1 一致性检查点(checkpoint) Flink 故障恢复机制的核心,就是应用状态的一致性检查点 有状态流应用的一致检查点,其实就是所有任务的状态,在某个时间点的一份拷贝(一份快照);这个时间点,应该是所有任务都恰好处理完一个相同的输入数据的时候 (5这个数据虽然进了奇数流但是偶数流也应该做快照,因为属于同一个相同数

2021-11-02 13:32:02 133

原创 ProcessFunction API(底层API)

我们之前学习的转换算子是无法访问事件的时间戳信息和水位线信息的。而这在一些应用场景下,极为重要。例如MapFunction这样的map转换算子就无法访问时间戳或者当前事件的事件时间。​ 基于此,DataStream API提供了一系列的Low-Level转换算子。可以访问时间戳、watermark以及注册定时事件。还可以输出特定的一些事件,例如超时事件等。Process Function用来构建事件驱动的应用以及实现自定义的业务逻辑(使用之前的window函数和转换算子无法实现)。例如,FlinkSQL

2021-11-02 13:27:32 582

转载 Flink状态管理

Flink_Flink中的状态Flink状态管理详解:Keyed State和Operator List State深度解析<= 不错的文章,建议阅读算子状态(Operator State) 键控状态(Keyed State) 状态后端(State Backends)状态概述由一个任务维护,并且用来计算某个结果的所有数据,都属于这个任务的状态 可以认为任务状态就是一个本地变量,可以被任务的业务逻辑访问 Flink 会进行状态管理,包括状态一致性、故障处理以及高效存储和访..

2021-11-02 12:31:15 273

原创 Flink 时间语义和Watermark

1.Flink中的时间语义 Event Time:事件创建时间; Ingestion Time:数据进入Flink的时间; Processing Time:执行操作算子的本地系统时间,与机器相关; ​Event Time是事件创建的时间。它通常由事件中的时间戳描述,例如采集的日志数据中,每一条日志都会记录自己的生成时间,Flink通过时间戳分配器访问事件时间戳Flink 时间语义与Watermark及EventTime在window中的使用不同的时间语义有.

2021-11-02 12:28:19 185

原创 Window API

概述:窗口分配器——window()方法我们可以用.window()来定义一个窗口,然后基于这个window去做一些聚合或者其他处理操作。注意window()方法必须在keyBy之后才能使用。Flink提供了更加简单的.timeWindow()和.countWindow()方法,用于定义时间窗口和计数窗口。DataStream<Tuple2<String,Double>> minTempPerWindowStream = datastream .map(n

2021-11-02 11:14:56 582

原创 Flink的Window

streaming流式计算是一种被设计用于处理无限数据集的数据处理引擎,而无限数据集是指一种不断增长的本质上无限的数据集,而window是一种切割无限数据为有限块进行处理的手段。​Window是无限数据流处理的核心,Window将一个无限的stream拆分成有限大小的”buckets”桶,我们可以在这些桶上做计算操作。举例子:假设按照时间段划分桶,接收到的数据马上能判断放到哪个桶,且多个桶的数据能并行被处理。(迟到的数据也可判断是原本属于哪个桶的)Window类型 时间窗口(Ti...

2021-11-02 10:51:19 82

原创 Flink流处理API

1、支持的数据类型Flink流应用程序处理的是以数据对象表示的事件流。所以在Flink内部,我们需要能够处理这些对象。它们需要被序列化和反序列化,以便通过网络传送它们;或者从状态后端、检查点和保存点读取它们。为了有效地做到这一点,Flink需要明确知道应用程序所处理的数据类型。Flink使用类型信息的概念来表示数据类型,并为每个数据类型生成特定的序列化器、反序列化器和比较器Flink还具有一个类型提取系统,该系统分析函数的输入和返回类型,以自动获取类型信息,从而获得序列化器和反序列化器。但是,在某些..

2021-11-02 10:36:58 967

原创 Flink流处理API

1.Source​​​​​​​Flink-Environment的三种方式和Source的四种读取方式-从集合中、从kafka中、从文件中、自定义2.Transform2.1、map、flatMap、filter通常被统一称为基本转换算子(简单的转换算子)java代码:package apitest.transform;import org.apache.flink.api.common.functions.FilterFunction;import org.apache.fli

2021-11-02 09:43:23 569

转载 Flink流处理API

1、Environment 1.1)getExecutionEnvironment创建一个执行环境,表示当前执行程序的上下文。如果程序是独立调用的,则此方法返回本地执行环境;如果从命令行客户端调用程序以提交到集群,则此方法返回此集群的执行环境,也就是说,getExecutionEnvironment会根据查询运行的方式决定返回什么样的运行环境,是最常用的一种创建执行环境的方式。ExecutionEnvironment env ...

2021-11-02 08:46:56 69

原创 Flink运行架构

Flink-运行时架构中的四大组件|任务提交流程|任务调度原理|Slots和并行度中间的关系|数据流|执行图|数据得传输形式|任务链Flink运行时组件 Flink运行时架构主要包括四个不同的组件,它们会在运行流处理应用程序时协同工作: 作业管理器(JobManager) 资源管理器(ResourceManager) 任务管理器(TaskManager) 分发器(Dispatcher) 因为Flink是用Java和Scala实现的,所以所有组件都会运行在...

2021-11-01 18:43:04 226

转载 Flink基础及理论

1、Flink特点1)事件驱动(Event-driven)2)基于流处理一切皆由流组成,离线数据是有界的流;实时数据是一个没有界限的流。(有界流、无界流)3)分层API越顶层越抽象,表达含义越简明,使用越方便越底层越具体,表达含义越丰富,使用越灵活4)Flink 对比 SparkStreaming数据模型:Spark采用RDD模型,spark streaming的DStream实际上也就是一组组小批数据RDD的集合,flink基本数据模型是数据流,以及事件(Event)序

2021-11-01 18:22:41 317

原创 Flink 学习笔记前置

学习大数据有几年了,一直没有涉及到Flink部分,正好最近时间充裕,便学习整理一份个人学习笔记,仅供参考,学习资源来自于B站尚硅谷及其他网友。实时处理框架值接触过sparkStreaming和flink所有只针对这两个所学框架先做些对比:flink 相比较spark Streaming这种微批准实时处理,完全是两种不同的实现方式。flink 是一种完全无间断的流处理,而sparkStreaming 是无限的微小批次组成的“流”,是同一批次数据积累完再去做处理,而Flink是来一条处理一条数据。f

2021-11-01 15:35:23 211

原创 k8s- PV 和PVC

2021-03-23 12:24:39 89

原创 k8s-核心技术-Helm

helm 安装

2021-03-23 11:50:00 94

原创 k8s-service组件

1、防止失联2、定义一组pod3.Pod和service关系4、常用 service类型

2021-03-22 15:32:31 147

原创 、kubernetes 核心技术-Controller 控制器

二、控制器与pod的关系三、deployment应用布置场景四、应用的升级回滚和弹性伸缩

2021-03-22 15:13:36 121

原创 kubernetes 核心技术-Pod

Pod 概述 Pod 是 k8s 系统中可以创建和管理的最小单元,是资源对象模型中由用户创建或部署的最 小资源对象模型,也是在 k8s 上运行容器化应用的资源对象,其他的资源对象都是用来支 撑或者扩展 Pod 对象功能的,比如控制器对象是用来管控 Pod 对象的,Service 或者 Ingress 资源对象是用来暴露 Pod 引用对象的,PersistentVolume 资源对象是用来为 Pod 提供存储等等,k8s 不会直接处理容器,而是 Pod,Pod 是由一个或多个 container 组..

2021-03-22 13:40:55 88

原创 K8s学习

一、kubernetes 概述1、kubernetes 基本介绍 kubernetes,简称 K8s,是用 8 代替 8 个字符“ubernete”而成的缩写。是一个开源 的,用于管理云平台中多个主机上的容器化的应用,Kubernetes 的目标是让部署容器化的 应用简单并且高效(powerful),Kubernetes 提供了应用部署,规划,更新,维护的一种 机制。传统的应用部署方式是通过插件或脚本来安装应用。这样做的缺点是应用的运行、配 置、管理、所有生存周期将与当前操作系统绑定,这样做并不..

2021-03-20 11:49:52 74

原创 Docker基础学习笔记

Docker 理念Docker是基于Go语言实现的云开源项目。基本概念容器:实例对象,是一个集装箱,可以把容器看作简易版的Linux环境;镜像:只读的模板,用来创建容器。可以创建多个容器,例如mysql redis centOS 等;仓库:集中存放镜像的。(阿里云与网易云有仓库镜像,可以加速)。Docker的主要目标是“Build,Ship and Run Any App,Anywhere”,也就是通过对应用组件的封装、分发、部署、运行等生命周期的管理,使用户的APP(可以是一个..

2021-03-18 16:23:10 97

原创 spring-security 认证授权流程

2021-03-17 15:50:19 137

原创 springSecurity安全框架

springSecurity本质SpringSecurity本质上是一个过滤器链,很多过滤器构成了一个过滤器链。通过查看源码,代码底层流程,重点看三个过滤器FilterSecurityInterceptor:是一个方法级的权限过滤器,基本位于过滤连的最底部super.beforeInvocation(fi) 表示查看之前的filter是否通过fi.getChain().doFilter(fi.getRequest(), fi.getResponse()); 表示真正的调用后台的.

2021-03-17 15:40:21 78

原创 shiro 安全框架梳理总结

shiro 介绍 Apache Shiro 是一个强大且易用的java安全框架,执行身份验证、授权、密码和会话管理。使用Shiro 的易于理解的API,可以快速、轻松地获得任何应用程序,从最小的移动应用到最大的网络和企业应用程序。主要功能三个核心组件:Subject、SecurityManger 和 RealmsSubject:即“当前操作用户”。但是,在Shiro中,Subject这一概念并不仅仅指人,也可以是第三方进程、后台帐户(Daemon Account)或其他类似事物。...

2021-03-17 09:07:40 188

转载 java基础

关于 JVM JDK 和 JRE 最详细通俗的解答1.1.2.1. JVMJava 虚拟机(JVM)是运行 Java 字节码的虚拟机。JVM 有针对不同系统的特定实现(Windows,Linux,macOS),目的是使用相同的字节码,它们都会给出相同的结果。什么是字节码?采用字节码的好处是什么?在 Java 中,JVM 可以理解的代码就叫做字节码(即扩展名为 .class 的文件),它不面向任何特定的处理器,只面向虚拟机。Java 语言通过字节码的方式,在一定程度上解决了传统解释型语言执行效率低的问

2020-07-30 10:04:53 113

原创 http和https协议区别详解

HTTP 是一种 超文本传输协议(Hypertext Transfer Protocol),HTTP 是一个在计算机世界里专门在两点之间传输文字、图片、音频、视频等超文本数据的约定和规范。HTTP 主要内容分为三部分,超文本(Hypertext)、传输(Transfer)、协议(Protocol)。超文本就是不单单只是本文,它还可以传输图片、音频、视频,甚至点击文字或图片能够进行超链接的跳转。上面这些概念可以统称为数据,传输就是数据需要经过一系列的物理介质从一个端系统传送到另外一个端系统的过程。通常

2020-07-29 11:42:24 217

转载 进制之间的转换(二进制、八进制、十进制、十六进制)转载

二进制二进制就是计算机常用的进制,即逢二进一。例如:1010八进制八进制即逢八进一。例如:626十进制十进制就是我们在计算中常用的进制,所以就不再举例(即逢十进一)十六进制十六进制与其它进制有所不同,在10到15用英文字母进行表示。上面就是对进制的简单介绍,下面就是对进制转换而进行介绍。1.二进制转八进制拿二进制数10010110举例首先需要3个二进制数各划分一个区域,不足时则补零。我们可以看出该二进制数为八位,我们需要补充一位,即010010110从

2020-07-29 11:36:28 1179

翻译 O(1), O(n), O(logn), O(nlogn) 关于时间复杂度的区别

在描述算法复杂度时,经常用到O(1), O(n), O(logn), O(nlogn)来表示对应算法的时间复杂度, 不过目前大家默认也通过这几个方式表示空间复杂度 。那么,O(1), O(n), O(logn), O(nlogn)就可以看作既可表示算法复杂度,也可以表示空间复杂度。大O加上()的形式,里面其实包裹的是一个函数f(),O(f()),指明某个算法的耗时/耗空间与数据增长量之间的关系。其中的n代表输入数据的量。比如时间复杂度为O(n),就代表数据量增大几倍,耗时也增大几倍。比如常见的遍历算法

2020-07-23 09:28:51 861

原创 JAVA 泛型学习整理

泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。 比如我们要写一个排序方法,能够对整型数组、字符串数组甚至其他任何类型的数组进行排序,我们就可以使用 Java 泛型。泛型方法( )你可以写一个泛型方法,该方法在调用时可以接收不同类型的参数。根据传递给泛型方法的参数类型,编译器适当地处理每一个方法调用。// 泛型方法 printArraypublic static < E > void print

2020-07-22 16:40:35 94

原创 JAVA 内部类梳理学习

Java 类中不仅可以定义变量和方法,还可以定义类,这样定义在类内部的类就被称为内部类。根据定义的方式不同,内部类分为静态内部类,成员内部类,局部内部类,匿名内部类四种。定义在类内部的静态类,就是静态内部类:public class Out { private static int a; private int b; public static class Inner { public void print() { System.out.println(a); } }}静态内

2020-07-22 16:21:37 59

原创 JAVA 注解梳理学习

概念:Annotation(注解)是 Java 提供的一种对元程序中元素关联信息和元数据( metadata)的途径和方法。 Annatation(注解)是一个接口,程序可以通过反射来获取指定程序中元素的 Annotation对象,然后通过该 Annotation 对象来获取注解中的元数据信息。4 种标准元注解:元注解的作用是负责注解其他注解。 Java5.0 定义了 4 个标准的 meta-annotation 类型,它们被用来提供对其它 annotation 类型作说明。@Target 修饰的对

2020-07-22 16:09:35 100

原创 JAVA反射梳理

动态语言:动态语言,是指程序在运行时可以改变其结构:新的函数可以引进,已有的函数可以被删除等结构上的变化。比如常见的 JavaScript 就是动态语言,除此之外 Ruby,Python 等也属于动态语言,而 C、 C++则不属于动态语言。 从反射角度说 JAVA 属于半动态语言。反射机制概念 ( 运行状态中知道类所有的属性和方法)在 Java 中的反射机制是指在运行状态中,对于任意一个类都能够知道这个类所有的属性和方法;并且对于任意一个对象,都能够调用它的任意一个方法;这种动态获取信息以及

2020-07-22 15:48:51 69

原创 JAVA 异常分类及处理梳理

如果某个方法不能按照正常的途径完成任务,就可以通过另一种路径退出方法。在这种情况下会抛出一个封装了错误信息的对象。此时,这个方法会立刻退出同时不返回任何值。另外,调用这个方法的其他代码也无法继续执行,异常处理机制会将代码执行交给异常处理器。异常分类:Throwable 是 Java 语言中所有错误或异常的超类。下一层分为 Error 和 ExceptionErrorError 类是指 java 运行时系统的内部错误和资源耗尽错误。应用程序不会抛出该类对象。如果出现了这样的错误,除了告知用户,剩下

2020-07-22 15:19:11 121

原创 JAVA 接口继承关系和实现及常用集合

接口继承关系和实现集合类存放于 Java.util 包中, 主要有 3 种: set(集)、 list(列表包含 Queue)和 map(映射)。1. Collection: Collection 是集合 List、 Set、 Queue 的最基本的接口。2. Iterator:迭代器,可以通过迭代器遍历集合中的数据3. Map:是映射表的基础接口ListJava 的 List 是非常常用的数据类型。 List 是有序的 Collection。 Java List ...

2020-07-22 15:08:26 158

空空如也

空空如也

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

TA关注的人

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