- 博客(113)
- 收藏
- 关注
原创 设计模式------装饰模式
一、 定义装饰模式(Decorator),动态的给一个对象添加一些额外的职责,为已有功能动态的添加更多功能的一种方式。装饰模式把每个要装饰的功能放在单独的类中,并让这个类包装它所要装饰的对象。二、 结构图Component是定义一个对象接口,可以给这些对象动态的添加职责。ConcreteComponent是定义了一个具体的对象,也可以给这个对象添加一些职责。Decorator是装饰抽象类,继承自Component类,从外类扩展Component的功能。ContreteDecorator是具体的装饰对
2020-11-17 17:15:05
88
原创 设计模式------面向对象特征及原则
面向对象特征:封装、继承、多态面向对象原则:一、 单一职责原则(SRP)就一个类而言,应该仅有一个引起它变化的原因。如果你能够想到多于一个的动机去改变一个类,那么这个类就具有多于一个的职责。二、 开放-封闭原则软件实体(类、模块、函数等)应该可以扩展,但是不可以修改。对应扩展是开放的,对于修改是封闭的。面对需求,对程序的改动是通过增加新代码进行的,而不是更改现有的代码。应对可能发生的变化,通过构造抽象来完成。开放-封闭原则是面向对象设计的核心所在,可以使程序可维护、可扩展、可复用、灵活性好。三
2020-11-12 19:10:55
108
原创 Yarn的调度负载模拟器
Yarn模拟器是 一个能够在一台机器上装载应用程序,模拟一个大规模的yarn集群的工具。模拟器使用实际的yarn resourcemanager,在相同的java虚拟机内,通过处理和调度NM/AMs心跳事件,模拟NodeManager和ApplicationMaster来移除网络因素。集群的规模和应用负载可以从配置文件中加载。模拟器在执行时会产生实时的指标:1) 整个集群和每个队列的资源使用率,可以被用来配置集群和队列的容量。2) 详细的应用程序执行跟踪记录可以用来分析,以便理解和验证调度器的行为(包
2020-11-11 18:44:33
340
原创 YARN的调度器--------公平调度器(Fair Schedule)
一、特点1) 可配置的层级队列:所有队列都来自于root队列。可用的资源被分配给root队列的孩子队列,孩子队列分得的资源可统一分配给孩子队列的孩子队列。公平调度支持为每个队列设置不同的策略,让队列通过用户想要的方式来分享资源。2) 自动把应用程序放置到队列中:允许管理员配置策略,把提交的应用程序自动的放置到合适的队列中。二、 配置1) 配置ResourceManager:在conf/yarn-site.xml中配置yarn.resourcemanager.scheduler.class,值为or
2020-11-11 09:57:33
873
原创 YARN的调度器-----容量调度器(Capacity Schedule)
一、特点1) 层级队列:在其他队列被运行使用空闲资源之前,层级队列可确保资源在改组织的子队列之间被共享,从而提供更多的可控制性和可预测性2) 容量保证:每个队列都分配了一部分容量,它们可以支配这部分资源。所有应用程序提交到一个特定队列,它将有权使用分给该队列的资源。管理员可以配置每个队列容量的最低保证和资源使用上限。3) 安全性:每个队列都有严格的ACL(控制访问列表),它可以控制用户提交应用程序到特定队列上。同时确保某一用户不能查看或修改其他用户提交的应用程序,并且支持队列管理员和集群系统管理员的设
2020-11-11 09:55:20
736
原创 设计模式-----策略模式
一、 定义**策略模式(Strategy)**定义了一组算法,分别封装起来,让它们之间可以相互替换,使算法的变化不会影响到使用算法的用户。策略模式封装了变化,如果需求是在不同的时间应用不同的业务规则,则可以考虑用策略模式,优点有:1) 以相同的方式调用所有的算法,减少了各种算法类与使用算法类之间的耦合2) 简化了单元测试,每个算法有自己的类,可以通过自己的接口单独测试二、 结构图三、 示例代码以商场收银为例,各种促销方式即各种总额计算方法。(代码待补充)四、 策略模式和简单工厂模式结合两
2020-11-10 10:25:08
85
原创 设计模式--------简单工厂模式
一、 定义创建一个工厂类,根据不同的参数返回不同的实例二、 组成一个抽象类,多个具体类,一个创建类,创建类中根据不同的参数返回不同的类三、 代码实现(后面完成,以计算器为例)待补充...
2020-11-06 14:41:34
80
原创 Clickhouse为什么有这么高的性能
一、 架构设计1、 MPP架构(海量数据并行处理架构),share nothing模式,每个节点访问自己的cpu、内存、磁盘,且与节点之间的数据访问并行。2、 向量执行引擎,从寄存器硬件层面优化,采用数据并行,速度提升指数级别。采用cpu缓存作为临时交换数据,速度比内存交换数据还要快。3、 列式存储和数据压缩4、 支持sql查询,采用关系型模型描述数据5、 支持表引擎,将数据存储抽象成独立的接口,根据实际应用场景,选择适合的表引擎。6、 多线程和并发处理数据,线程级别并行处理数据,横向上将表分片
2020-11-06 10:53:52
1352
原创 HBASE读流程
读流程1.Client 先访问zookeeper,获取hbase:meta 表位于哪个Region Server。2. 访问对应的Region Server,获取hbase:meta 表,根据读请求的namespace:table/rowkey,查询出目标数据位于哪个Region Server 中的哪个Region 中。并将该table 的region 信息以及meta 表的位置信息缓存在客户端的meta cache,方便下次访问。3. 与目标Region Server 进行通讯;4. 分别在Bl
2020-11-03 15:24:29
459
原创 HBASE写流程
写流程1、Client 先访问zookeeper,获取hbase:meta 表位于哪个Region Server;2. 访问对应的Region Server,获取hbase:meta 表,根据读请求的namespace:table/rowkey,查询出目标数据位于哪个Region Server 中的哪个Region 中。并将该table 的region 信息以及meta 表的位置信息缓存在客户端的meta cache,方便下次访问。3. 与目标Region Server 进行通讯;4. 将数据顺序
2020-11-03 15:20:24
134
原创 HBASE详细架构
Master:Master 是所有Region Server 的管理者,其实现类为HMaster,主要作用如下:1、对于表的操作:create, delete, alter2、对于RegionServer 的操作:分配regions 到每个RegionServer,监控每个RegionServer的状态,负载均衡和故障转移。Region ServerRegion Server 为 Region 的管理者,其实现类为HRegionServer,主要作用如下:1、对于数据的操作:get, put,.
2020-11-03 15:16:34
202
原创 ubuntu 18.04服务器版 在线搭建cdh6.2.1
一、准备三台虚拟机(全部root用户下操作)1、规划master server,agent mysqlslave1 agentslave2 agent2、修改主机名Vim /etc/hostnameReboot3、配置静态ip(root用户下)cd /etc/netplanVim 00-installer-config.yaml配置如下: # This is the network config written by 'subiquity'network:
2020-10-28 18:55:59
1217
3
原创 mongodb 安装部署及操作
一、安装部署1、sudo yum install libcurl openssl2、https://www.mongodb.com/try/download/community 官网下载sudo mkdir -p /var/lib/mongosudo mkdir -p /var/log/mongodbsudo chown hadoop /var/lib/mongosudo chown hadoop /var/log/mongodb启动:mongod --dbpath /var/lib/mo
2020-09-30 17:57:57
219
原创 java 泛型
package com.test;public class TClassMain { //泛型通配符 public String showValue(TClassTest<?> tc){ System.out.println(tc.getKey()); return tc.getKey().toString(); } //泛型方法 <T,K> public <T> T showTClass(
2020-09-29 15:34:27
97
原创 clickhouse集群安装部署
一、 安装每台机器上按照单节点模式安装,按照官网步骤安装:sudo yum install yum-utilssudo rpm --import https://repo.clickhouse.tech/CLICKHOUSE-KEY.GPGsudo yum-config-manager --add-repo https://repo.clickhouse.tech/rpm/clickhouse.reposudo yum install clickhouse-server clickhouse-cl
2020-09-25 16:45:18
4037
原创 Elasticsearch Java访问
package com.es.api;import com.alibaba.fastjson.JSONObject;import org.elasticsearch.action.get.GetResponse;import org.elasticsearch.action.index.IndexResponse;import org.elasticsearch.client.transport.TransportClient;import org.elasticsearch.common.se
2020-09-18 17:37:07
240
原创 Elasticsearch集群安装部署
一、 elasticsearch安装1、 jdk安装(版本1.8 忽略)2、 官网下载elasticsearch 7.9版本压缩包,上传到linux系统,解压tar -zxvf elasticsearch-7.9.0-linux-x86_64.tar.gz创建软连接ln -s elasticsearch-7.9.0 elasticsearch3、 配置elasticsearch.yml文件Node-1配置为:cluster.name: estestnode.name: node-1nod
2020-09-17 18:43:34
1575
原创 spring boot + freemarker 框架开发,前后端数据交互方式总结
1、前端是Get请求,后端直接返回数据列表前端js函数: function getBtnclick() { var ss=""; $("input[name='selcolTypeChild']").each(function () { ss += $(this).val().toString() + ","; }) ss = ss.substr(0,ss.length-1) $.ajax({ type: "GET",
2020-09-10 17:17:32
2485
原创 stop-all.sh停止不了hadoop集群
Hadoop集群使用stop-all.sh停止时,停止不了,提示各个进程都找不到,但是各个进程都存在。问题原因:hadoop启动停止都是通过hadoop-deamon.sh文件,脚本是通过pid文件来停止hadoop服务的。集群默认配置的pid文件位于/tmp目录下,linux系统默认每30天清理一次/tmp目录下的文件,pid文件丢失将导致无法正确关闭相应进程。问题解决:由于pid文件已经无法找回,所以只能先用jps获取进程号,然后用kill -9杀掉对应进程,停止集群。参考stop-all.sh及
2020-09-08 10:50:53
1716
原创 Hive删除外部分区表,报错:org.apache.hadoop.hive.ql.exec.DDLTask
hive中删除外部分区表后,又在另一个库中创建相同的外部分区表,都是从hdfs上的相同目录上读取数据,结果报错org.apache.hadoop.hive.ql.exec.DDLTask返回代码1解决方法:set hive.msck.path.validation=ignore;MSCK REPAIR TABLE table_name;其中的原理:待续...
2020-08-25 17:57:43
905
原创 collect_set、collect_list、lateral view 、explode、json解析
1、 collect_set、collect_list将分组中的某一列转为一个数组,collect_set去重,collect_list不去重Select uname,collect_set(bookname) as books from student group by uname访问:books[0],books[1],books[2]…………2、lateral view 、explodelateral view 与explode连用,用于把数组拆分为多行如:uid
2020-07-31 14:29:44
663
原创 Logstash语法
1、 区段{}定义区域2、 数据类型1) 希尔值 bool debug=>true2) 字符串 string host=>”hostname”3) 数值 number port=>5144) 数组 array match=>[“datetime”,”linux”,”2020”] 数组支持倒序下标5) 哈希 hashoptions =&g...
2020-03-31 19:34:24
2696
原创 Java代码访问hive数仓
1、 增加hdfs的配置,在core-site.xml文件中添加如下配置<property> <name>hadoop.proxyuser.hadoop.hosts</name> <value>*</value></property><property> <name>hadoop.pro...
2020-03-31 19:25:58
795
转载 hive中各种字符串转换为时间
Please refer below table to convert any date format into fixed format i.e yyyy-MM-dd .Input column name: dt (String).Replace dt with your column name.Input Format Code Output FormatddMMyyyy to_date...
2020-01-15 17:27:13
11430
原创 hive拉链表实现实例
1、准备数据表userodscreate table userods(u_name string,u_pwd string,u_register date,u_des string) row format delimited fields terminated by '\t';2、准备增量表user_inccreate table user_inc(u_name string,u_pwd ...
2020-01-15 16:47:41
684
原创 hive修改字段及字段类型
hive修改字段类型语句:alter table 表名 change column 原字段名 新字段名 字段类型;alter table user_chain change column u_register u_registe date;(u_register原类型为string类型)这样修改会报一个错误:FAILED: Execution Error, return code 1 fro...
2020-01-15 16:19:53
61867
原创 hive启动后,show databases报错semanticexception org.apache.hadoop.hive.ql.metadata.HiveException
报错如下:FAILED: SemanticException org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient网上找了一圈...
2019-12-18 10:23:51
1998
原创 hive启动报错---java.net.UnknownHostException: cluster
hive启动时报错如下:Exception in thread “main” java.lang.IllegalArgumentException: java.net.UnknownHostException: clusterat org.apache.hadoop.security.SecurityUtil.buildTokenService(SecurityUtil.java:377)a...
2019-12-16 19:22:41
5803
1
原创 namenode格式化报错
搭建hadoop集群时,namenode格式化报错如下:WARN namenode.NameNode: Encountered exception during format:org.apache.hadoop.hdfs.qjournal.client.QuorumException: Unable to check if JNs are ready for formatting. 1 exc...
2019-12-16 18:32:50
2987
2
原创 Hive内部表、外部表、分区表、location的重要区别
1、创建内部表及外部表加与不加location的区别加location时,在hdfs的目录/user/hive/warehouse下没有以该表名命名的目录;不加location时则存在以该表名命名的目录。加location时,加载数据时会在location后面所在的目录下创建分区目录或者数据目录。2、无论内部表外部表,load数据是hdfs上的数据时,load完会删除hdfs上的数据。如果是l...
2019-12-01 21:39:56
2851
原创 Airflow安装部署及遇到的问题总结
Airflow的安装部署操作系统是ubuntu16.04LTS,使用系统自带的python3.5.之前在utuntu14上安装airflow会提示要求python系统版本>=3.4.一、 安装1、 环境准备1)安装pip,使用python3时要安装pip3,使用命令sudo apt-get install python3-2)检查python依赖,输入python3命令,import ...
2019-11-29 17:51:39
1164
原创 Linux系统下Postgresql的安装部署及操作
一、 安装部署1、 下载软件从pgsql官网地址:https://www.postgresql.org/,进入后点击download就来到下载页,这里点击Linux下面的Other Linux选项,然后点击下方的tar.gz archive下载二进制归档,进入下载页面后,根据自己的机器类型选择要下载的包,本机为x86-64,下载包为postgresql-10.1-1-linux-x64-bin...
2019-11-22 17:51:25
1496
原创 IDEA快捷键总结
//////////////////////////////代码导入******1、ctrl+alt+s 设置菜单2、Ctrl+d 复制行或者已选代码块3、Alt+/ 代码自动补全4、Alt+insert 自动生成构造方法等5、Ctrl+shift+回车 自动补全结尾6、Ctrl+j 自动代码生成模板,例如psvm,sout等7、Alt+回车 导包或者修正已经导入的包//...
2019-09-30 11:00:37
135
原创 Flume安装及组件作用配置
1、flume安装解压,conf目录下拷贝配置,安装目录下测试运行 Tar -zxvf apache-flume-1.8.0.0-bin.tar.gz cp flume-conf.properties.template flume-conf-sequence.properties bin/flume-ng agent -n agent1 -c conf -f conf/flum...
2019-09-25 10:51:25
515
原创 hbase集群搭建
一、规划硬件内存:region服务器和blockcache需要内存无上限,hbase master server 2GB,hbase region server 16GB磁盘:服务器需要大量存储空间,1TB或2TB,可以根据数据规模及操作挂载磁盘Java:1.7以上版本对hbase支持较好二、安装1、上传安装包到bdmaster节点的/home/hadoop/app目录下,并解压安装;...
2019-09-24 15:00:03
385
1
原创 sqoop安装及导入导出命令
Sqoop1、安装1)解压sqoop安装包2)配置进入conf目录下 mv sqoop-env-template.sh sqoop-env.sh3)将mysql的jar包放到sqoop的lib目录下4)启动先启动hadoop,再使用sqoop二、sqoop使用命令1、sqoop improt1)访问明码访问:sqoop list-databases \–connect...
2019-09-24 12:31:01
223
原创 hive的安装部署
一、mysql安装1、在线安装mysql使用yum在线安装mysql:yum install mysql-server2、启动mysql服务使用service mysqld start命令启动mysql服务3、设置mysql root用户密码Mysql刚刚安装完成,默认root用户是没有密码的,登录mysql设置root用户密码。Enter password: 默认没有密码,回车...
2019-09-05 10:47:06
1312
原创 resourcemanager异常退出问题,报错Received stat error from Zookeeper. code:CONNECTIONLOSS
yarn的高可用中一个resourcemanager异常退出,查看日志报错如下:Received stat error from Zookeeper. code:CONNECTIONLOSS. Not retrying further znode monitoring conne问题描述:zookeeper连接丢失解决:修改zookeeper的配置文件,在zoo.cfg中,修改ticktim...
2019-09-04 10:36:23
882
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