本文由  网易云发布. 本文具体讨论了Join基础算法的一种优化方案  – Runtime Filter,在本文最后还引申地聊了聊谓词 下推技术.同时,在本文文章开头,笔者引出了两个问题,SQL执行引擎如何知晓参与Join的两波数据集大小?衡量两波数据集 大小的是物理大小还是纪录多少抑或两者都有?这关系到SQL解析器如何正确选择Join算法的问题.好了,这些就是这篇文章要为 大家带来的议题-基于代价优化(Cost-Based Optimization,简称CBO). CBO基本原理 提到CBO,…
基于TensorRT优化的Machine Translation 机器翻译系统用于将文本从一种语言翻译成另一种语言.递归神经网络(RNN)是机器翻译中最流行的深度学习解决方案之一. TensorRT机器翻译示例的一些示例包括: Neural Machine Translation (NMT) Using A Sequence To Sequence (seq2seq) Model Building An RNN Network Layer By Layer 4.1. Neural Machine…
在逛 programcreek 的时候,我发现了一些专注基础但不容忽视的主题.比如说:Java 的可变参数究竟是怎么一回事?像这类灵魂拷问的主题,非常值得深入地研究一下. 我以前很不重视基础,觉得不就那么回事嘛,会用就行了.就比如说今天这个主题,管它可变不可变呢,不就是个参数嘛,还能有多大学问--抱着这种态度,我一直横行江湖近十载(苦笑).可等到读者找我提一些基础的问题时,我几乎回答不上来,感觉知识是散的,或者是浮于表面的.幸好最近一段时间,我开始幡然醒悟,开始不放过任何一个细节,渐渐地,有点"…
摘要: 本文将介绍 CBO,它充分考虑了数据本身的特点(如大小.分布)以及操作算子的特点(中间结果集的分布及大小)及代价,从而更好的选择执行代价最小的物理执行计划,即 SparkPlan. Spark CBO 背景 上文Spark SQL 内部原理中介绍的 Optimizer 属于 RBO,实现简单有效.它属于 LogicalPlan 的优化,所有优化均基于 LogicalPlan 本身的特点,未考虑数据本身的特点,也未考虑算子本身的代价. 本文将介绍 CBO,它充分考虑了数据本身的特点(如大小…
更多技术交流.求职机会.试用福利,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 相信大家都对大名鼎鼎的ClickHouse有一定的了解了,它强大的数据分析性能让人印象深刻.但在字节大量生产使用中,发现了ClickHouse依然存在了一定的限制.例如: 缺少完整的upsert和delete操作 多表关联查询能力弱 集群规模较大时可用性下降(对字节尤其如此) 没有资源隔离能力 因此,我们决定将ClickHouse能力进行全方位加强,打造一款更强大的数据分析平台.本篇将详细介绍我们是如…
之前说了很多关于 Nginx 模块的内容,还有一部分非常重要的内容,那就是 Nginx 的变量.变量在 Nginx 中可以说无处不在,认识了解这些变量的作用和原理同样是必要的,下面几乎囊括了关于 Nginx 的所有变量,单独看起来可能比较枯燥,放心,后面依然有实战内容. Nginx 变量的运行原理 围绕 Nginx 中的变量模块可以分为两类,一类是提供变量的模块,另外一类是使用变量的模块. 提供变量的模块 在 Preconfiguration 源代码中定义变量名以及可以解析出变量的方法 使用变量…
此文已由作者赵计刚授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 注:本文主要参考自<深入理解Java虚拟机(第二版)>和<深入理解Java内存模型> 1.Java内存模型(JMM) Java内存模型的主要目标:定义在虚拟机中将变量存储到内存和从内存中取出变量这样的底层细节. 注意:上边的变量指的是共享变量(实例字段.静态字段.数组对象元素),不包括线程私有变量(局部变量.方法参数),因为私有变量不会存在竞争关系. 1.1.内存模型就是一张图: 说明: 所…
一.数据库管理系统 数据库管理系统(Database Management System, DBMS) 衡量是否是数据库的标准: ACID:是指在数据库管理系统(DBMS)中事务所具有的四个特性: 1) 原子性(Atomicity) 2) 一致性(Consistency) 3)隔离性(Isolation) 4)持久性(Durability) 1.关系型数据库:是建立在关系数据库模型基础上的数据库,借助于关系代数等概念和方法来处理数据库中的数据,同时也是一个被组织成一组拥有正式描述性的表格,该形式…
Hive 前言 Hive 是基于 Hadoop 的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的 SQL 查询功能,将类 SQL 语句转换为 MapReduce 任务执行. 数据组织格式 下面是直接存储在HDFS上的数据组织方式 Table:每个表存储在HDFS上的一个目录下 Partition(可选):每个Partition存储再Table的子目录下 Bucket(可选):某个Partition根据某个列的hash值散列到不同的Bucket中,每个Bucket是一个文…
本文由  网易云发布. 在之前的文章中简要介绍了Join在大数据领域中的使用背景以及常用的几种算法-broadcast hash join .shuffle hash join以及 sort merge join等,对每一种算法的核心应用场景也做了相关介绍,这里再重点说明一番:大表与小表进行join会使用broadcast hash join,一旦小表稍微大点不再适合广播分发就会选择shuffle hash join,最后,两张大表的话无疑选择sort merge join. 好了,问题来了,说…