<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Poolweet_的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Poolweet_</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Poolweet_]]></copyright><item><title><![CDATA[报错：java.lang.RuntimeException: java.lang.IllegalArgumentException: java.net.UnknownHostException]]></title><link>https://blog.youkuaiyun.com/Poolweet_/article/details/113119695</link><guid>https://blog.youkuaiyun.com/Poolweet_/article/details/113119695</guid><author>Poolweet_</author><pubDate>Mon, 25 Jan 2021 16:16:44 +0800</pubDate><description><![CDATA[出现这种问题多半是windows找不到linux主机。

修改目录  C:\Windows\System32\drivers\etc 下的hosts 文件查看确认。
]]></description><category></category></item><item><title><![CDATA[开窗函数]]></title><link>https://blog.youkuaiyun.com/Poolweet_/article/details/110387299</link><guid>https://blog.youkuaiyun.com/Poolweet_/article/details/110387299</guid><author>Poolweet_</author><pubDate>Mon, 30 Nov 2020 14:26:38 +0800</pubDate><description><![CDATA[开窗函数有两类：一类是聚合开窗函数，一类是排序开窗函数.

聚合函数


count() over(partition by ... order by ...)
max() over(partition by ... order by ...)
min() over(partition by ... order by ...)
sum() over(partition by ... order by ...)
avg() over(partition by ... order by ...)

排序函数

]]></description><category></category></item><item><title><![CDATA[Presto安装介绍及使用]]></title><link>https://blog.youkuaiyun.com/Poolweet_/article/details/110186767</link><guid>https://blog.youkuaiyun.com/Poolweet_/article/details/110186767</guid><author>Poolweet_</author><pubDate>Thu, 26 Nov 2020 15:08:47 +0800</pubDate><description><![CDATA[Presto简介

Presto是一个开源的分布式SQL查询引擎，数据量支持GB到PB字节，主要用来处理秒级查询的场景。

注意：虽然Presto可以解析SQL，但它不是一个标准的数据库。不是Mysql、Oracle的代替品，也不能用来处理在线事务（OLAP）。

Presto架构

Presto由一个Connrdinator和多个Worker组成。



Presto优缺点

优点：

Presto基于内存运算，减少了硬盘IO，计算更快。
	能够连接多个数据源，跨数据源连表查，从Hive查询大量网站访问记]]></description><category></category></item><item><title><![CDATA[常见人资面试题——面试技巧]]></title><link>https://blog.youkuaiyun.com/Poolweet_/article/details/110186055</link><guid>https://blog.youkuaiyun.com/Poolweet_/article/details/110186055</guid><author>Poolweet_</author><pubDate>Thu, 26 Nov 2020 14:23:51 +0800</pubDate><description><![CDATA[1、请你自我介绍一下你自己？
回答提示：一般人回答这个问题过于平常，只说姓名、年龄、爱好、工作经验，这些在简历上都有。其实，企业最希望知道的是求职者能否胜任工作，包括：最强的技能、最深入研究的知识领域、个性中最积极的部分、做过的最成功的事，主要的成就等，这些都可以和学习无关，也可以和学习有关，但要突出积极的个性和做事的能力，说得合情合理企业才会相信。企业很重视一个人的礼貌，求职者要尊重考官，在回答每个问题之后都说一句“谢谢”，企业喜欢有礼貌的求职者。
2、你觉得你个性上最大的优点是什么？
回答提示：沉着冷静]]></description><category></category></item><item><title><![CDATA[Superset安装配置及应用]]></title><link>https://blog.youkuaiyun.com/Poolweet_/article/details/109811118</link><guid>https://blog.youkuaiyun.com/Poolweet_/article/details/109811118</guid><author>Poolweet_</author><pubDate>Thu, 19 Nov 2020 15:38:04 +0800</pubDate><description><![CDATA[目录

1. Superset应用场景

2. Superset安装

2.1 安装Python环境

2.2安装Miniconda

2.3 创建Python3.6环境

2.4 安装Superset

2.5 启动Superset

3.Superset使用

3.1 对接MySQL数据源

3.2 数据源配置

3.3 制作仪表盘



ApacheSuperset是一个开源的、现代的、轻量级BI分析工具，能够对接多种数据源、拥有丰富的图标展示形式、支持自定义仪表盘，且拥有友好的用户界面，十分...]]></description><category></category></item><item><title><![CDATA[sql面试题——手写sql案例（二））]]></title><link>https://blog.youkuaiyun.com/Poolweet_/article/details/109614982</link><guid>https://blog.youkuaiyun.com/Poolweet_/article/details/109614982</guid><author>Poolweet_</author><pubDate>Mon, 16 Nov 2020 19:00:34 +0800</pubDate><description><![CDATA[1. 求：每个店铺的UV（访客数）每个店铺的访问次数top3

