- 博客(86)
- 收藏
- 关注
原创 Hive内部表(管理表)和外部表的区别
默认创建的表是内部表。hive完全管理表(元数据和数据)的声明周期,类似于RDBMS的表。当删除表时,他会删除源数据以及表的元数据。Hive外部表:外部表的数据不是Hive拥有或者管理的只管理元数据的声明周期。要创建一个外部表,需要使用external关键字。删除外部表是只会删除元数据,而不会删除实际数据(源数据)。在hive外部依然可以访问实际数据(HDFS)。及。
2024-05-14 08:53:28
334
原创 Hive大表join大表如何调优
在Hive中,优化器会根据统计信息决定是将大表放在前面(Join的左边)还是小表放在前面。通常,优化器会选择数据量较小的表作为驱动表(小表作为左边),因为这样可以减少内存消耗并提高效率。但是,如果你有特定的需求,比如你知道大部分数据能快速过滤掉,希望减少任务的执行时间,那么你可以强制指定某个表作为小表。在Hive中,可以使用/*+ MAPJOIN(table_name) */ 注释来强制将一个大表作为小表处理。
2024-05-11 08:46:25
2167
2
原创 Hadoop--客户端读写hdfs数据
1.读数据(1)客户端通过调用FIleSystem对象的open()方法来打开希望读取的文件,对于hdfs来说,这个对象是分布式文件系统的一个实例。(2)DistributedFileSystem通过使用PRC(远程方法调用)来调用namenode,以确定文件起始块的位置。对于每一个块,namenode返回存有该块副本的datanode的地址。此外,这些datanode根据他们与客户端的距离...
2024-05-08 08:23:21
1055
1
原创 inner join和left semi join的联系和区别
参考:添加链接描述添加链接描述1 简介LEFT SEMI JOIN (左半连接)是 IN/EXISTS 子查询的一种更高效的实现。示例可以改写为2 特点1、left semi join 的限制是, JOIN 子句中右边的表只能在 ON 子句中设置过滤条件,在 WHERE 子句、SELECT 子句或其他地方过滤都不行。2、left semi join 是只传递表的 join key 给 map 阶段,因此left semi join 中最后 select 的结果只许出现左表。3、因为 le
2024-04-10 21:24:27
708
原创 正则表达式
a-zA-Z]:这个变量匹配从 a 到 z 或 A 到 Z 的任何字符。请注意,你可以在方括号内指定的字符范围的数量没有限制,您可以添加想要匹配的其他字符或范围。例如,[abc]会匹配"a"、“b”、“c"中的任意一个字符。[a-z]*:表示一个字符范围,匹配从 a 到 z 的任何字符 0 次或多次。[a-z]+:表示一个字符范围,匹配从 a 到 z 的任何字符 1 次或多次。[a-z]:表示一个字符范围,匹配从 a 到 z 的任何字符。[0-9]:表示一个字符范围,匹配从 0 到 9 的任何字符。
2024-04-09 09:14:47
618
转载 Doris 最佳实践的建模部分
Doris 最佳实践的建模部分添加链接描述1. 建表:1.1 数据模型选择Doris数据模型上目前分为三类: AGGREGATE KEY, UNIQUE KEY, DUPLICATE KEY。三种模型中数据都是按KEY进行排序。(1)AGGREGATE KEY: AGGREGATE KEY相同时,新旧记录进行聚合,目前支持的聚合函数有SUM, MIN, MAX, REPLACE。 AGGREGATE KEY模型可以提前聚合数据, 适合报表和多维分析业务。CREATE TABLE site_vis
2024-03-12 20:37:45
113
转载 Hive -- 窗口函数(五) GROUPING SETS,GROUPING__ID,CUBE,ROLLUP
GROUPING SETS,GROUPING__ID,CUBE,ROLLUP这几个分析函数通常用于OLAP中,不能累加,而且需要根据不同维度上钻和下钻的指标统计,比如,分小时、天、月的UV数。Hive版本为 apache-hive-0.13.10 数据准备:2015-03,2015-03-10,cookie12015-03,2015-03-10,cookie52015-03,2015-03-12,cookie72015-04,2015-04-12,cookie32015-04,2015-04
2022-08-13 20:38:43
333
1
原创 hadoop权威指南(第四章)--yarn运行机制及调度过程知识
1.yarn运行机制?下面对上面出现的一些名词进行介绍:ResourceManager:是YARN资源控制框架的中心模块,负责集群中所有的资源的统一管理和分配。它接收来自NM(NodeManager)的汇报, 建立AM,并将资源派送给AM(ApplicationMaster)。NodeManager:简称NM,NodeManager是ResourceManager在每台机器的上代理,负责容...
2022-03-25 17:34:26
1166
1
原创 YARN容错机制-hadoop
在现实情况中,用户代码错误不断,进程奔溃,机器故障等等。使用hadoop的好处之一就是可以它能处理这类故障并成功完成任务。需要考虑的实体失败任务为:任务(job),Application Master,NodeManager和ResourceManager。1.任务失败1.1 可能存在以下情况:MapTask或者ReduceTask中由于代码原因抛出异常,jvm在关闭之前,会通知mrAppMaster这个task任务失败,在mrAppMaster中,错误报告被写入到用户日志并且任务标记为失败,并释放
2022-03-25 17:33:28
1005
原创 hadoop整理 --按照题目顺序-面试题目汇总
1.https://www.cnblogs.com/sunddenly/p/3977011.html目录1.hadoop面试题及答案2. Hadoop、Hive、HBase的区别3.hadoop小文件问题4.mapreduce的shuffle过程,map端的并行度5.为什么一定要有shuffle过程6.mapreduce分桶的作用7.spark,hadoop的区别8.hadoop没被淘汰的原因11.hdfs与hbase有啥关系12.hdfs默认副本数是几个?为什么13.架构设计:每天上百亿级别数据,数据来
2022-03-25 17:32:26
553
1
原创 正则表达式及转义字符
1、正则表达式需要转义的字符字符用途$匹配输入字符串的结尾位置( )标记一个子表达式的开始和结束位置*匹配前面的子表达式零次或多次+匹配前面的子表达式一次或多次.匹配除换行符 \n之外的任何单字符[ ]标记一个中括号表达式的开始?匹配前面的子表达式零次或一次,或指明一个非贪婪限定符\将下一个字符标记为或特殊字符、或原义字符、或向后引用、或八进制转义符^匹配输入字符串的开始位置{ }标记限定符表达式的开始|
2022-01-11 11:55:23
553
转载 vscode-mac/win下载慢解决
1.官网链接https://code.visualstudio.com/download2.选择所需版本点击下载3.点击谷歌右上角-下载内容4.复制下载失败的链接点击该链接(红色框)进行跳转,并把链接中stable之前,http之后的内容(即绿色框)替换为 vscode.cdn.azure.cn 。参考自:https://www.cnblogs.com/xiao1314/p/14551009.html...
2021-08-20 10:58:20
958
1
原创 小米大数据面试
20200914-一面1.数仓规范有哪些2.数仓如何建模3.doris原理、4.hive2doris同步过程5.hive2dors同步表的原理,如何同步的6.spark原理、内存机制7.hive各种存储的原理,两个大表如何关联,关联过程,join过程8.hive文件存储格式有哪些,packetfile了解吗9.RCfile如何行分割列存储的?10.hive优化有哪些11.kafka\kylin的了解12.写过mr,sparkcore任务吗反问:数仓业务;构建数仓、ETL阶段用sp
2021-03-25 10:55:00
676
原创 Python常见面试题
1.Python中*args和**kwargs的区别详细参见: 添加链接描述一、*args的使用方法*args 用来将参数打包成tuple给函数体调用二、**kwargs的使用方法**kwargs 打包关键字参数成dict给函数体调用注意点:参数arg、args、kwargs三个参数的位置必须是一定的*。必须是(arg,*args,kwargs)这个顺序,否则程序会报错python 中 *args 和 **kwargs 的区别三、在 python 中,*args 和 kwargs 都代表 1
2021-03-25 10:52:50
152
原创 时间序列分析-MOOC-中南财经政法第四章
课程链接第四章 非平稳序列的随机分析4.1 构成4.2 平稳化方法![在这里插入图片描述](https://img-blog.csdnimg.cn/20201214223027302.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDkzMTY4MQ4.3 ARIMA模
2021-03-25 10:51:55
271
原创 hive常用函数
1.Hive1.nvl函数nvl函数:空值转换函数函数形式:nvl(expr1,expr2),类似于mysql-nullif(expr1,expr2)作用:将查询为Null值转换为指定值。若expr1为Null,则返回expr2,否则返回expr1。适用于数字型、字符型和日期型,但是expr1和expr2的数据类型必须为相同类型。转载自NVL函数NVL函数的格式如下:NVL(expr1,expr2)含义是:如果oracle第一个参数为空那么显示第二个参数的值,如果第一个参数的值不为空,则
2021-03-25 10:50:34
1770
原创 时间序列分析-MOOC-中南财经政法一二章
视频链接: 添加链接描述目录第一章 时间序列分析简介第二章 时间序列的预处理2.1 平稳时间序列的定义2.2 平稳时间序列的统计性质和意义2.3 平稳性检验2.4 纯随机序列的定义和性质2.5 纯随机性检验第一章 时间序列分析简介第二章 时间序列的预处理2.1 平稳时间序列的定义包含:平稳性检验、纯随机性检验2.2 平稳时间序列的统计性质和意义2.3 平稳性检验2.4 纯随机序列的定义和性质2.5 纯随机性检验
2020-12-14 22:09:07
317
原创 时间序列分析-MOOC-中南财经政法第三章
视频链接: 添加链接描述第三章 平稳时间序列分析3.1 方法性工具介绍3.2 平稳时间序列模型的概念3.3 平稳时间序列模型平稳性的判定3.4 平稳时间序列模型统计性质(1)中间求解过程忽略3.5 平稳时间序列模型统计性质(2)3.6 平稳时间序列模型的参数估计3.7 平稳时间序列模型的检验及优化3.8 平稳时间序列模型的预测(1)3.9 平稳时间序列模型
2020-12-12 11:17:33
398
原创 时间序列笔记
机器学习经典算法(6)——时间序列ARIMA模型算法视频:目录1.数据平稳性与差分法2.ARIMA模型3.相关函数评估方法4.建立ARIMA模型5.参数选择机器学习第三阶段:机器学习案例实战(5)——时间序列案例实战1.数据平稳性与差分法平时的数据大多是弱平稳。2.ARIMA模型其中,p是自回归模型的阶数,q是移动平均模型的阶数。滞后值与p/q阶数是对应的。3.相关函数评估方法上图中蓝色的虚线是置信区间。置信区间95%:可理解为95%的点都落在这个区间内。4.建立AR
2020-12-11 19:28:14
652
原创 时间序列分析的基本思路与步骤(入门级,新手必看!!!)
课程链接:添加链接描述1.分类1.白噪声序列(纯随机序列,无研究意义)2.平稳非白噪声序列AR MA ARMA三种模型3.非平稳序列差分法转化成ARIMA序列2.单变量、多变量时间序列1.单变量时间序列ARMA–>GARCH2.多变量时间序列VAR–>MGARCH3.时间序列的步骤待分析的时间序列–》平稳性检验{1.单位根检验;2.ACF PACF拖尾(下降的趋势),截尾(某一点后变为0)检验–》白噪声检验(检验是否为纯随机序列)–》是,停止检验–》不是–》计算.A
2020-12-11 19:26:37
10763
原创 SQL笔记--语法
1.SQL 取连续登录7天的数据基本思路 Loop Join首先想到的思路是一个类似于Loop Join的方法:A. 取出2012-1-1到2012-1-11的每一条记录.B. 对取出的每一条记录,再去表中查询这个用户的接下来6天的记录。如果总数为6条记录,则满足连续7天的条件- Range JoinLoop Join的思路可以通过一个Join语句来实现。姑且称之为Range Joi...
2020-12-07 18:07:23
188
原创 面试-大数据-场景题-sql
1. 求5min内浏览次数达到100的用户-- LAG和LEAD函数转载自有如下场景:某公司网站每日访问量达到10亿级别的访问量,每次访问记录一条数据,数据包含如下字段:用户ID,访问时间(毫秒级),访问页面。要求使用hive求出所有在5分钟内访问次数达到100次的用户(求出用户ID即可)**思路:**利用窗口函数Lag详细思路:1.选出当天访问次数达到100次的用户(即当天有100及以上条数据的用户):根据用户ID分组,count2.在每个 用户ID小组内(步骤1已进行分组)按 访问时间
2020-12-07 10:17:18
1128
1
原创 leetcode-编程-回溯算法
回溯算法思路解析# 回溯算法框架result = []def backtrack(路径, 选择列表): if 满足结束条件: result.add(路径) return for 选择 in 选择列表: 做选择 backtrack(路径, 选择列表) 撤销选择剑指 Offer 38. 字符串的排列题目回溯法题解# 回溯法见评论class Solution: def permutation
2020-11-24 19:53:17
228
原创 SQLServer2008数据库
1.SQLServer2008数据库连接error40错误1.找到sql server 配置管理器(应用程序找不到的情况)因为 SQL Server 配置管理器是 Microsoft 管理控制台程序的一个管理单元而不是单独的程序,所以,当运行 Windows 8 时,SQL Server 配置管理器不显示为一个应用程序。若要打开 SQL Server 配置管理器,**请在“搜索”超级按钮中的“应用程序”**下,键入 SQLServerManager12.msc(对于 SQL Server 2014)(对
2020-11-22 20:18:50
1291
原创 牛客--数据库选择题目整理
MyISAM 和InnoDB区别1.事务和外键最主要的区别是Innodb 支持事务处理与外键和行级锁.而MyISAM不支持.所以MyISAM往往就容易被人认为只适合在小项目中使用。InnoDB具有事务,支持4个事务隔离级别,回滚,崩溃修复能力和多版本并发的事务安全,包括ACID。如果应用中需要执行大量的INSERT或UPDATE操作,则应该使用InnoDB,这样可以提高多用户并发操作的性...
2020-11-22 20:18:23
314
原创 数据库相关知识--二
1.Mysql索引1.类型:普通索引、唯一索引、主键索引、组合索引、全文索引2.创建方法:a. 建表的时候一起创建。b. 建表后,直接创建索引c. 修改表结构主键索引只有(a.c)3.限制:普通索引(最基本的索引,它没有任何限制,用于加速查询。)唯一索引(索引列的值必须唯一,但允许有空值。如果是组合索引,则列值的组合必须唯一。)主键索引(是一种特殊的唯一索引,一个表只能有一个主键,不...
2020-11-22 20:17:45
706
原创 数据仓库面试题汇总-数仓-四
1.数仓与关系数据库区别?联系:数据仓库是由数据库以一种方式组织起来的。区别:(1)数据库强调范式,尽可能减少冗余;数据仓库强调查询分析的速度,优化读取的操作,主要目的是做大量数据的查询。(2) 数据库是行存储,数据仓库是列存储。(3)数据库面向事务的,在线交易处理(OLTP)数据仓库是面向主题的、集成、相对稳定、反应历史变化,存储历史数据(OLAP)。(4)数据仓库定期写入新数据,而不覆盖原有数据,而是给数据加上时间戳。(5)数据仓库两个基本元素:事实表和维度表事实表存储要查询的数据;
2020-11-22 20:16:44
1802
1
原创 数仓-数仓建设规范
1.分层规范2.表规范:命名、注释、分区、存储格式规范、字符集、空值表规范:分层前缀[dwd|dws|ads|bi]_业务域_主题域_XXX_粒度表分区: 在数仓中建立分区表统一用静态分区,一般建立分区表时,将ymd作为一级分区,在dws、dwd层可根据具体业务逻辑,确定使用一级分区,或多级分区。存储格式:在数仓中建表默认用的都是PARQUET存储格式字符集: Hadoop和hive 都是用utf-8编码的,在建表时可能涉及到中文乱码问题,所以导入的文件的字符编码统一为utf-8格式。约定:空值
2020-11-22 20:16:20
829
原创 数仓-数仓建模方法介绍
1. 关系模式范式众所周知,RDBMS设计时,需要遵照一定的规范要求,目的在于降低数据的冗余性和数据的一致性,目前业界范式有:1NF域都应该是原子性(即不可分割的)的,即数据库表的每一列都是不可分割的原子数据项。2NF在1NF的基础上,实体的属性完全依赖于主关键字,不能存在仅依赖主关键字一部分的属性。上述表格中,如果想表达某个学生分数的时候,是通过(学生ID,所修课程)来作为主键,唯一确定分数;而一个学生只能属于一个系,可以理解为所属系是依赖于学生ID的(即给出一个学生ID,就可以给出所属系
2020-11-22 20:15:50
923
1
原创 数据仓库面试题-数仓-五
1.理解维度数据仓库——事实表、维度表、聚合表参考自1.1 事实表在多维数据仓库中,保存度量值的详细值或事实的表称为“事实表”。事实表中的每个列通常要么是键值列,要么是度量值列,但也可能包含其他参考目的的列——例如采购订单号或者发票号。事实表中,每个度量值都有一个列。不同事实表将有不同的度量值。事实表中对每个维度的最详细的项目成员都有数据行。事实是事实表几乎总会使用一个整数值来表示(维度)成员,而不使用描述性的名称。因为事实表往往会包含数量多得无法想象的数据行——在一个中等大小的数据仓库中,
2020-11-22 20:15:08
931
1
原创 JAVA宋红康 P43-P58
P43 复习1P45 关键字和保留字变量是重点,程序流程控制重点。P46 标识符及命名规则P47 标识符的命名规范P48 变量的定义基本数据类型基本数据类型变量间转换基本数据类型与String间转换进制与进制间的转换P49 定义变量的注意点P50 变量的分类P51 整形变量使用说明...
2020-11-22 20:13:56
200
原创 python语法
1.python数据类型有哪些?1. 数字类型Python数字类型主要包括int(整型)、long(长整型)和float(浮点型)、complex(复数),但是在Python3中就不再有long类型了。int(整型)在32位机器上,整数的位数是32位,取值范围是-231231-1,即-2147483648214748364;在64位系统上,整数的位数为64位,取值范围为-263263-1,...
2020-11-22 16:47:13
405
1
原创 python编程-笔试-输入输出
1.分别存储每一列#分别存储每一列n = int(input())a = []b = []c = []for i in range(n): A, B, C = map(int, input().split()) a.append(A) b.append(B) c.append(C)print(a)print(b)print(c)2.普通输入##输入一行2 3a = input().split()print(a) ##["2","3"]##输入两行
2020-11-17 09:28:19
2319
原创 leetcode--SQL练习-按照出题频率
题解链接262. 行程和用户添加链接描述一个表的两个字段是另一个表的外键,round函数# Write your MySQL query statement belowselect t.Request_at as Day ,round( sum(if( t.Status ='completed',0,1))/count(t.Status),2) as 'Cancellati...
2020-11-17 09:25:13
590
1
原创 leetcode--滑动窗口 -- 编程
剑指 Offer 42. 连续子数组的最大和添加链接描述# 执行效率更高class Solution: def maxSubArray(self, nums: List[int]) -> int: for i in range(1,len(nums)): nums[i]+=max(nums[i-1],0) return max(nums)class Solution: def maxSubArray(self, nums
2020-11-17 09:23:12
177
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人