- 博客(147)
- 收藏
- 关注
原创 重拾java之mybaties
mybaties基于java的持久层框架,内部封装了jdbcmybaties=ibaties3.0以后的版本,是半自动化的持久层框架SQL与java编码分离,sql是开发人员控制。什么是动态SQL?同一个dao方法,根据不同的条件可以表示不同的SQL语句。主要是where语句有变化。使用mybatis提供的标签,实现动态语句SQL功能。主要是if,where,foreach,sql.使用动态SQL的时候,dao方法的形参使用java对象JDBC访问数据库的优缺点:优点:直观好理解缺点:创建好
2021-10-09 23:45:15
399
原创 重拾Java之spring之aspectj框架
首先配置依赖2.创建接口与实现类3.创建切面类。方法是在类的上面加上@aspect.这里用到的是@before:前置通知注解。属性 value是切入点表达式,是切入点切入的位置位置:在方法的上面特点:目标方法之前执行,不会改变目标方法的执行,不会改变目标方法的执行结果要加强一个还是多个方法要看execution后面的东西是一个还是带正则表达式例如:execution(public * (…))指定切入点为任意切入方法execution( set*(…))指定切入点为任意一个以set
2021-09-23 14:24:43
270
原创 重拾Java之spring之JDK动态代理
1.由于使用的是JDK的动态代理,所以pom.xml无需太大的改变,加入JUNIT依赖就可以了。2.写一个接口类3.写一个接口实现类4.写一个类实现InvocationHandler并重写其中的invoke方法。invoke方法中的method.invoke方法指的就是被调用的方法。我们在这个方法的上下加入我们想加入的功能。实现功能的增强。5.创建测试类,创建目标对象,创建InvocationHandler增强功能,使用proxy创建代理,代理的是someservice接口中的功能,第二个
2021-09-20 21:13:28
93
原创 重拾java之spring之注创建对象与赋值
使用注解的步骤:1.加入maven依赖 spring-context,在你加入spring-context的同时,间接加入spring-aop的依赖,使用注解必须使用spring-aop的依赖2.在类中加入spring的注解(多个不同功能的注解)3.在spring的配置文件中,加入一个组件扫描器标签,说明注解在你项目中的位置1)@Component@Component 作用:用于创建对象,等同于的id功能,属性value 是对象的名称,等于的id,value是唯一的。位置在类的上面。@Respo
2021-09-18 21:55:55
267
原创 重拾Java之spring配置文件之总xml文件
为了将xml文件解耦合,通常将xml按照功能划分,在通过一个总xml文件里的import resource属性加载所有xml配置文件。语法:<import resource=“其他配置文件的路径”/>关键字:“classpath”表示类路径(class文件所在的目录),需要使用classpath,告诉spring去哪加载读取配置文件在包含关系里还可以使用通配符(*,表示任意字符)注意主配置文件不能包含在通配符的范围内...
2021-09-15 21:42:03
115
原创 重拾Java之spring之通过bean标签注值(手动+自动)
简单属性赋值:首先创建一个calss对象,写上我们需要的属性值,写上set方法2.在xml文件里面创建bean标签,通过里面的property name value属性给目标类赋值。 name里写要赋值的属性名,value里写要赋的值。可在自己写的类里赋值,也可给java包里的已有的类赋值。bean标签下的赋值实质上是调用类里的set方法。3.创建测试类,这里最重要的就是ApplicationContext这个类,它可以读取spring配置文件,并创建类。 并通过ApplicationContex
2021-09-15 21:35:11
385
原创 重拾java之spring之使用bean标签创建文件
当我们想创建一个spring项目时,首先要创建以下几个东西:1.依赖,运行spring时需要用到的东西2.spring的配置文件,spring通过读取里面的bean标签创建对象(需注意,这个文件是创建在resource文件夹内的,resource文件夹是要自己创建的,创建后选中该文件夹-右键-mark directory as - resource root,然后new-XML_configuration_File-spring_config)3.熟悉的class类,用来实现功能4.在test
2021-09-13 22:42:19
133
原创 gitee上传文件到仓库
1.注册登录 gitee2.在gitee上创建仓库,点击右上角加号,选择新建仓库3.在任意磁盘下新建一个目录,存放下载下来的项目4.进入需要上传的文件夹,右击打开Git Bash窗口5.初始化一个本地仓库命令行:git init , 会在目录下创建一个.git的本地仓库6.将指定文件添加至暂存区命令行:git add 文件全称(可以是文件夹,也可以是多个文件,空格隔开)提交全部:git add .7.commit将暂存区内容提交至本地仓库(-m 是添加描述)命令行:git c
2021-09-12 00:40:19
7225
原创 Git2.32安装
下载地址:https://npm.taobao.org/mirrors/git-for-windows/v2.33.0.windows.2不建议去官网下载,下载速度很慢,而且中途经常出现网络错误。安装步骤:1.2.3.4.5.选择默认的vim编辑器6.可以自定义分支名字,这里选择Let Git decide:使用默认分支名字7.8.9.10.11.12.13.14.15.安装完成界面16.在cmd界面输入git --version 查看版本号,如出
2021-09-11 23:52:53
2783
2
原创 KaFuKa简单应用
3.安装:kafka_2.10(scala) 0.10.0.1(kafka) a.安装kafka_2.10-0.10.0.1.tgz b.复制至{/home/crx/soft} $>cp /mnt/hgfs/2.安装环境/download/apache-kafka/kafka_2.10-0.10.0.1.tgz /home/crx/soft/ c.解压 $>tar -zxvf kafka_2.10-0.10.0.1.tgz $>rm kaf
2021-04-16 21:30:01
314
原创 Kafka简介
Kafka在流式计算中,Kafka一般用来缓存数据,spark streaming通过消费Kafka的数据进行计算。Apache Kafka是一个开源消息系统,由Scala写成。是由Apache软件基金会开发的一个开源消息系统项目。Kafka最初是由LinkedIn开发,并于2011年初开源。2012年10月从Apache Incubator毕业。该项目的目标是为处理实时数据提供一个统一、高通量、低等待的平台。Kafka是一个分布式消息队列:生产者、消费者的功能。它提供了类似于JMS的特性,
2021-04-15 11:17:18
457
原创 FLUME 简介+安装+简单案例
Flume日志采集系统 (flume的翻译叫水槽:它就是管道输送)http://flume.apache.org/releases/content/1.6.0/FlumeUserGuide.html1.Flume是一种分布式,可靠且可用的服务,用于有效地收集,聚合和移动大量日志数据。它具有基于流数据流的简单灵活的架构。它具有可靠的可靠性机制和许多故障转移和恢复机制,具有强大的容错能力。2.Flume原始版本为Flume-OG,经过对整体架构的重新设计,已改名为Flume-NG. Flume发展
2021-04-13 18:02:54
186
原创 maven安装及搭建
1.maven安装及搭建 (参照word文档搭建)a.下载maven3.3.9版本。解压至D,将m2放到解压后的路径中b.配置本地仓库修改{Maven_HOME}/conf/settings.xml添加以下内容(本地仓库位置最好不要放在C盘,因为我们需要在线下载jar包):D:\Maven-3.3.9\m2\repositoryc.IDEA配置Maven【Setting】–>【Build,Execution,Deployment】–>【Build Tools】–> 【Mave
2021-04-11 10:54:26
128
原创 Scala的local,standbylone,onYarn模式简单练习
Spark四种安装模式:Local模式Spark单机运行,一般用于开发测试。Standalone模式构建一个由Master+Slave构成的Spark集群,Spark运行在集群中。Spark on Yarn模式Spark客户端直接连接Yarn。不需要额外构建Spark集群。Spark on Mesos模式Spark客户端直接连接Mesos。不需要额外构建Spark集群Cluster模式 :standalone,Yarn,Messos(国内很少用)说明:如果现有的集群框架中存在MR的相关
2021-04-01 17:03:15
171
1
原创 SPARK初学
Spark 介绍行业广泛使用Hadoop来分析他们的数据集。原因是Hadoop框架基于一个简单的编程模型(MapReduce),它支持可扩展,灵活,容错和成本有效的计算解决方案。这里,主要关注的是在处理大型数据集时在查询之间的等待时间和运行程序的等待时间方面保持速度。Spark由Apache Software Foundation引入,用于加速Hadoop计算软件过程。对于一个普遍的信念,Spark不是Hadoop的修改版本,并不是真的依赖于Hadoop,因为它有自己的集群管理。 Spark以两
2021-03-17 13:39:11
98
原创 初学SCALA
Scala简介hadoop生态圈—>java spark生态圈—>scala1.scala是面向对象的、面向函数的基于静态类型的编程语言。静态语言(强类型语言)静态语言是在编译时变量的数据类型即可确定的语言,多数静态类型语言要求在使用变量之前必须声明数据类型。例如:C++、Java、Delphi、C#,Scala等。 scala编译后是字节码文件可以调用java源有的库动态语言(弱类型语言)动态语言是在运行时确定数据类型的语言。变量使用之前不需要类型声明,通常变量的类型是被赋
2021-03-16 19:45:07
180
原创 Scala简介
hadoop生态圈—>java spark生态圈—>scala1.scala是面向对象的、面向函数的基于静态类型的编程语言。静态语言(强类型语言)静态语言是在编译时变量的数据类型即可确定的语言,多数静态类型语言要求在使用变量之前必须声明数据类型。例如:C++、Java、Delphi、C#,Scala等。 scala编译后是字节码文件可以调用java源有的库动态语言(弱类型语言)动态语言是在运行时确定数据类型的语言。变量使用之前不需要类型声明,通常变量的类型是被赋值的那个值的类型
2021-02-21 22:06:38
713
原创 hive的分区与分桶
【动态分区】通过股票案例进行说明(编程指南5.1): 下面介绍动态分区,因为按照上面的方法向分区表插入数据,如果源数据量很大,针对一个分区就要写一个INSERT,非常麻烦。 况且在之前的版本中,必须先手动创建好所有的分区后才能插入,这就更麻烦了,必须要知道源数据中有什么样的数据才能创建分区。 使用动态分区可以很好的解决以上问题,动态分区可以根据查询得到数据自动匹配到相应的分区中去 1)整理数据stocks.cvs 上传到hdfs $>hadoop fs -put sto
2021-02-08 16:49:31
207
原创 hive之partion静态分区
6.分区表partitionhive中的分区针对{表组织}进行规划的;【静态分区】:hive (stocksdb)>create table logs(ts bigint,line string) partitioned by (dt string,country string) row format delimited fields terminated by ‘,’ ; hive (stocksdb)> dfs -lsr /user; drwxr-xr-x - hyxy sup
2021-01-25 18:32:10
197
原创 hive简单操作
Thrift是一种接口描述语言和二进制通讯协议,它被用来定义和创建跨语言的服务。它被当作一个远程过程调用(RPC)框架来使用,是由Facebook为“大规模跨语言服务开发”而开发的。hive读时模式1.传统的关系型数据库在进行数据加载时,必须验证数据格式是否符合表字段定义,如果不符合,数据将无法插入 至数据库表中。这种模式称为“写时模式”。2.hive中,数据加载过程采用“读时模式”,加载数据时不进行校验,读取数据时如果不合法的是NULLHive DDL数据定义语言1.创建数据库 h
2021-01-18 20:27:13
159
原创 hive基础操作
删除表操作1)查看hdfs$> hadoop fs -lsr /userdrwxrwxr-x - hyxy supergroup 0 2019-05-27 08:57 /user/hive/warehouse/myhive.dbdrwxrwxr-x - hyxy supergroup 0 2019-05-27 08:57 /user/hive/warehouse/myhive.db/student2)查看mysql元数据TBS表:11 1558
2021-01-09 23:58:34
214
原创 hive+mysql联动
Hive on Mysql2.修改hive的配置文件 参照权威指南 a.{HIVE_HOME/conf}目录下,复制hive-env.sh.template $>cp hive-env.sh.template hive-env.sh $>gedit hive-env.sh 添加:【 export HADOOP_HOME=/home/crx/soft/hadoop 】 b.{HIVE_HOME/conf}目录下,复制hive-default.xml.sh.tem
2021-01-03 16:01:35
243
原创 hive补充+mysql在linux上的在线与离线安装
hive不支持存储过程和触发器,不支持高级编程Hive 架构1.hive是数据仓库,在Hadoop基础上处理结构化数据; 它驻留在hadoop之上,用户对数据的统计、查询和简单的分析操作;2.hive不是: a.关系型数据库; b.联机事务处理OLTP(on-line transaction processing) c.实时查询和行级更新操作3.hive特点: a.表模型存储在database(关系型)中,处理的数据存储在HDFS上; b.设计模式遵循联机分析
2021-01-02 17:30:03
240
原创 hive创建表
注:hive -e ‘’(临时查看) 可不用进入hive 就对hive进行操作__hive -S 只显示结果_________________ 1.查看数据库 创建数据库 使用数据库 创建表hive> show databases;hive> create database myhive;hive> use myhive;page472hive> create table student(sno string,name string ,age int)> ro
2021-01-01 21:36:46
550
原创 hive简介与安装
Hive 与Hadoop版本相对应1.什么是HiveHive:由Facebooke开源,用于解决海量结构化日志的数据统计 Hive:Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的SQL查询功能,可以将SQL语句转换为MapReduce任务进行运行。其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。本质是:将HQL转化成MapReduce程序
2020-12-23 22:53:03
125
原创 HBASE完全分布式的搭建
全分布式模式只能在HDFS上运行3.完全分布式搭建(停掉所有进程) a.遵循1.a-b-c三步; b.修改配置文件 【hbase-site.xml】 <property > <name>hbase.tmp.dir</name> <value>/home/crx/tmp/hbase</value> </property> <property &g
2020-12-19 14:48:24
170
1
原创 本地HBASE小练习
create ‘test’, ‘cf’list ‘test’put ‘命名空间:表名’ ,‘rowkey’,‘列族:empNo’,‘Cell值’put ‘test’, ‘row1’, ‘cf:a’, ‘value1’put ‘test’, ‘row1’, ‘cf:b’, ‘value2’put ‘test’, ‘row3’, ‘cf:c’, ‘value3’put ‘test’, ‘row4’, ‘cf:d’, ‘value4’scan ‘test’get ‘test’, ‘row1’g
2020-12-08 20:44:32
92
原创 HBASE本地模式安装
NOSQL的出现NOSQL数据库种类繁多,但是一个共同的特点都是去掉关系数据库的关系型特性,数据之间无关系,这样就非常容易扩展。NOSQL有如下特点:模式自由:不像传统的关系型数据库需要定义数据库、数据表等结构才可以存取数据,数据表中的每一条记录都可能有不同的属性和格式;逆范式:去除约束,降低事务要求,更利于数据的分布式存储,与MySQL范式相反;多分区存储:存储在多个节点上,很好地进行水平扩展,提高数据的读、写性能;多副本异步复制:为了保证数据的安全性,会保存数据的多个副本;弹性可扩展:
2020-12-06 18:37:43
320
原创 zookeeper总结
HADOOPHA场景下,即使Active节点发生故障,系统也不会自动触发从Active到Standby的故障转移。需要进行手动的故障转移。 手动故障转移显然不是我们所需要的解决方案。 为了实现自动故障转移,需要引入两个新组件:ZooKeeper和ZKFailoverController(ZKFC)进程。Apache ZooKeeper是一种高可用性服务,用于维护少量协调数据,通知客户端该数据的更改以及监视客户端是否存在故障。自动故障转移的实现依赖于ZooKeeper来实现以下功能:故障检测:集
2020-12-05 23:50:45
268
原创 zookeeper集群模式
1.zookeeper集群模式:a.[修改zoo.cfg文件]:tickTime=2000initLimit=10syncLimit=5dataDir=/home/crx/tmp/zookeeperclientPort=2181server.1=master:2888:3888server.2=slave1:2888:3888server.3=slave2:2888:3888b.在/home/crx/tmp/zookeeper目录下,创建myid文件>echo"1">>
2020-11-30 12:29:30
402
原创 zookeeper本地模式
HADOOPHA场景下,即使Active节点发生故障,系统也不会自动触发从Active到Standby的故障转移。需要进行手动的故障转移。 手动故障转移显然不是我们所需要的解决方案。 为了实现自动故障转移,需要引入两个新组件:ZooKeeper和ZKFailoverController(ZKFC)进程。Apache ZooKeeper是一种高可用性服务,用于维护少量协调数据,通知客户端该数据的更改以及监视客户端是否存在故障。自动故障转移的实现依赖于ZooKeeper来实现以下功能:故障检测:集
2020-11-26 16:03:44
330
原创 HDFS小测+部分答案
1.表示主机名与IP地址映射关系的文件是 (C )A. /etc/host.confB. /etc/hostnameC. /etc/hostsD. /etc/resolv.conf2.删除软链接,但不删除实际数据( A )A.rm -rf ./test_chk_lnB.rm -rf ./test_chk_ln/C.rm -r ./test_chk_ln/D.delete ./test_chk_ln/Hadoop 作者( C )A.Martin Fowler B.
2020-11-26 09:17:34
1586
原创 Hadoop编年史
2002年10月,Doug Cutting和Mike Cafarella创建了开源网页爬虫项目Nutch。2003年10月,Google发表Google File System论文。2004年7月,Doug Cutting和Mike Cafarella在Nutch中实现了类似GFS的功能,即后来HDFS的前身。2004年10月,Google发表了MapReduce论文。2005年2月,Mike Cafarella在Nutch中实现了MapReduce的最初版本。2005年12月,开源搜索项目Nut
2020-11-26 09:05:53
221
1
原创 zookeeper介绍
在分布式服务中,有一种最典型应用场景,就是通过对集群进行Master选举,来解决分布式系统中的单点故障。什么是分布式系统中的单点故障:通常分布式系统采用主从模式,就是一个主控机连接多个处理节点。主节点负责分发任务,从节点负责处理任务,当我们的主节点发生故障时,那么整个系统就都瘫痪了,那么我们把这种故障叫作单点故障。如下图传统方式是采用一个备用节点,这个备用节点定期给当前主节点发送ping包,主节点收到ping包以后向备用节点发送回复Ack,当备用节点收到回复的时候就会认为当前主节点还活着,让他继续提供服
2020-11-24 19:10:49
118
原创 解决journalnode与NameNode连接问题
org.apache.hadoop.ipc.Client: Retrying connect to server错误的解决的方法。一、问题描述HA按照规划配置好,启动后,NameNode不能正常启动。刚启动的时候 jps 看到了NameNode,但是隔了一两分钟,再看NameNode就不见了。测试之后,发现下面2种情况:1)先启动JournalNode,再启动Hdfs,NameNode可以启动并可以正常运行2)使用start-dfs.sh启动,众多服务都启动了,隔两分钟NameNode会退出,再
2020-11-23 14:41:09
1769
2
原创 高可用(high available)介绍与搭建
7*24小时不中断服务。quorum journal manager(QJM): 群体消息日志两个namenode,一个活跃(active namenode),一个不活跃(standby namenode),不能两个都处于活跃状态。datenode每隔3秒向两个datenode发送信息。通过群体消息日志来实现信息共享,不会出现因为一台namenode挂掉,信息丢失的情况。两个节点都称为"journalnode"(JN)群体消息日志activenanode有写的权限,standbynamenode有读的
2020-11-21 14:51:00
881
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人