数据库:流水线功能

时间:2010-05-22 17:28:50

标签: sql mysql database oracle

我是管道功能概念的新手。我有一些关于

的问题

从数据库的角度来看:

  • 究竟什么是管道功能?
  • 使用管道功能有什么好处?
  • 使用管道功能解决了哪些挑战?
  • 使用管道功能的任何优化优势是什么?

感谢。

1 个答案:

答案 0 :(得分:7)

引用fom“Ask Tom Oracle”:

  

流水线函数只是“你可以伪装成数据库表的代码”

     

流水线功能为您提供(令我惊讶的)

的能力      

select * from PLSQL_FUNCTION;

     

任何时候你认为你可以使用它 - 从一个函数而不是一个表中选择*   可能是“有用的”。

就优点而言:使用Pipeline函数的一大优点是,您的函数可以逐个返回行,而不是在返回行之前在整个内存中构建整个结果集。

上面给出了明显的优化 - 通过本来可以返回大结果集的东西来节省内存。

using pipelined functions is here

的一个相当有趣的例子

似乎很好用的是ETL(提取/转换/加载) - for example see here