自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 资源 (1)
  • 收藏
  • 关注

原创 HDFS入门学习(转自尚硅谷)

HDFS概述HDFS产生背景随着数据量越来越大,在一个操作系统存不下所有的数据,那么就分配到更多的操作系统管理的磁盘中,但是不方便管理和维护,迫切需要一种系统来管理多台机器上的文件,这就是分布式文件管理系统。HDFS只是分布式文件管理系统中的一种。HDFS定义HDFS(Hadoop Distributed File System),它是一个文件系统,用于存储文件,通过目录树来定位文件;其次,它是分布式的,由很多服务器联合起来实现其功能,集群中的服务器有各自的角色。HDFS的使用场景:适合一次写入,

2021-01-23 00:09:35 272

原创 Hadoop基础环境搭建完整版

Hadoop基础环境搭建(TODO)个人学习记录说明个人学习记录基于虚拟机搭建,需要提前准备虚拟机环境搭建版本:hadoop-3.1.3搭建HDFS和yarn提前准备Hadoop安装包:hadoop-3.1.3.tar.gzHadoop下载地址:https://archive.apache.org/dist/hadoop/common/hadoop-3.1.3/提前准备JDK安装包:jdk-8u212-linux-x64.tar.gz环境准备准备3台虚拟机,最低要求:内存4G,硬盘

2021-01-06 01:07:57 1891

原创 Hadoop框架介绍(转自尚硅谷)

Hadoop是什么Hadoop是一个由Apache基金会所开发的分布式系统基础架构。主要解决,海量数据的存储和海量数据的分析计算问题广义上来说, Hadoop通常是指一个更广泛的概念-Hadoop生态圈Hadoop三大发行版本Hadoop三大发行版本:Apache、Cloudera、Hortonworks。Apache版本最原始(最基础)的版本,对于入门学习最好。Cloudera内部集成了很多大数据框架。对应产品CDH。Hortonworks文档较好。对应产品HDP。Hadoop的优势

2021-01-05 08:48:12 460

原创 springboot because its MIME type (‘application/json‘) is not a supported stylesheet MIME type

问题说明前端项目基础架构是react,后端基础架构是springboot。前端的部署方式,通过maven打包成jar包,后端通过maven进行依赖,用户在浏览器访问127.0.0.1:8080端口来访问前端页面。也就是说前端所有的资源都是通过后端接口返回的。包括一些ccs、js、svg静态资源等等。当项目增加了资源认证服务Security+OATH2之后,需要对前端的一些资源进行过滤,否则在浏览器的控制台就会出现错误:because its MIME type (‘application/json’)

2020-11-05 20:08:41 9208 1

原创 springSecurityFilterChain Pattern cannot be null or empty

项目中集成了springSecurity和oath2,某一天迁移代码后发现项目启动异常错误日志:2020-10-29 21:07:58.735 - ERROR [ main] org.springframework.boot.SpringApplication reportFailure 826 : Application run failedorg.springframework.beans.factory.BeanCreationException: Error creating bean wit

2020-10-29 21:54:41 3395 1

原创 java23种设计模式汇总

java23种设计模式汇总设计模式概念和七大原则设计模式概念和七大原则工厂模式java设计模式-工厂模式之抽象工厂模式java设计模式-工厂模式之工厂方法模式java设计模式-工厂模式之简单工厂模式其他java设计模式-组合模式java设计模式-观察者模式java设计模式-装饰器模式java设计模式-迭代器模式java设计模式-适配器模式java设计模式-命令模式java设计模式-外观模式java设计模式-MVC模式java设计模式-生成器模式java设计模式-桥接模式j

2020-09-17 23:44:33 163

原创 Greenplum 6.0安装教程

一、Greenplum简介Greenplum数据库系统体系结构的高级概述。Greenplum数据库通过在多个服务器或主机之间分配负载来存储和处理大量数据。Greenplum中的逻辑数据库是一组单独的PostgreSQL数据库,这些数据库协同工作以呈现单个数据库映像。该主是入口点,Greenplum的数据库系统。它是用户连接并提交SQL语句的数据库实例。主服务器协调系统中其他数据库实例(称为segment)的工作负载,这些实例处理数据处理和存储。这些段通过互连(Greenplum数据库的网络层)相

2020-09-17 23:27:25 1418

原创 开源造数小工具,可以自定义表结构和规则一键批量生产测试数据

