自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Scala 中的函数和方法的区别

Scala 中的函数和方法的区别1.函数的基本语法:2.函数和方法的区别核心概念:为完成某一功能的程序语句的集合,成为函数。类中的函数称之方法。案例实操/** * 函数和方法的区别; * 1.核心概念 * 为完成某一功能的程序语句的集合,成为函数。 * 类中的函数称之为方法。 * */object Test_MethodAndFunction { def main(args: Array[String]): Unit = { // 1.Scala语言可以

2021-10-20 08:28:13 350

原创 在Scala和Java中子父类引用和实例的关系

子父类引用和实例的关系只能是父类的引用指向子类的实例在Scala中举个例子 (Null在Scala中是所有类的子类)val str:String = null --父类的引用可以指向子类的实例不能是子类的引用指向父类的实例val null1:Null = "aa":String --报错,子类的引用不能指向父类的实例...

2021-10-19 12:54:10 159

原创 Hive 中ntile(n)分组函数的使用

Hive 中ntile(n)分组函数的使用数据准备 business 表::name,orderdate,costjack,2017-01-01,10tony,2017-01-02,15jack,2017-02-03,23tony,2017-01-04,29jack,2017-01-05,46jack,2017-04-06,42tony,2017-01-07,50jack,2017-01-08,55mart,2017-04-08,62mart,2017-04-09,68neil,20

2021-10-18 21:05:09 309

原创 Scala 数据类型 分析

Scala 数据类型[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-z100nPaJ-1634560887311)(C:\Users\482426\AppData\Roaming\Typora\typora-user-images\image-20211018192353763.png)]1.Scala中的一切数据都是对象,都是Any的子类[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-abuoSx7Z-1634560887313)(C:\

2021-10-18 20:41:44 583

原创 Scala 中 Unit类型、Null类型和Nothing类型

Unit类型、Null类型和Nothing类型unit // unit val unit11 = { "hello" println(10) } val unit22 = { println(10) "hello" } // 虽然最后一行数据是字符串,但是返回值类型写的是unit,表示我不要, // 不要的话,就以不要的为主咯 // 即如果返回类型是unit,那么即使代码块最后一行有返回值,也

2021-10-18 20:41:08 1399

原创 Java 和 Scala 中的自动类型转换

Java 和 Scala 中的自动类型转换1.Java 中的自动类型转换// Java中的自动类型转换(隐式转换) // 再进行自动类型提升的时候,是按照阶梯型一级一级的提升的 // byte->short->int->long->float->double public static void main(String[] args) { byte n = 23; test(n); } public

2021-10-18 20:39:55 393

原创 (file-flume-kafka-flume-hdfs过程中)flume 配置文件的编写

flume 配置文件的编写flume 配置文件file-flume-kafka.conf 使用 TAILDIR source 1 # Name the components on this agent 2 a1.sources = r1 3 a1.channels = c1 4 5 # Describe/configure the source 6 a1.sources.r1.type = TAILDIR 7 a1.sources.r1.filegroups = f1

2021-10-17 23:59:39 626

原创 Sqoop的简单使用和使用参数介绍

Sqoop的简单实用和使用参数介绍1.验证Sqoop配置是否正确将mysql-connector-java-5.1.48.jar 上传到/opt/software/路劲进入到/opt/software/路劲,拷贝jdbc驱动到sqoop的lib目录下。我们可以通过一个command来验证sqoop配置是否正确:bin/sqoop help将会出现一些Warning警告,并伴随着帮助命令的输出:Available commands: codegen Generate

2021-10-17 21:42:39 619

原创 Linux 中显示隐藏文件

ls -a或者ll -a

2021-10-17 13:18:22 238

原创 Linux 中vim打开文件如何设置开启自动显示行号

第一步cd /etc第二步vim vimrc在文件的最后一行添加set number

2021-10-17 13:16:01 453

原创 SQL 中修改表名

alter table <原来的表名> rename to <新表名>;

2021-10-16 14:54:20 20757

原创 replace 的用法示例 (将sql表中的值替换)

题目描述update titles_test set emp_no = replace(emp_no,10001,10005)where id = 5;

2021-10-16 14:08:29 331

原创 电商常识中的SKU和SPU

SKUSKU=Stock Keeping Unit(库存量的基本单位)现在已经被引申为产品统一编号的简称,每种产品均对应有唯一的SKU号。SPUSPU(Standard Product Unit):是商品信息聚合的最小单位,是一组可复用,易检索的标准化信息集合。例如:iPhone13手机就是SPU。一台银色、128G内存的、支持联通网络的iPhone13,就是SKU。SPU表示一类商品。同一SPU的商品可以共用商品图片、海报、销售属性等。...

2021-10-16 08:31:07 1402

原创 grep 管道符的过滤和反向过滤

过滤 | grep反向过滤 | grep -v

2021-10-14 10:16:11 1576

原创 limit 的用法

有一个薪水表salaries简况如下:请你获取薪水第二多的员工的emp_no以及其对应的薪水salaryselectemp_no,salaryfrom salariesorder by salary desclimit (1,1);

2021-10-14 08:29:23 191

原创 系统数据流程设计

系统数据流程设计Nginx(反向代理)的作用我们再进行网页请求的时候,得指明地址,得告诉我地址是什么。客户端client发送一个请求给到一个服务端server,问server一个东西,server回我一个东西,按道理应该是这么一个流程。为什么要加一个反向代理呢?是因为现在公司里面的服务器都很多,有成百上千台。如果大家都自己写自己的服务地址的话,有可能出现大家都写到了用一个服务器这种情况,那那一台就崩掉了,而其他的服务器在空转。为了防止这种情况,就加了一个Nginx(反向代理),统一都去请求这个Ngin

2021-10-14 08:18:20 787

原创 CSDN 模板写法

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

2021-10-14 08:17:10 90

原创 mod() SQL中取余的函数

解法一(采用mod()函数)select*from cinemawhere mod(id,2)=1and description != 'boring'order by rating desc;解法二select*from cinemawhere id%2=0and description != 'boring'order by rating desc;

2021-10-14 08:16:35 1806

原创 SQL 中union的使用

采用where的解法selectname,population,areafrom Worldwherearea>3000000or population>25000000;使用union的解法selectname,population,areafrom Worldwherearea>3000000unionselectname,population,areafrom Worldwherepopulation>25000000;使用 u.

2021-10-13 19:39:19 17612

原创 关于SQL中where和group by的执行次序

先执行where后执行group by!

2021-10-13 19:25:09 1610

原创 Kafka消费者的消费者方式

consumer 采用pull(拉)模式从broker中读取数据。push(推)模式很难适应消费者速率不同的消费者,因为消息发送速率是由broker决定的。它的目标是尽可能以最快的速度传递消息,但是这样很容易造成consumer来不及处理消息,典型的表现就是拒绝服务以及网络拥塞。而pull模式则可以根据consumer的消费能力以适当的速率消费消息。pull 模式的不足之处是,如果Kafka没有数据,消费者可能会陷入循环中,一直返回空数据。针对这一点,Kafka的消费者在消费数据时会传入一个时长参数

2021-10-13 19:22:04 160

原创 Kafka 生产者发送数据到 topic partition 的可靠性保证

生产者发送数据可靠性保证图解为了保证producer发送的数据,能可靠的发送到指定的topic,topic的每个partition收到producer发送的数据后,都需要向producer发送ack(acknowledgement 表示确认收到),如果producer收到ack,就会进行下一轮的发送,否则重新发送数据。两种数据同步方案,Kafka选择了第二种,原因如下:1.同样为了容忍n台节点的故障,第一种方案需要2n+1个副本,而第二种方案只需要n+1个副本,而Kafka的每个分区都有大量的数据,

2021-10-13 19:02:07 521

原创 substring 的用法(截取字符串)(Hive)

0: jdbc:hive2://hadoop102:10000> select substring('asdfghjk;',1,3);+------+| _c0 |+------+| asd |+------+1 row selected (0.192 seconds)

2021-10-13 16:22:01 752

原创 flume 基本架构笔记

1.数据类型两个:日志数据 业务数据2.日志数据---->3.数据如何到我们的HDFS---->flume(日志)4.flume:三个组件agent(是一个JVM进程) 主要有3个部分组成,Source Channel Sinkevent5.source:4个nc(netcat)execsp(spooldir) 适用于同步新文件,但不适合对实时追加日志的文件进行监听并同步;taildir(最重要) 实时监控目录下的多个追加文件,并且能够实时断点续传。6.channel(

2021-10-13 15:35:30 157

原创 mysql 的cmd登录

建议方式mysql -u 用户名 -p密码mysql -u root -p123456其他方式1 mysql -h 主机名 -P 3306 -u 用户名 -p密码 mysql -h localhost -P 3306 -u root -p123456其他方式2(密码可以是密文)mysql -h 主机名 -P 3306 -u 用户名 -pmysql -h localhost -P 3306 -u root -p...

2021-10-13 11:24:16 121

原创 SQL中常用的数学函数 round ceil floor truncate mod cast(x as y)

round 四舍五入0: jdbc:hive2://hadoop102:10000> select round(1.5);+------+| _c0 |+------+| 2 |+------+1 row selected (2.056 seconds)0: jdbc:hive2://hadoop102:10000> select round(3.24523,3);+--------+| _c0 |+--------+| 3.245 |+--------

2021-10-13 11:18:54 185

原创 datediff 的使用方法(针对的是两个日期元素)

采用窗口函数的解法:selectt1.idfrom( select id,recordDate,Temperature, lag(recordDate,1,'0000-00-00')over(order by recordDate) r_z, lag(Temperature,1,100)over(order by recordDate) t_z from Weather ) t1where t1.Temperature-t1.t_z>0 and.

2021-10-13 09:37:59 297

原创 phoenix 中的二级索引的创建和使用

创建单个字段的全局索引创建:create index my_index on my_table (my column);删除:drop index my_index on my table;包含索引(covered index)创建携带其他字段的全局索引create index my_index on my_table (column1) include (column2);删除:drop index my_index on my_table;本地索引(local index)lo

2021-10-13 00:00:54 251

原创 delete 的用法(Hive)(SQL)

此题需要注意的是题目要求是删除,故而不能使用group by,来查询解法如下,采用窗口函数delete from Personwhere Id in ( select t1.Id from( select Id,Email, row_number()over(partition by Email order by Id) rn from Person ) t1 where t1..

2021-10-12 17:44:03 5975

原创 Phoenix 架构

Phoenix 架构瘦客户端(thin)顾名思义比较小,phoenix时Hbase的sql皮肤,使用的是sql指令,写sql给到phoenix客户端,sql语句要想操作hbase里面的东西,需要转意成hbase里面的put,scan这些语句;其中这些转意的操作和过程谁来进行,就取决于他是胖客户端还是瘦客户端,如果他是瘦客户端,转意的过程就不是客户端来进行的,二是把这个sql发送到Phoenix Query Server这个服务上,在这个服务端上进行操作,转意。转意完之后,在操作hbase来执行,就可

2021-10-11 13:08:00 697

原创 SQL中转义字符(` `)的使用

对于 MySQL 解决方案,如果要转义用作列名的保留字,可以在关键字之前和之后使用撇号。例如 Rank# Write your MySQL query statement belowselectScore,dense_rank()over(order by Score desc) `Rank`from Scores;

2021-10-11 09:00:30 1880

原创 distinct 用法 去除重复元素

selectdistinct Salaryfrom Employeeorder by Salary例如上述代码,distinct在order by之前执行,用于取出数据中的重复元素。

2021-10-11 08:58:17 245

原创 HBase逻辑结构笔记

Hbase逻辑结构笔记首先按行分,分成几份Region;接着按列族分,每一份Region按列族分,所以每一个Region中有一个或多个store,store的数量取决于按列族分的数量

2021-10-10 15:59:24 141

原创 Hbase中RegionServer的架构

Hbase的逻辑结构RegionServer的详细架构参数说明1.StoreFile保存实际数据的物理文件,StoreFile以Hfile的形式存储在HDFS上。每个Store会有一个或多个StoreFile(HFile),数据在每个StoreFile中都是有序的。2.MemStore写缓存,由于HFile中的数据要求是有序的,所以数据实现存储在MemStore中,排好序后,等到达刷写时机时才会刷写到HFile,每次刷写都会形成一个新的HFile。3.WAL由于数据要经MemStore排

2021-10-10 15:53:49 376

原创 regexp_replace() 方法(正则)

regexp_replace(data_dt,’/’,’-’)正则替换

2021-10-10 10:56:04 387

原创 datesub() 的用法 日期函数中相加减的功能 (一个日期元素和一个数字)

2021-10-09 21:06:51 300

原创 Kafka 的基础架构

1)Producer:消息生产者,就是想Kafka broker发消息的客户端;2)Consumer:消息消费者,向Kafka broker取消息的客户端;3)Consumer Group(CG):消费者组,有多个consumer组成。消费者组内每个消费者负责消费不同分区的数据,同一个topic的一个分区只能由同一个组内的一个消费者消费;消费者之间互相不影响。所有的消费者都属于某个消费者组,即消费者组是逻辑上的一个订阅者。4)Broker:一台Kafka服务器就是一个broker。一个集群有多个br.

2021-10-09 08:59:56 105

原创 Kafka 生产者消息发送流程

消息发送流程Kafka的producer发送消息采用的是异步发送的方式。在消息发送的过程中,涉及到了两个线程——main线程和Sender线程,以及一个线程共享变量——RecordAccumulator。main线程将消息发送给RecordAccumulator,Sender线程不断地从RecordAccumulator中拉取消息发送到Kafka broker。相关参数batch.size:只有数据积累到batch.size之后,sender才会发送数据。linger.ms:如果数据迟迟未达到.

2021-10-09 08:33:43 279

原创 Kafka 命令行操作

1.查看当前服务器中的所有topic在Kafka目录下bin/kafka-topics.sh --bootstrap-server hadoop102:9092 --list2.创建topic`bin/kafka-topic.sh --bootstrap-server hadoop102:9092

2021-10-08 14:01:14 343

原创 zookeeper和kafka的启动和关闭顺序

启动的时候,一定要先启动zookeeper再启动Kafka!顺序不可以改变!关闭的时候,一定要先关闭Kafka再关闭zookeeper,确保所有Kafka的进程都已经结束(Jps多看几次)之后再关闭zookeeper!

2021-10-08 12:49:32 653

空空如也

空空如也

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

TA关注的人

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