Deep Upsupervised Cardinality Estimation 本篇博客是对Deep Upsupervised Cardinality Estimation的解读,原文连接为:https://dl.acm.org/doi/pdf/10.14778/3368289.3368294 本文介绍了如何使用深度自回归模型(如:MADE.transformer)来进行基数估计的任务(利用模型训练拟合数据分布) 特点: 使用autoregressive model,无监督学习 没有做任何独立…
A Unified Deep Model of Learning from both Data and Queries for Cardinality Estimation 论文解读(SIGMOD 2021) 本篇博客是对A Unified Deep Model of Learning from both Data and Queries for Cardinality Estimation的一些重要idea的解读,原文连接为:A Unified Deep Model of Learning f…
Fauce:Fast and Accurate Deep Ensembles with Uncertainty for Cardinality Estimation 论文解读(VLDB 2021) 本篇博客是对Fauce:Fast and Accurate Deep Ensembles with Uncertainty for Cardinality Estimation 论文的解读.原文链接为p1950-liu.pdf (vldb.org) 本文设计一种基于集成深度神经网络的基于查询的选择度估…
基数计数(cardinality counting)是实际应用中一种常见的计算场景,在数据分析.网络监控及数据库优化等领域都有相关需求.精确的基数计数算法由于种种原因,在面对大数据场景时往往力不从心,因此如何在误差可控的情况下对基数进行估计就显得十分重要.目前常见的基数估计算法有Linear Counting.LogLog Counting.HyperLogLog Counting及Adaptive Counting等.这几种算法都是基于概率统计理论所设计的概率算法,它们克服了精确基数计数算法的…
最近在菜鸟教程上自学redis.看到Redis HyperLogLog的时候,对"基数"以及其它一些没接触过(或者是忘了)的东西产生了好奇. 于是就去搜了"HyperLogLog",从而引出了Cardinality Estimation算法,以及学习它时参考的一些文章: http://blog.codinglabs.org/articles/algorithms-for-cardinality-estimation-part-i.html 从文章上看来,基数是指一个…
对于SQL Server数据库来说,性能一直是一个绕不开的话题.而当我们去分析和研究性能问题时,执行计划又是一个我们一直关注的重点之一. 我们知道,在进行编译时,SQL Server会根据当前的数据库里的统计信息,在一定的时间内,结合本机资源,挑选一个当前最佳的执行计划去执行该语句. 那么数据库分析引擎如何使用这些统计信息的呢?数据库引擎会根据数据库里的统计信息,去计算每次操作大约返回多少行.这个动作称之为基数计算(cardinality estimation).数据库分析引擎会基于这些信息判断…
HyperLogLog参考下面这篇blog, http://blog.codinglabs.org/articles/algorithms-for-cardinality-estimation-part-iv.html 为何LLC在基数不大的时候会误差比较大? 直观上,由于基数不大时,会有很多空桶,而最终结果是求平均值,这个值对离群值(这里的0)非常敏感 那么重理论上看,为何误差比较大? LLC的渐近标准误差为 ,看上去只是和桶数m有关,为何还和基数大小有关? 关键就是理解渐近标准误差, 标准误…
最近在菜鸟教程上自学redis.看到Redis HyperLogLog的时候,对“基数”以及其它一些没接触过(或者是忘了)的东西产生了好奇. 于是就去搜了“HyperLogLog”,从而引出了Cardinality Estimation算法,以及学习它时参考的一些文章: http://blog.codinglabs.org/articles/algorithms-for-cardinality-estimation-part-i.html 从文章上看来,基数是指一个集合(这里的集合允许存在重复元…
Are we ready for learned Cardinality Estimation 摘要 文章包括三大部分: 对于一个静态的数据库,本文将五种基于学习的基数估计方法与九中传统的基数估计方法在四个现实世界的数据集和统一的工作负载上进行了比较.结果说明基于学习的基数估计方法比传统方法更加准确,但也需要更多训练和推理的开销. 探索在动态的数据库中,基于学习的基数估计方法是否能够表现出色,结果证明基于学习的基数估计方法不能很好的实时的捕捉到数据的更新,经常会产生一些较大的误差,而在更新环境不…
Tsunami: A Learned Multi-dimensional Index for Correlated Data and Skewed Workloads 论文解读(VLDB 2021) 本篇博客是对发表在2021 VLDB上的# Tsunami: A Learned Multi-dimensional Index for Correlated Data and Skewed Workloads的解读,原文链接为Tsunami: A Learned Multi-dimensional…