自定义构建测试数据工具主要功能对mysql数据库批量构建模拟业务流程的测试数据,可用于系统压力测试、POC演示、BI报表展示、数据分析指标加工逻辑测试。可自定义库表结构,自定义关联关系,支持复杂的数据结构生成。通过符合特定规则的JSON配置文件,转换成对数据库表的DDL操作和DML操作。项目地址 自定义构建测试数据工具目录结构.├── README.md├── config│ ├── custom-build-data.yml│ ├── dataconf│ │ ├─

2020-09-17 00:13:46 2365

原创 java设计模式-工厂模式之抽象工厂模式

抽象工厂模式抽象工厂模式(Abstract Factory Pattern):提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们具体的类。抽象工厂模式又称为Kit模式,属于对象创建型模式。设计原则:1.依赖抽象,不要依赖具体类。(依赖倒置,减少具体类的依赖)抽象工厂模式-提供一个接口,用于创建相关或依赖对象的家族(也就是一组相关的对象),而不需要明确制定具体类。设计背景汽车工厂进行汽车生产时,汽车的“制造步骤”都是一致的。但唯独具体的车型是不同的。制造步骤:根据类型生产汽车获得汽车

2020-09-17 00:02:29 162

原创 java设计模式-工厂模式之工厂方法模式

工厂方法模式工厂方法模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。设计原则:1.依赖抽象,不要依赖具体类。(依赖倒置,减少具体类的依赖)工厂方法模式-定义了一个创建对象的接口,但由子类决定要实例化的类是哪一个。工厂方法让类把实例化推迟到子类。设计背景汽车工厂进行汽车生产时,汽车的“制造步骤”都是一

2020-09-17 00:02:19 124

转载 设计模式概念和七大原则

