首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏Spark学习技巧

    SparkSql的优化器-Catalyst

    Catalyst依靠Scala语言,名为quasiquotes,的特殊功能,使代码生成更简单。 Quasiquotes允许用Scala语言编程构建抽象语法树(AST),然后可以在运行时将其提供给Scala编译器以生成字节码。 下图显示,quasiquotes让我们生成与手动调优程序相似的代码。 ? 我们发现使用quasiquotes进行代码生成是非常简单直接的,我们观察到,即使SparkSql的新贡献者也可以快速添加新类型的表达式的规则。 Quasiquotes可以帮助我们实现很多功能,比如规则引擎。后面也会举例讲解,如何在我们的应用中使用。

    3.4K90发布于 2018-01-30
  • 来自专栏九彩拼盘的叨叨叨

    AST 介绍

    在计算机科学中,这种能力被称为准引用(quasiquotes)。

    2.4K10发布于 2020-04-02
  • 来自专栏Play & Scala 技术分享

    Scala Macro 现状介绍

    Scala Macro 发展的高峰是 Scala 2.11 版本,增加更多新特性,其中最耀眼的便是QUASIQUOTES,它可以帮助开发者屏蔽编译器底层的细节,很大程度上简化了Macro的编写工作。

    1.7K50发布于 2018-05-17
  • 来自专栏暴走大数据

    一文了解函数式查询优化器Spark SQL Catalyst

    Reference Overview Spark SQL的核心是Catalyst优化器,是以一种新颖的方式利用Scala的的模式匹配和quasiquotes机制来构建的可扩展查询优化器。 ?

    3.8K20发布于 2020-06-03
  • 来自专栏函数式编程语言及工具

    Scala Macros - 元编程 Metaprogramming with Def Macros

    quasiquotes是最新的AST操作函数集,可以更方便灵活地控制AST的产生、表达式还原等。 在使用quasiquotes时我们一般是在q括号中放入原始代码。在q括号内调用AST变量用$前缀(称为unquote)。对类型tpe的操作可以参考scala.reflect api。

    3.5K90发布于 2018-01-05
  • 来自专栏最新最全的大数据技术体系

    Note_Spark_Day08:Spark SQL(Dataset是什么、外部数据源、UDF定义和分布式SQL引擎)

    Spark SQL的核心是Catalyst优化器,它以一种新颖的方式利用高级编程语言功能(例如Scala的模式匹配和quasiquotes)来构建可扩展的查询优化器。

    4.9K40编辑于 2021-12-07
领券