有50W个京东店铺，每个顾客访客访问任何一个店铺的任何一个商品时都会产生一条访问日志，访问日志存储的表名为Visit，访客的用户id为user_id，被访问的店铺名称为shop，请统计：

1）每个店铺的UV（访客数）

2）每个店铺访问次数top3的访客信息。输出店铺名称、访客id、访问次数

数据：


u1	a
u2	b
u1	b
u1	a
u3	c
u4	b
u1	a
u2	c
u5	b
u4	b
u6	c
u2	c
u1	b
u2	a]]></description><category></category></item><item><title><![CDATA[mysql——cast()函数]]></title><link>https://blog.youkuaiyun.com/Poolweet_/article/details/109626539</link><guid>https://blog.youkuaiyun.com/Poolweet_/article/details/109626539</guid><author>Poolweet_</author><pubDate>Wed, 11 Nov 2020 17:14:37 +0800</pubDate><description><![CDATA[cast函数用于某种数据类型的表达式显式转换为另一种数据类型，cast()函数的参数是一个表达式，它包括用as关键字分隔的源值和目标数据类型。

语法：CAST(expression AS data_type)

expression：任何有效的SQLService表达式

AS：用于分隔两个参数，在AS之前的是要处理的数据，在AS之后是要转换的数据类型。

data_type：目标系统所提供的数据类型，包括bigint和sql_variant,不能使用用户定义的数据类型

其中类型可以为：

CHAR[(]]></description><category></category></item><item><title><![CDATA[mysql——decimal类型与decimal长度]]></title><link>https://blog.youkuaiyun.com/Poolweet_/article/details/109625426</link><guid>https://blog.youkuaiyun.com/Poolweet_/article/details/109625426</guid><author>Poolweet_</author><pubDate>Wed, 11 Nov 2020 16:34:54 +0800</pubDate><description><![CDATA[分为三种：

float：浮点型，含字节数为4，32bit，数值范围为-3.4E38~3.4E38（7个有效位）
	double：双精度实型，含字节数为8，64bit，数值范围-1.7E308~1.7E308（15个有效位）
	decimal：数字型，128bit，不存在精度损失，常用于银行账目计算（28个有效位）
顾名思义就是double型的实体占用内存空间是float的两倍。float是4个字节而double是8个字节。float和double类型的数据，无法精确表示计算结果，这是由于float和dou]]></description><category></category></item><item><title><![CDATA[sql面试题——手写sql练习案例（一）]]></title><link>https://blog.youkuaiyun.com/Poolweet_/article/details/109596120</link><guid>https://blog.youkuaiyun.com/Poolweet_/article/details/109596120</guid><author>Poolweet_</author><pubDate>Tue, 10 Nov 2020 16:31:39 +0800</pubDate><description><![CDATA[1.求：找出所有科目成绩都大于某一学科平均成绩的学生

uid
			subject_id
			score
		1001
			01
			90
		1001
			02
			90
		1001
			03
			90
		1002
			01
			85
		1002
			02
			85
		1002
			03
			70
		1003
			01
			70
		1003
			02
			70
		1003
			03
			85
		先创建表


create table score(
.]]></description><category></category></item><item><title><![CDATA[需记住的用户指标分析]]></title><link>https://blog.youkuaiyun.com/Poolweet_/article/details/109528405</link><guid>https://blog.youkuaiyun.com/Poolweet_/article/details/109528405</guid><author>Poolweet_</author><pubDate>Fri, 06 Nov 2020 11:32:36 +0800</pubDate><description><![CDATA[用户

用户以设备为判断标准，在移动统计中，每个独立设备认为是一个独立用户。Android系统根据IMEI号，IOS系统根据OpenUDID来标识一个独立用户，每部手机一个用户。

新增用户

首次联网使用应用的用户。如果一个用户首次打开某APP，那这个用户定义为新增用户；卸载再安装的设备，不会被算作一次新增。新增用户指标包括日新增用户、周新增用户、月新增用户。

活跃用户

打开应用的用户即为活跃用户，不考虑用户的使用情况。每天一台设备打开多次会被计为一个活跃用户。

周（月）活跃用户