设计模式概念和七大原则转载 设计模式概念和七大原则什么是设计模式在GoF(Gang of Four)的书籍《Design Patterns - Elements of Reusable Object-Oriented Software(设计模式-可复用面向对象软件的基础)》中是这样定义设计模式的:Christopher Alexander说过:“每一个模式描述了一个在我们周围不断重复发生的问题以及该问题的解决方案的核心。这样,你就能一次又一次地使用该方案而不必做重复劳动” [AIS+77,第10页

2020-09-17 00:01:41 183

原创 java设计模式-工厂模式之简单工厂模式

简单工厂模式简单工厂模式(Simple Factory Pattern):又称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式(同属于创建型模式的还有工厂方法模式,抽象工厂模式,单例模式,建造者模式)。在简单工厂模式中,可以根据参数的不同返回不同类的实例。简单工厂模式专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。简单工厂模式-专门定义一个工厂类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。设计背景银行的储蓄卡有很多种联名卡,很

2020-09-16 01:06:54 241

原创 java设计模式-组合模式

组合模式组合模式(Composite pattern)是一种结构型设计模式, 你可以使用它将对象组合成树状结构, 并且能像使用独立对象一样使用它们。在使用组合模式中需要注意一点也是组合模式最关键的地方:叶子对象和组合对象实现相同的接口。这就是组合模式能够将叶子节点和对象节点进行一致处理的原因。组合模式-允许你将对象组成树形结构来表现“整体/部分”的层次结构。组合能让客户以一致的方式处理个别对象和对象组合设计背景计算机的文件系统,文件系统由文件和目录组成,目录下面也可以包含文件或者目录,计算机的文

2020-09-16 01:05:02 169

原创 java设计模式-观察者模式

观察者模式当对象间存在一对多关系时,则使用观察者模式(Observer Pattern)。比如,当一个对象被修改时,则会自动通知它的依赖对象。观察者模式属于行为型模式。设计原则:为了交互对象之间的松耦合设计而努力。观察者模式-在对象之间定义一对多的依赖,这样一来,当一个对象改变状态,依赖它的对象都会收到通知,并自动更新设计背景报社的业务就是出版报纸,向某一家报社订阅报纸,只要他们有新报纸出版,就会给你送来。只要你是他们的订户,你就会一直收到新报纸。只要你不想再看报纸的时候,取消订阅,他们就不会再送

2020-09-16 01:02:37 118

原创 java设计模式-装饰器模式

装饰器模式装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的功能。设计原则: 对扩展开放,对修改关闭(开闭原则)装饰者模式-动态地将责任附加到对象上。想要扩展功能,装饰者提供有别于继承的另一种选择设计背景手机卡有很多附加业务,比如说彩铃业务、来电显示、加量流量包10G、加量流量包20G、加量通话分

2020-09-16 01:00:52 110

原创 java设计模式-迭代器模式

迭代器模式迭代器模式(Iterator Pattern)是Java编程环境中非常常用的设计模式。这种模式用于顺序访问集合对象的元素,不需要知道集合对象的底层表示。迭代器模式属于行为型模式。设计原则:类应该只有一个引起改变的理由,尽量让每个类保持单一职责迭代器模式-提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露其内部的表示。模式结构和定义我们将创建一个叙述导航方法的 Iterator 接口和一个返回迭代器的 Container 接口。实现了 Container 接口的实体类将负责实现 It

2020-09-16 00:56:11 106

原创 java设计模式-适配器模式

适配器模式适配器模式适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口功能。举个真实的例子,读卡器是作为内存卡和笔记本之间的适配器。您将内存卡插入读卡器,再将读卡器插入笔记本,这样就可以通过笔记本来读取内存卡。适配器模式-将一个类的接口,转换成客户期望的另一种接口。适配器让原本接口不兼容的类可以合作无间。设计背景中国标准插头(三扁),中国香港使用英

2020-09-16 00:54:53 217

原创 java设计模式-命令模式

命令模式命令模式(个人感觉使用场景较少)命令模式(Command Pattern)是一种数据驱动的设计模式,它属于行为型模式。请求以命令的形式包裹在对象中,并传给调用对象。调用对象寻找可以处理该命令的合适的对象,并把该命令传给相应的对象,该对象执行命令。命令模式-将请求封装成对象,这可以让你使用不同的请求、队列,或者日志请求来参数化其他对象。命令模式也可以支持撤销操作设计背景我们首先创建作为命令的接口 Order,然后创建作为请求的 Stock 类。实体命令类 BuyStock 和 SellSto

2020-09-16 00:53:04 83

原创 java设计模式-外观模式

外观模式外观模式(Facade Pattern)隐藏了系统的复杂性,并向客户端提供了一个可以访问系统的接口。这种类型的设计模式属于结构性模式。为子系统中的一组接口提供了一个能够统一访问的高层接口,这个接口使得子系统更容易被访问或者使用。设计原则:最少知识原则:只和你的密友谈话外观模式-提供了一个统一的接口,用来访问子系统中的一群接口。外观定义了一个高层接口,让子系统更容易使用。当需要简化并统一一个很大的接口或者一群复杂的接口时,使用外观。外观将客户从一个复杂的子系统中解耦。实现一个外观,需要将子

2020-09-16 00:51:42 73

原创 java设计模式-MVC模式

MVC模式模型-视图-控制器,MVC设计模式的目的是将数据模型和视图分离开来,并以控制器作为连接两者的桥梁以实现解耦。属于架构模式。这种模式用于应用程序的分层开发。Model(模型) - 模型代表一个存取数据的对象或 JAVA POJO。它也可以带有逻辑,在数据变化时更新控制器。View(视图) - 视图代表模型包含的数据的可视化。Controller(控制器) - 控制器作用于模型和视图上。它控制数据流向模型对象,并在数据变化时更新视图。它使视图与模型分离开设计背景我们将创建一个作为模型的

2020-09-16 00:46:39 700

原创 java设计模式-生成器模式

生成器模式生成器模式(Builder Pattern)使用多个简单的对象一步一步构建成一个复杂的对象。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。生成器模式-封装一个产品的构造过程,并允许按步骤构造模式和结构定义应用实例举个例子,我们如果构建生成一台电脑,那么我们可能需要这么几个步骤需要一个主机需要一个显示器需要一个键盘需要一个鼠标需要音响等虽然我们具体在构建一台主机的时候,每个对象的实际步骤是不一样的,比如,有的对象构建了i7cpu的主机,有的对象构建了i5c

2020-09-16 00:46:18 152

原创 java设计模式-桥接模式

桥接模式桥接(Bridge)是用于把抽象化与实现化解耦,使得二者可以独立变化。这种类型的设计模式属于结构型模式,它通过提供抽象化和实现化之间的桥接结构,来实现二者的解耦。这种模式涉及到一个作为桥接的接口,使得实体类的功能独立于接口实现类。这两种类型的类可被结构化改变而互不影响桥接模式-不只改变你的实现,也改变你的抽象(把抽象化与实现化解耦,使得二者可以独立变化)模式和结构定义抽象角色(Abstraction): 抽象的定义,并保存一个Implementor对象的引用。扩展抽象角色(Refin

2020-09-15 01:06:33 197

转载 java设计模式-代理模式

代理模式转载:Java三种代理模式:静态代理、动态代理和cglib代理https://segmentfault.com/a/1190000011291179在代理模式(Proxy Pattern)中,一个类代表另一个类的功能。这种类型的设计模式属于结构型模式。代理模式提供了对目标对象额外的访问方式,即通过代理对象访问目标对象,这样可以在不修改原目标对象的前提下,提供额外的功能操作,扩展目标对象的功能代理模式-为另一个对象提供一个替身或占位符以访问一个对象举个例子我们生活中经常到火车站去买

2020-09-15 01:03:48 190

原创 java设计模式-解释器模式

解释器模式解释器模式(Interpreter Pattern)提供了评估语言的语法或表达式的方式,它属于行为型模式。这种模式实现了一个表达式接口,该接口解释一个特定的上下文。这种模式被用在 SQL 解析、符号处理引擎等。定义:给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。为了解释一种语言,而为语言创建的解释器模式和结构定义抽象解释器(AbstractExpression/Expression):声明一个所有具体表达式都要实现的抽象接口(或者抽象

2020-09-15 01:01:00 90

原创 java设计模式-中介者模式

中介者模式中介者模式-定义一个封装一组对象如何交互的对象通过使对象明确地相互引用来促进松散耦合,并允许独立地改变它们的交互。类型行为型模式和结构定义中介者模式角色介绍抽象中介者(Mediator)角色:它是中介者的接口,提供了同事对象注册与转发同事对象信息的抽象方法。具体中介者(ConcreteMediator)角色:实现中介者接口,定义一个 List 来管理同事对象,协调各个同事角色之间的交互关系,因此它依赖于同事角色。抽象同事类(Colleague)角色:定义同事类的接口,保存中介者对

2020-09-15 00:58:56 112

原创 java设计模式-访问者模式

访问者模式访问者模式-封装一些作用于某种数据结构的各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素的新的操作。(Visitor Pattern),行为型。访问者模式-是一个相对比较简单,但结构又稍显复杂的模式,它讲的是表示一个作用于某对象结构中的各元素的操作,它使你可以在不改变各元素的类的前提下定义作用于这些元素的新操作。模式和结构定义Visitor是抽象访问者,为该对象结构中ConcreteElement的每一个类声明一个Visit操作;ConcreteVisitor是具体访问

2020-09-15 00:57:00 139

原创 java设计模式-原型模式

原型模式原型模式-当创建给定类的实例的过程很昂贵或很复杂时,就使用原型模式(Prototype Pattern)不需要知道任何创建的细节,不调用构造函数。类型:创建型模式和结构定义原型是用来生成实例的,但不是利用类来生成实例,而是通过实例来生成实例。为什么我们需要用过类来生成实例呢?联想到浏览器中,如果我们生成了一个button实例,这个button实例经过一系列操作,携带了各种信息,比如button加颜色,加背景图,加文字,加事件等等。如果我们这时候需要和这个button实例完全一样的一个实例,

2020-09-15 00:55:05 95

原创 java设计模式-备忘录模式

备忘录模式备忘录模式-在不破坏封装的条件下,通过备忘录对象(Memento)存储另外一个对象内部状态的快照,在将来合适的时候把这个对象还原到存储起来的状态。类型:行为型模式和结构定义Originator:发起者,负责创建一个备忘录,并且可以记录、恢复自身的内部状态。可以根据需要决定Memento保存自身的那些内部状态Memento:备忘录,用于存储Originator的状态,防止Originator以外的的对象访问MementoCaretaker:备忘录管理者,负责存储备忘录,不能对备忘录的内

2020-09-15 00:47:53 141

原创 java设计模式-责任链模式

责任链模式责任链模式(Chain of Responsibility Pattern)为请求创建了一个接收者对象的链。这种模式给予请求的类型,对请求的发送者和接收者进行解耦。这种类型的设计模式属于行为型模式。在这种模式中,通常每个接收者都包含对另一个接收者的引用。如果一个对象不能处理该请求,那么它会把相同的请求传给下一个接收者,依此类推。责任链模式-当你想要让一个以上的对象有机会能够处理某个请求的时候,就使用责任链模式(Chain of Responsibility Pattern)模式和结构定义

2020-09-15 00:43:12 112

转载 java设计模式-享元模式

转载:Java设计模式(十二)----享元模式享元模式享元模式(Flyweight Pattern)主要用于减少创建对象的数量,以减少内存占用和提高性能。这种类型的设计模式属于结构型模式。如想让某个类的一个实例能用来提供许多“虚拟实例”,就使用享元模式(Flyweight Pattern)概念Flyweight在拳击比赛中指最轻量级,即“蝇量级”或“雨量级”,这里选择使用“享元模式”的意译,是因为这样更能反映模式的用意。享元模式是对象的结构模式。享元模式以共享的方式高效地支持大量的细粒度对象。.

2020-09-15 00:37:39 256

原创 java设计模式-策略模式

策略模式在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式。在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象改变而改变的 context 对象。策略对象改变 context 对象的执行算法。设计原则:找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。针对接口编程,而不是针对实现编程。多用组合,少用继承。总结:将变化之处独立出来,变化之处采用接口,非变化处采用继承实现代码复用,父

2020-09-15 00:30:26 238

原创 java设计模式-模板方法模式

在模板模式(Template Pattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。这种类型的设计模式属于行为型模式。设计原则:别找我,我会找你。由超类主控一切,当它们需要的时候,自然会去调用子类模板方法模式-在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。主要解决:一些方法通用,却在每一个子类都重新写了这一方法。设计背景一套毛坯的房子装修

2020-09-14 23:57:40 101

原创 java设计模式-单例模式

单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。单例模式-确保一个类只有一个示例,并提供全局访问。模式结构和定义应用实例1.懒汉式,线程不安全是否 Lazy 初始化:是是否多线程安全:否实现难度:易描述:这种方式是最基本的实现方式,

2020-08-09 23:20:21 111

原创 java设计模式-状态模式

在状态模式(State Pattern)中,类的行为是基于它的状态改变的。这种类型的设计模式属于行为型模式。在状态模式中,我们创建表示各种状态的对象和一个行为随着状态对象改变而改变的 context 对象。状态模式-允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类设计背景举个订单的例子,订单新建之后,需要对订单进行一个自动处理。订单状态的变化,下单、待支付、支付、发货、待收货、收货、订单结束等等。下单状态完成:订单状态=待支付待支付状态完成:订单状态=支付支付状态完成:订单状

2020-08-04 21:23:34 339

原创 使用TPC-DS对kudu进行基准测试

使用TPC-DS对kudu进行基准测试使用TPC-DS对kudu进行基准测试目录文章目录使用TPC-DS对kudu进行基准测试TPC-DS介绍kudu介绍安装TPC-DS工具初始化目录,提前准备sh脚本,使用TPC-DS工具生成测试数据和基准查询语句TPC—DS生成测试数据文件批量上传至HDFSTPC-DS提供DDL语句与impala和kudu建表语法有差异,需要手动改造impala外部表和kudu表的创建-外部表数据导入到kudu表中数据导入成功进行TPC—DS提供的基准查询使用TPC-DS工具对

2020-06-16 21:43:54 1685

原创 greenplum常用运维命令

greenplum常用命令&运维命令目录文章目录greenplum常用命令&运维命令元数据查看所有表基本信息查看表索引信息查询表的所有列信息查看哪些表是AO表哪些是HEAP表查看AO表的分布键查看分区表信息修改表字段类型数据运维启动和停止Greenplum数据库节点情况greenplum总体运行状态查看segment节点状态查看segment节点故障等历史信息检查segment instance同步状态查看segment节点磁盘空闲情况检查standby同步状态检查数据库日志显示在系统表

2020-06-11 16:13:58 2098 1

原创 springboot配置多个Filter过滤器,指定不同的过滤地址,并指定过滤顺序

springboot配置过滤器的两种方式1.使用注解@WebFilter、@Component。springboot将会自动注册过滤器,但是使用了@Component注解之后,自测urlPatterns将会无效,不管你写成什么拦截地址,最后查看控制台日志,过滤器注册的地址都是"/*"@Component@WebFilter( filterName = "AuthFilter",...

2019-03-06 00:13:37 7030 4

原创 Mysql5.6主从同步使用Atlas实现读写分离

Atlas架构介绍Atlas是Qihoo360开发的一个中间件,位于Client和MySQL Server中间层,可以作为读写分离,分库分表中间件。对于MySQL Server而言,Atlas像是个Client,而对于Client而言,Atlas则是一个DB server。Atlas官方链接: https://github.com/Qihoo360/Atlas/blob/master/README...

2018-03-14 17:12:15 578

tpc_ds_test.zip

使用TPC-DS工具对kudu列式存储数据库进行一个完整的自动化基准测试的shell脚本,下载下来配合文章可直接使用

2020-06-16

空空如也

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

TA关注的人

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