
博文分享
MISAYAONE
拒绝一切形式的代考,替考行为,务必诚信考试!!!本人所写题库均搜集于互联网。
展开
-
为什么 Redis 快?
为什么redis 是单线程的? - 云+社区 - 腾讯云阿里P8架构师谈:Redis为什么是单线程、及高并发快的3大原因详解 - 知乎Redis为什么是单线程?为什么有如此高的性能? - 掘金分类: Redis | Kaito's Blog...原创 2022-04-06 15:17:58 · 937 阅读 · 0 评论 -
Git 解冲突
1:怎样最大程度避免冲突?如果和别人改的不是同一个文件,最好先 git pull 再 git add如果要改同一个文件,那么需求拆解、分工是否明确?实在不行再一起解冲突2:解冲突步骤1:git fetch origin2:git rebase origin/master 或者 git pull --rebase(此过程如遇到坑,需要 checkout 所有的未提交文件)3:然后打开冲突文件:conf/global.yaml修改冲突处,其实就是删掉旧的东西4:git原创 2022-04-06 15:15:42 · 642 阅读 · 0 评论 -
Spark 多维分析
grouping sets / with cube / with rollup 多维分析问题Spark SQL 的 GROUP BY 子句 | Spark SQL 教程 - 盖若https://www.imooc.com/article/271662原创 2022-04-06 11:51:14 · 1459 阅读 · 0 评论 -
指标体系相关知识
带着问题看博客1:什么是指标体系?2:指标的分类?3:为什么需要指标体系?4:指标体系指标分级?5:指标体系建模方法?6:怎样结合落地业务场景?7:带来实际收益?综述文章:数据分析指标体系综述 - 知乎快手的指标体系落地方案:快手如何搭建一个好的数据指标体系?_浪尖聊大数据-浪尖的博客-优快云博客搭建一个好的指标体系方法:一文讲透,关于搭建指标体系,整理的重要知识点都在这里了_帆软商业智能技术的博客-优快云博客...原创 2022-04-02 21:29:40 · 223 阅读 · 0 评论 -
CountDistinct 去重实现原理
Hive / Spark / Kylin 中 count distinct 的实现原理:重点关注其中的 多维度 count distinct 的实现方式大数据SQL COUNT DISTINCT实现原理在 Spark 中的优化:1:两阶段聚合(spark)2:bitmap(UDF包装RoaringBitmap,1. 在预聚合时将COUNT DISTINCT字段值写入Bitmap,并将Bitmap序列化成Binary类型字段保存。2. 在重聚合时,读取并反序列化Bitmap字段,...原创 2022-04-01 11:33:18 · 2051 阅读 · 0 评论 -
维度建模优缺点
维度建模的优缺点_aijiudu的博客-优快云博客_维度建模的优缺点【数据仓库】维度建模的优缺点_大跃ET的博客-优快云博客_维度建模优缺点最重要的总结:维度建模很难反向推导,即难以根据维度模型反推回一般关系模型。万一模型有错误,整个数据仓库就不可信赖,需要从业务数据库重新加载,而这个又耗时又影响业务系统,还有可能丢失历史数据。所以底层一般还用传统数仓,一般就是没有太多逻辑转换的;维度建模用于数据集市。...原创 2022-03-31 20:39:05 · 1568 阅读 · 0 评论 -
小文件带来的问题及解决方案
小文件带来的问题:为啥集群小文件治理那么重要,你真的懂吗?_涤生大数据的博客-优快云博客1:对 NameNode 的影响 -> 元数据管理2:对 DataNode 的影响 -> 存储效率、访问性能3:对计算的影响 -> 计算性能存储系统衡量指标:1:IOPS(Input/Output Per Second)单位时间内系统能处理的I/O请求数量2:数据吞吐量解决方案:1:从源头避免小文件问题repartition/coalesce 和...原创 2022-03-31 20:21:54 · 2230 阅读 · 0 评论 -
Bitmap 详析
用处:排序、去重、查找优点:时间和空间复杂度会大幅下降缺点:1、时间和空间依赖最大数字,数据密集才有优势。2、数据不能有重复#私藏项目实操分享#【难点攻克技术系列】「海量数据计算系列」如何使用BitMap在海量数据中对相应的进行去重、查找和排序_李浩宇/Alex的技术博客_51CTO博客排序时的空间时间复杂度BitMap算法_-柚子皮-的博客-优快云博客_bitmap...原创 2022-03-31 16:57:59 · 415 阅读 · 0 评论 -
Doris 物化视图
为什么会有物化视图?主要是为了满足用户,既能对原始明细数据的任意维度分析,也能快速的对固定维度进行分析查询的需求。物化视图的定义:查询结果预先存储起来的特殊的表Doris 的物化视图特殊之处:用户的查询会根据规则自动匹配到最优的物化视图怎样选择最优:根据前缀索引是否能匹配到,以及聚合程度的高低来选出一个最优的物化视图。最后自动改写 SQL细节:Doris核心功能介绍 -- 数据模型和物化视图、四、Doris物化视图 - 天戈朱 - 博客园原创 2022-03-31 16:46:58 · 606 阅读 · 0 评论 -
Doris 优化方法
最全的Apache Doris的性能优化实战技巧(收藏版)|uniq|apache|视图|数据量_网易订阅主要从三个方面考虑:1:数据模型的选择、分区及分桶设计、索引选择。2:物化视图3:SQL 本身优化原创 2022-03-31 14:20:59 · 1164 阅读 · 0 评论 -
拉链表断链、交叉链判断及处理方式
仓库拉链算法的数据恢复机制(重跑中间任意一天保证数据的准确完整性) - 极客分享 (geek-share.com)系列|数仓实践之『拉链表』拉链表是一种数据模型,主要是针对数据仓库设计中表存储数据的方式而定义的;顾名思义,所谓拉链表,就是记录历史,记录一个事务...-雪球 (xueqiu.com)...原创 2022-03-28 16:42:41 · 4304 阅读 · 0 评论 -
数仓的极致分层
一些基础的层级:(92条消息) 数据仓库--数据分层(ETL、ODS、DW、APP、DIM)_lcl_bigdata的博客-优快云博客_dim层针对不同业务场景的分层:最全面的数仓分层剖析,一文搞定企业数仓分层 | 人人都是产品经理 (woshipm.com)理解DWT和STG两种比较常见也少见的层级有实际举例的层级介绍:(92条消息) 数仓分层(ODS、DWD、DWS、DWT、ADS)和数仓建模_billows9297的博客-优快云博客_dws dwt电商DWT原创 2022-03-28 16:39:50 · 276 阅读 · 0 评论 -
美团数据面试
美团-数据仓库高级工程师面试(一) (qq.com)面试系列 | 大厂数据开发面试经验 (qq.com)原创 2022-03-28 15:53:49 · 967 阅读 · 0 评论 -
数据工作的流程和规范性
数据开发不规范,贪图快和简单方便,其实是在伤害数据仓库的正确性和可维护性。20211229-基础数据开发流程 - 简书 (jianshu.com)数据开发流程 - 巨婴宝宝 - 博客园 (cnblogs.com)(58条消息) 如何避免数仓模型“烟囱式”建设_大数据星球-浪尖-优快云博客数仓开发应避免的10个陷阱 - 知乎 (zhihu.com)建设数仓的血泪教训!(建议收藏) - 知乎 (zhihu.com)数仓治理之数据任务重构实践 - 开发者头条 (toutiao原创 2022-03-28 15:47:41 · 253 阅读 · 0 评论 -
大数据压缩算法总结
1:最主流的四种gzip 压缩比较高,不可 split (行文件),hadoop 自带 (apache 协议)lzo 支持 split,但需要额外的索引文件,自定安装( GPL 协议)snappy 压缩速度快,压缩比一般,不可 split (行文件),自定安装( GPL 协议)bzip 压缩比最高,但是压缩慢,自定安装压缩格式gzip/snappy/lzo/bzip2 比较与总结_zzhongcy的博客-优快云博客_lzo压缩比例1. Data Modeling in Hadoop原创 2022-03-21 12:11:55 · 2838 阅读 · 0 评论 -
大表 join 大表的思路
参考 OLTP 的优化方式:1:限制输入的行 (care 条件要写全)2:限制输入的列 (无用的列不要 select )3:手动先分区再 join4:采用 map 端的预聚合 map_side join5:抽取倾斜 key 然后加随机前缀处理,倍数处理 B ,再 join,然后结果再 union 回去。大数据开发实战:Hive优化实战3-大表join大表优化 - shaomine - 博客园SQL优化技巧之超级大表和超级大表的连接优化 - 知乎...原创 2022-03-16 17:34:37 · 2938 阅读 · 0 评论 -
Spark 3 新特性
Spark 3.0.0正式版发布,开发近两年新增了哪些特性? - 大数据 - dbaplus社群:围绕Data、Blockchain、AiOps的企业级专业社群。技术大咖、原创干货,每天精品原创文章推送,每周线上技术分享,每月线下技术沙龙。介绍较详细。介绍了 AQE 和 DPP 的来源背景:基于动态统计信息的优化Spark3.0 新特性(部分) - 知乎介绍了与数仓模型之间的联系:基于运行时推断的信息来进一步进行分区裁剪。这在星型模型中很常见,星型模型是由一个或多个并且引用了任意原创 2022-03-16 11:10:10 · 3896 阅读 · 0 评论 -
为什么块大小为128M?
(70条消息) 一篇讲懂为什么HDFS文件块(block)大小设定为128M_攻城狮Kevin-优快云博客_hdfs块大小为什么是128mHDFS文件块大小为什么是128M?(重点)_Sun's Blog-优快云博客_hdfs块大小为什么是128m最佳传输损耗理论...原创 2022-03-06 19:36:16 · 376 阅读 · 0 评论 -
数仓如何优化
调度优化(生产测试环境分离、任务优先级划分、提前跑、减少层级依赖)模型优化 (模型选择、拆表、合表、中间层建设、合理分区、拉链表)计算优化(减少输入数据、避免数据倾斜)同步优化(合理参数设置)大数据数仓建设性能优化方案 - 简书 (jianshu.com)调度、模型、同步与任务——阿里云大数据数仓建设性能优化方案 - 知乎 (zhihu.com)...原创 2022-03-06 18:50:57 · 2572 阅读 · 0 评论 -
分位数计算
什么是分位数?approx_percentile 聚合函数 - Azure Databricks | Microsoft Docs如何通俗地理解分位数? - 知乎 (zhihu.com)简单理解分位数就是一个从大到小排列的队伍中,用几分之几的形式来表达你当前所处的位置。比如在中间,就是1/2分位数,其他再比如1/4分位数,2/5分位数等等。函数表达式:Functions - Spark SQL, Built-in Functions (apache.org)可以直接解决原创 2022-03-06 16:58:20 · 1953 阅读 · 0 评论 -
Spark SQL 执行计划详解
弱鸡了吧?背各种SparkSQL调优参数?这个东西才是SparkSQL必须要懂的 - 知乎 (zhihu.com)spark-sql explain 执行计划详解 - 掘金 (juejin.cn)spark sql怎么划分stage_百度知道 (baidu.com)弱鸡了吧?背各种SparkSQL调优参数?这个东西才是SparkSQL必须要懂的 - 知乎 (zhihu.com)spark-sql调优 - 柚子=_= - 博客园spark-sql explain 执行计划详解 - 掘金 (juej原创 2022-03-03 09:15:03 · 3102 阅读 · 0 评论 -
Spark 不等值 join的思考
美团一面的问题,spark join 种类,没想到等值 join 和不等值 joinhttps://segmentfault.com/a/1190000039417619这个文章讲的比较全,join 的五种类型:等值 join(broadcast hash join / shuffle hash join / sort merge join)不等值 join (Broadcast nest loop join / cartesian join (笛卡尔乘积))针对不等值 join,c原创 2022-02-24 10:33:01 · 2054 阅读 · 0 评论 -
大数据优化之去重
如何在 1 秒内做到大数据精准去重?_Kyligence-优快云博客_大数据去重算法HLL + bitmap 两种主流优化方法。原创 2022-02-23 09:34:23 · 1653 阅读 · 0 评论 -
元数据相关
详解如何在数仓中管理元数据-大数据 (uml.org.cn)元数据的定义、分类和用处以及常见的工具五分钟讲透元数据管理——什么是元数据 元数据的分类和价值 如何进行元数据管理 - 知乎 (zhihu.com)元数据的价值和分类公司如何做好元数据管理_百度知道 (baidu.com)如何做好元数据管理,几个手段...原创 2022-02-15 22:11:36 · 842 阅读 · 0 评论 -
OLAP 引擎对比,Doris选型理由
让美团、京东、搜狐都说好的数据仓库,牛在哪?_DorisDoris 与 ClickHouse 的深度对比及选型建议|sql|单表|原子性|key|元数据_网易订阅编程小梦|Apache Doris 在美团点评的实践Doris Create, Load & Delete 建表、导入和删除-Apache Doris 文档-面试哥Apache Doris数据模型的介绍 - 大数据 - 亿速云(三个数据模型)...原创 2022-02-11 15:25:33 · 2299 阅读 · 0 评论 -
Spark 重要算子
spark常用算子的区别与联系 - 知乎比较细SparkCore的常用算子 - 任重而道远的小蜗牛 - 博客园常用的Transiformation算子 - 任重而道远的小蜗牛 - 博客园比较全spark groupByKey reduceByKey aggregateByKey 区别博客_MISAYAONE的博客-优快云博客重要的 bykey 算子...原创 2022-02-08 18:48:00 · 682 阅读 · 0 评论 -
Spark Shuffle
1:老版本介绍,温故知新Spark的Shuffle的四种机制以及参数调优_qichangjian的博客-优快云博客_spark.shuffle.file.buffer2:fetch 机制的详解:Shuffle过程 | Apache Spark 的设计与实现3:最新最全的解释,将的最清晰:Spark shuffle机制概述 - 简书Spark Tungsten-sort shuffle write流程解析 - 简书Spark基本sort shuffle wri原创 2022-02-08 16:01:09 · 743 阅读 · 0 评论 -
spark 内存管理机制
详细解释:Spark内存管理之堆内/堆外内存原理详解_pre_tender的博客-优快云博客_spark 堆外内存外文翻译,解释了堆外内存到底怎么用:https://medium.com/walmartglobaltech/decoding-memory-in-spark-parameters-that-are-often-confused-c11be7488a24Dive into Spark memory - Blog | luminousmentungsten 在内存上的原创 2022-02-07 21:57:21 · 809 阅读 · 0 评论 -
刷题方法:多路归并
理解多路归并和归并的区别,其实也没有区别:1,2,3,4,51,3,5两个增序数组合并,归并排序,两个指针分别指向两个数组的头结点,对比遍历即可。但如果是多行数组呢?1,2,3,5,62,3,4,4,53,4,4,4,71,1,2,4....它们的合并显然不能用以上方法来完成。这里就要用到多路归并了。多路归并的思想:每个排序数组的第一个数组初始化好,当弹出元素属于第 i 个数组的时候,压入第 i 个数组的下一个元素。这里要用到 python 中的最小堆原创 2022-01-19 18:14:13 · 458 阅读 · 0 评论 -
刷题方法:并查集
第一步:确认两个数之间有一定的关系。第二步:构建带权重的有向图第三步:压缩路径,让所有的子节点都直接指向根节点,并更新权重值第四步:创建两个节点之间的关联关系,合并树复杂度分析:相关题目:「力扣」第 547 题:省份数量(中等);「力扣」第 684 题:冗余连接(中等);「力扣」第 1319 题:连通网络的操作次数(中等);「力扣」第 1631 题:最小体力消耗路径(中等);「力扣」第 959 题:由斜杠划分区域(中等);「力扣...原创 2022-01-14 17:38:02 · 3312 阅读 · 0 评论 -
刷题方法:拓扑排序之 BFS+DFS
BFS (广度优先,遍历到每个节点的时候,先处理这个节点的所有相邻节点)核心逻辑为判断所有节点的最终入度为01:统计图中每个节点的入度,生成 入度表 indegrees。2:借助一个队列 queue,将所有入度为 00 的节点入队。3:当 queue 非空时,依次将队首节点出队,在课程安排图中删除此节点 pre:4:并不是真正从邻接表中删除此节点 pre,而是将此节点对应所有邻接节点 cur 的入度 -1−1,即 indegrees[cur] -= 1。5:当入度 -1−1后邻接节点 cur原创 2022-01-11 12:00:02 · 448 阅读 · 0 评论 -
刷题方法:树的遍历
树的遍历方式:就是指代根节点的位置前序:根左右中序:左根右后序:左右根总体上树的递归方法:就是调用自身比如说获取二叉树的中序遍历结果def pre_order(root): if root is None: return [] return self.pre_order(root.left) + [root.val] + self.pre_order(root.right)还有另外一种写法更像递归:stack = []def pre_原创 2022-01-08 12:39:28 · 370 阅读 · 0 评论 -
刷题方法:回溯法
1:回溯法和动态规划的区别共同点用于求解多阶段决策问题。多阶段决策问题即:求解一个问题分为很多步骤(阶段);每一个步骤(阶段)可以有多种选择。不同点动态规划只需要求我们评估最优解是多少,最优解对应的具体解是什么并不要求。因此很适合应用于评估一个方案的效果;回溯算法可以搜索得到所有的方案(当然包括最优解),但是本质上它是一种遍历算法,时间复杂度很高。2:什么题适用?1:在输入为1维数组的条件下,是否能够构建一个树结构,满足递归条件?即:在已经选择了一些数的前提下,还需要选一些数原创 2022-01-06 19:24:45 · 248 阅读 · 0 评论 -
刷题方法:单调栈
#单调栈理论是什么?先顾名思义,即为栈中元素永远都是单调递增或者单调递减的情况。遇到新元素,如果满足单调递增或者递减,则直接入,如果不满足,那么不断弹出最后一个元素,直到满足规则为止,也就是说,新元素必须要入到这个栈中,而老元素不满足条件的直接弹出什么时候用?用处:当你需要高效率获取某个位置左右两侧比他大(或小)的数的位置的时候就可以用到单调栈 O(n) 的时间效率。#找到当前数字的下一个(更小、更大)数字#找到当前数字的上一个(更小、更大)数字怎么写?单调递增栈:#原创 2022-01-05 09:45:41 · 308 阅读 · 0 评论 -
LeetCode 100
1:盛最多水的容器。给你 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。方案1:直接暴力破解,O(n*n),但是最后会有时间限制。方案2:双指针法,首尾指针,左指针小于右指针的值,左指针向右移动,否则右指针向左移动。终止条件是left < right。2:三数之和。给你一个原创 2021-12-29 23:29:04 · 996 阅读 · 0 评论 -
大数据SQL题
1:用户登陆日志app, user_id, datetimea1,user1,2020-01-01 00:00:00a2,user2,2020-01-01 00:00:01a3,user3,2020-01-01 00:00:02a4,user4,2020-01-01 00:00:03……输出每个app下访问次数最多的5个用户考察窗口函数:select app,userid,rank from (select app, userid, row_number() over (parti原创 2021-12-23 23:22:08 · 1321 阅读 · 0 评论 -
剑指OFFER
二维数组的查找:从右上角开始找!!!(注意输入空数组的判断)替换空格:解法1:直接创建一个新数组,利用元素替换功能,再join数组为str返回即可。(注意空字符串的判断)(python的输入判断更为复杂:if not isinstance(s, str) or len(s) <= 0 or s == None:)从尾到头打印链表:python数组的切片操作->逆序数组python切片两个冒号_Python基础(2)序列数据_吴阳冯允谦的博客-优快云博客递归写法:func(node.原创 2021-12-22 10:26:50 · 1042 阅读 · 0 评论 -
热备冷备双活
热备、冷备、双活 - 知乎原创 2021-11-23 19:41:57 · 384 阅读 · 0 评论 -
ClickHouse 相关博客
什么叫副本 replica,什么叫分片 shard?ClickHouse学习系列之四【副本&分片部署说明】 - jyzhou - 博客园MergeTree + Replicated 引擎介绍:ClickHouse各种MergeTree的关系与作用 - 云+社区 - 腾讯云所有表引擎简介:表引擎 - 云数据库 ClickHouse - 阿里云Replicated(复制 )+ Distributed(分布式) 引擎ClickHouse复制表、分布式表机制与使用方法 - 简书原创 2021-11-23 19:20:30 · 545 阅读 · 0 评论 -
ClickHouse 实践经验
1:参考 : ClickHouse Better Practices - 简书数据类型:不要全部设置成 String,能用数值、DateTime 就用,更快。 不要允许为 Nullable,Nullable 一方面需要额外创建文件存储NULL值的标记,一方面不能加入到索引中。(使用字段默认值或者无意义值) DateTime 类型,可读性佳、转换函数丰富、性能佳分区和索引分区的粒度必须与业务紧密结合,不宜过细也不宜过粗。看占比最大的查询,到底是小时级别还是天级别?(一般都是天级别的查询)..原创 2021-11-18 18:55:18 · 337 阅读 · 0 评论