某个自然周（月）]]></description><category></category></item><item><title><![CDATA[数据仓库——collect_set函数、NVL函数、日期处理]]></title><link>https://blog.youkuaiyun.com/Poolweet_/article/details/109525639</link><guid>https://blog.youkuaiyun.com/Poolweet_/article/details/109525639</guid><author>Poolweet_</author><pubDate>Fri, 06 Nov 2020 10:17:33 +0800</pubDate><description><![CDATA[目录

1.collect_set函数

2.nvl函数

3.日期处理函数

1.collect_set函数

数据：

id
			order-type
			order-number
		1
			aa
			5
		2
			bb
			2
		1
			bb
			1
		2
			aa
			3
		1
			aa
			2
		

需求：对用户的订单进行分析，将不同订单类型分别多少单展示出来，每个用户一行

实现：

1.使用concat（）函数将order_type和order_numb..]]></description><category></category></item><item><title><![CDATA[Flume知识点详解总结]]></title><link>https://blog.youkuaiyun.com/Poolweet_/article/details/109483963</link><guid>https://blog.youkuaiyun.com/Poolweet_/article/details/109483963</guid><author>Poolweet_</author><pubDate>Wed, 04 Nov 2020 17:24:48 +0800</pubDate><description><![CDATA[1.Flume定义

Fiume是Cloudera提供的一个高可用的，高可靠的，分布式的海量日志采集、聚合和传输的系统，Flume基于流式架构，灵活简单。

1.1为什么选用Flume？

Flume最主要的作用就是实时读取服务器本地磁盘的数据，将数据写入到HDFS。

2.Flume基础架构

Agent
Agent是一个jvm进程，他以事件的形式将数据从源头送至目的地。主要有3个部分组成：Source、Channel、Sink。

Source
负责接收数据到Flume Agent的组件。Sour...]]></description><category></category></item><item><title><![CDATA[数据仓库架构演变]]></title><link>https://blog.youkuaiyun.com/Poolweet_/article/details/109477262</link><guid>https://blog.youkuaiyun.com/Poolweet_/article/details/109477262</guid><author>Poolweet_</author><pubDate>Wed, 04 Nov 2020 09:23:33 +0800</pubDate><description><![CDATA[目录

数仓架构演变

离线大数据架构

数据仓库分层

Lambda架构

Lambda架构存在的问题

Kappa架构

Kappa架构典型案例

Kappa架构的重新处理过程

Lambda架构和Kappa架构的对比

实时数仓和离线数仓

数仓架构演变

数据仓库概念是Inmon于1990年提出并给出了一个完整的建设方法，随着互联网时代来临，数据量暴增，开始使 用大数据工具来替代经典数仓中的传统工具。 此时仅仅是工具的取代，架构上并没有根本 的区别，可以把这个架构叫做离线大数据架构。

后来随着业务]]></description><category></category></item><item><title><![CDATA[累计型快照事实表——订单优惠表使用]]></title><link>https://blog.youkuaiyun.com/Poolweet_/article/details/109472771</link><guid>https://blog.youkuaiyun.com/Poolweet_/article/details/109472771</guid><author>Poolweet_</author><pubDate>Tue, 03 Nov 2020 17:25:49 +0800</pubDate><description><![CDATA[累计快照适用于较短周期，有着明确的开始和结束状态的过程，如一个订单执行的过程，并记录过程中每个步骤的执行时间，使分析人员对执行的过程有整体的把握，周期快照事实表记录上每一个步骤的执行时间是逐步建立的，随着执行的过程逐步更新的事实表中。

优惠券的生命周期：领取优惠券→用优惠券下单→优惠券参与支付

累计型快照事实表使用：统计优惠券领取次数，优惠券下单次数，优惠券参与支付次数

1.建表


drop table if exists dwd_fact_coupon_use;  COMMENT '删除已存在的表]]></description><category></category></item><item><title><![CDATA[Hive——编写自定义UDF函数和UDTF函数]]></title><link>https://blog.youkuaiyun.com/Poolweet_/article/details/109453718</link><guid>https://blog.youkuaiyun.com/Poolweet_/article/details/109453718</guid><author>Poolweet_</author><pubDate>Mon, 02 Nov 2020 19:39:30 +0800</pubDate><description><![CDATA[一.用户自定义函数UDF

用户自定义函数(UDF)是一个允许用户扩展HiveQL的强大的功能。用户可以使用Java编写自己的UDF，一旦将用户自定义函数加入到用户会话中(交互式的或者通过脚本执行的)，它们就将和内置的函数一样使用，甚至可以提供联机帮助。Hive具有多种类型的用户自定义函数，每一种都会针对输入数据执行特定“一类”的转换过程

UDF函数特点：一行进一行出。简称，一进一出。

UDF函数解析公共字段：



编写UDF类

