- 博客(36)
- 收藏
- 关注
原创 Spark相关面试题
Spark job触发之后,会生成DAG图,Spark会对DAG图进行任务流程优化,最典型的代表就是Spark3的AQE功能,它会记录Map端Shuffle阶段的信息,从而自动调整reduce端shuffle的并行度。Spark是基于分布式内存进行计算,Shuffle中间结果不一定落盘,而MapReduce是每次Shuffle的中间结果都需要落盘,所以在计算速度上Spark要高于MapReduce。4)对于key-value类型的RDD可以自定义分区。2)每个函数都作用在RDD所有的分区上。
2024-12-19 16:02:29
125
原创 SQL的执行顺序
如SUM()、AVG()、MAX()、MIN()、COUNT()等,这些函数在GROUP BY之后、HAVING之前执行。这个执行顺序是大多数SQL数据库遵循的规则,但请注意,不同的数据库(如MySQL, PostgreSQL, SQL Server, Oracle)可能在细节上有所不同。复杂的SQL查询可能包含多个子句,这些子句在执行时有特定的执行顺序。子句(如果有):限制返回的行数。BY子句:按指定的列分组结果。子句:基于指定的条件过滤分组。子句:基于指定的条件过滤行。子句:选择特定的列。
2024-10-10 15:47:29
214
1
原创 数仓数据治理主要做哪些内容
包括对当前数据域进行重构、重新制定元数据规范(表名、字段命名、字段数据格式等)4、根据业务对表存储重新规划:对数据量较大的表可以全量转增量或者转拉链等。3、数据权限、表、字段增删改查需要走审批流程。2、下线无用的DQC任务,避免占用资源。1、角色权限管控:开发者权限、运维权限。3、数据倾斜治理,这个属于高消耗任务。3、存储格式、压缩格式优化。2、应用指标公共下沉复用。3、解决跨层级引用问题。4、烟囱数据表重构下线。1、统一设置表生命周期。2、无用表、临时表下线。1、数据标准重新制定。
2024-09-27 09:15:43
220
原创 Hadoop相关
客户端将block块从本地加载到内存中,然后以package为单位发送给第一台datanode,第一台datanode收到package之后,会返回ack给客户端,然后第一台datanode再将package发送给第二台,第二台收到后,发送ack给客户端,同理,第二台将package发送给第三台,第三台发送ack给客户端。2)客户端通过机架感知,获取该文件完整的每个block块最近的位置,然后连接对应的datanode地址。3)读取数据,然后将数据合并在一起,返回给客户端。
2024-09-14 14:11:16
234
1
原创 数仓中表生命周期管理
通过metastore,连接到hive的元数据,然后分库,循环表进行表分区判断,可以删除距今前一个月的分区。可以使用外部表进行管理,这样在删除表的时候只是删除了表的元数据,而真正的数据不会被删除。在建表时,可以直接通过"LIFECYCLE"关键字指定表生命周期,如下。
2024-09-10 09:05:40
397
原创 分区表和分桶表的区别
2.3、分桶表相对于分区表是更细粒度的划分,管理数据。2.1、分区表是表内字段,分桶表是表外字段。2.2、分区表是个文件夹,分桶表是个文件。分桶表主要是针对大表,提高查询性能的。
2024-08-13 14:36:13
258
原创 HQL执行流程
编译之后,执行计划进入优化器(Optimizer)。优化器对执行计划进行优化,例如重写查询、选择合适的 Join 策略、选择合适的分区等。优化之后,执行计划被提交给Hadoop或其他大数据系统执行。执行阶段涉及到MapReduce任务、Spark任务或者其他计算框架的使用。解析之后,SQL语句进入编译器(Compiler)。编译器进行语义分析,生成执行计划。Hive SQL执行流程主要包括解析、编译、优化以及执行。SQL语句通过解析器(Parser)进行语法解析,检查语法错误。
2024-08-13 14:16:15
196
原创 Group By和Row Number可以一起使用吗?
且Group By先执行,一般一条SQL先执行where group by having 然后执行 order by limit 最后执行select distinct。
2024-07-15 10:13:36
356
1
原创 经典SQL面试题之用户留存问题
哈喽,小伙伴们,今天给大家讲解一道面试中常见的SQL问题------用户留存问题,希望能帮助到小伙伴们。需要说明的是本人是在MySQL中进行的开发,如果你使用的是Hive,可能有部分函数不兼容。
2023-08-15 16:35:58
1691
1
原创 解决Maxwell报错RuntimeException: Couldn‘t find database xxx
解决Maxwell报错RuntimeException: Couldn‘t find database xxx
2023-04-01 16:24:26
1652
3
原创 解决:ERROR 1044 (42000): Access denied for user ‘root‘@‘localhost‘ to database ‘maxwell‘
解决:ERROR 1044 (42000): Access denied for user 'root'@'localhost' to database 'maxwell'
2023-03-27 11:18:01
1328
原创 MySQL:ERROR 1193 (HY000): Unknown system variable ‘validate_password_policy‘的解决方法
ERROR 1193 (HY000): Unknown system variable 'validate_password_policy'
2023-03-14 10:49:53
8629
原创 解决su: 警告:无法更改到 /home/atguigu 目录: 没有那个文件或目录
解决su: 警告:无法更改到 /home/atguigu 目录: 没有那个文件或目录
2023-01-10 17:17:18
2033
原创 解决Linux环境中root切换到oracle用户显示-bash-4.2$的问题
解决Linux环境中root切换到oracle用户显示-bash-4.2$的问题
2023-01-10 16:29:35
1436
原创 Hive的压缩格式和数据存储格式
所以最终建议,在工作中选择ORC+Snappy。但是有时候在选择数据存储格式的时候还需要考虑它的兼容度,是否支持多种计算引擎。假设我希望这一份数据,既可以在Hive中使用,还希望在Impala中使用,这个时候就需要重点考虑这个数据格式是否能满足多平台同时使用。Impala很早就开始支持Parquet数据格式了,但是不支持ORC数据格式,不过从Impala 3.x版本开始也支持ORC了。如果你们使用的是Impala2.x版本,还想要支持Hive和Impala查询同一份数据,这个时候就需要选择Par
2023-01-09 15:33:22
1112
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人