一句话:提出 LAMBDA,静态推断 UDF 属性(如纯性)以帮助 DBMS 优化查询并避免重复调用。
用户定义函数(UDF)广泛用于扩展 DBMS 能力,但 DBMS 通常将 UDF 视为黑盒,导致调用 UDF 的查询难以被优化并产生显著性能开销。本文提出 LAMBDA,一个静态推断 UDF 属性的技术与框架,目的是让 DBMS 利用这些属性更好地处理含 UDF 的查询。其核心思想是自动推断诸如纯性等性质:若 DBMS 知道某 UDF 对相同参数总返回相同结果,就可引入缓存以避免具有相同实参的重复调用。摘要未报告具体实验评估,但以纯性推断为例说明了该框架如何为查询优化提供支持。
User-defined functions (UDFs) are widely used to enhance the capabilities of DBMSs. However, using UDFs comes with a significant performance penalty because DBMSs treat UDFs as black boxes, which hinders their ability to optimize queries that invoke such UDFs. To mitigate this problem, in this paper we present LAMBDA, a technique and framework for improving DBMSs' performance in the presence of UDFs. The core idea of LAMBDA is to statically infer properties of UDFs that facilitate UDF processing. Taking one such property as an example, if DBMSs know that a UDF is pure, that is it returns the same result given the same arguments, they can leverage a cache to avoid repetitive UDF invocations that have the same call arguments.