在pom.xml文件中添加如下内容


&lt;dependency&]]></description><category></category></item><item><title><![CDATA[数据仓库分层]]></title><link>https://blog.youkuaiyun.com/Poolweet_/article/details/109353664</link><guid>https://blog.youkuaiyun.com/Poolweet_/article/details/109353664</guid><author>Poolweet_</author><pubDate>Thu, 29 Oct 2020 19:44:46 +0800</pubDate><description><![CDATA[一.数据仓库分层

ODS(Operation Data Store)层：原始数据层，存放加载原始日志、数据，数据保持原貌不做处理。
DWD(Data warehouse detail)层：对ODS层数据进行清洗（去除空值，超过极限范围的数据）、维度退化、脱敏等。
DWS（data warehouse service）层：以DWD为基础，按天进行轻度汇总。
DWT（data warehouse Topic）层：以DWS为基础，按主题进行汇总。
ADS（Application Data Store）层：为各种]]></description><category></category></item><item><title><![CDATA[Sqoop面试题总结]]></title><link>https://blog.youkuaiyun.com/Poolweet_/article/details/109338026</link><guid>https://blog.youkuaiyun.com/Poolweet_/article/details/109338026</guid><author>Poolweet_</author><pubDate>Wed, 28 Oct 2020 17:23:17 +0800</pubDate><description><![CDATA[1. Sqoop导入数据到hdfs中的参数

--connect \ # 特殊的jdbc连接的字符串
	--username \
	--password \
	--target-dir \ # hdfs目标的目录
	--delete-target-dir \ # 导入的目标目录如果存在则删除那个目录
	--num-mappers \ #相当于 -m ,并行导入时map task的个数
	--fields-terminated-by \
	--query "$2" ' and $CONDITIONS;' # ]]></description><category></category></item><item><title><![CDATA[Zookeeper面试题总结]]></title><link>https://blog.youkuaiyun.com/Poolweet_/article/details/109319053</link><guid>https://blog.youkuaiyun.com/Poolweet_/article/details/109319053</guid><author>Poolweet_</author><pubDate>Tue, 27 Oct 2020 19:49:06 +0800</pubDate><description><![CDATA[目录

1. ZooKeeper 是什么？

2. ZooKeeper 提供了什么？

3. Zookeeper 文件系统

4. Zookeeper 怎么保证主从节点的状态同步？

5. 四种类型的数据节点 Znode

6. Zookeeper Watcher 机制 – 数据变更通知

7. 客户端注册 Watcher 实现

8. 服务端处理 Watcher 实现

9. 客户端回调 Watcher

10. ACL 权限控制机制

11. Chroot 特性

12. 会话管理

13. 服务器角色]]></description><category></category></item><item><title><![CDATA[Kafka高频面试题总结]]></title><link>https://blog.youkuaiyun.com/Poolweet_/article/details/109312019</link><guid>https://blog.youkuaiyun.com/Poolweet_/article/details/109312019</guid><author>Poolweet_</author><pubDate>Tue, 27 Oct 2020 15:59:39 +0800</pubDate><description><![CDATA[目录



1.Kafka中的ISR(InSyncRepli)、OSR(OutSyncRepli)、AR(AllRepli)又代表什么？

2.Kafka中的HW、LEO等分别代表什么？

3.Kafka中是怎么体现消息顺序性的？

4.Kafka中的分区器、序列化器、拦截器是否了解？它们之间的处理顺序是什么？

5.Kafka生产者客户端使用了几个线程来处理？分别是什么？

6.“消费组中的消费者个数如果超过topic的分区，那么就会有消费者消费不到数据”这句话是否正确？

7.消费者提交消费位移时提交.]]></description><category></category></item><item><title><![CDATA[Kafka入门知识总结]]></title><link>https://blog.youkuaiyun.com/Poolweet_/article/details/109246515</link><guid>https://blog.youkuaiyun.com/Poolweet_/article/details/109246515</guid><author>Poolweet_</author><pubDate>Fri, 23 Oct 2020 17:41:04 +0800</pubDate><description><![CDATA[每个partition(目录)相当于一个巨型文件被平均分配到多个大小相等的segment(段)数据文件中（每个segment 文件中消息数量不一定相等），这种特性也方便old segment的删除，即方便已被消费的消息的清理，提高磁盘的利用率。每个partition只需要支持顺序读写就行，segment的文件生命周期由服务端配置参数（log.segment.bytes，log.roll.{ms,hours}等若干参数）决定。
每个segment对应两个文件——“.index”文件和“.log”文件。分别表示]]></description><category></category></item></channel></rss>