他们的主要区别:

  •流查询步骤只能进行等值查询,数据库查询步骤可以进行非等值查询

  •流查询在查询之前把数据都加载到内存里,数据库查询可以选择是否把数据加载到内存。
  •进行等值查询时,数据库查询步骤如果选中了全部缓存,性能接近但仍不如流查询的性能。
  •进行等值查询时,数据库查询步骤如果没选中全部缓存,性能较低,每次查询都要向数据库发送一个SQL 查询请求。
  •进行非等值查询时,数据库查询即使选中了全部缓存,性能也较低,没有索引在内存中通过循环查询。

  •数据库查询的缓存适用于多次查询返回同一个查询结果的情况(集中式),多次查询返回不同查询结果(分散式),使用缓存反而会降低性能。

使用场景:

  •非等值查询:数据库查询

  •中小数据量的等值查询:流查询
  •大数据量的等值集中式查询:数据库查询(使用缓存)
  •大数据量的等值分散式查询:数据库查询(不使用缓存)

kettle 表输入+流查询 与 数据库查询的更多相关文章

  1. kettle表输入条件参数设置

    @ 获取系统信息:设置命令参数 @ 表输入:

  2. sql server多数据库查询 远程数据库查询

    --创建链接服务器 exec sp_addlinkedserver 'srv_lnk','','SQLOLEDB','服务器地址' exec sp_addlinkedsrvlogin 'srv_lnk ...

  3. c#程序中使用"like“查询access数据库查询为空的问题

    今天,在开发的过程中发现了一个特别奇怪的问题:access中like查询时候,在Access数据库中执行,发现可以查询出结果,这是在数据库上执行,select * from KPProj where ...

  4. c#程序中使用"like“查询access数据库查询为空的问题

    今天,在开发的过程中发现了一个特别奇怪的问题:access中like查询时候.在Access数据库中运行,发现能够查询出结果.这是在数据库上运行.select * from KPProj where ...

  5. php查询mysql数据库 查询条件替中文字符串变量时无法查询

    $temp2 ='十年';mysql_query("SET NAMES GBK"); $res = mysql_query("select songer_name fro ...

  6. kettle中使用javascript步骤和fireToDB函数实现自己定义数据库查询

    kettle中使用javascript步骤和fireToDB函数实现自己定义数据库查询 如果你须要实现非传统的数据库查询操作.为了讨论这样的情景,我们如果你须要读取数据库中的正則表達式,然后检查输入的 ...

  7. [SQL]查询整个数据库中某个特定值所在的表和字段的方法

    查询整个数据库中某个特定值所在的表和字段的方法 当数据库做的太庞大的时候,难免会出现忘记哪个值会存入哪个表的情况,于是在网上找到的如下解决办法. 通过做一个存储过程,只需要传入一个想要查找的值,即可查 ...

  8. Oracle中查询当前数据库中的所有表空间和对应的数据文件语句命令

    Oracle中查询当前数据库中的所有表空间和对应的数据文件语句命令 ------------------------------------------------------------------ ...

  9. 【知识库】-数据库_MySQL之高级数据查询:去重复、组合查询、连接查询、虚拟表

    简书作者:seay 文章出处: 关系数据库SQL之高级数据查询:去重复.组合查询.连接查询.虚拟表 回顾:[知识库]-数据库_MySQL之基本数据查询:子查询.分组查询.模糊查询 Learn [已经过 ...

随机推荐

  1. C#编程简短总结

    封装 field一般为private,定义的时候可以不赋值.不赋值的时候一般被构造函数初始化赋值,其值用来保存类实例的数据,可以被内部方法使用作为计算的数据来源.当需要继承类继承本类的时候,field ...

  2. Java中字符串相等与大小比较

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html 内部邀请码:C8E245J (不写邀请码,没有现金送) 国 ...

  3. php 算法之切割数组,不用array_chunk(),算法之二,取数组的差值,不用array_diff()

    用php写算法切割数组,不用array_chunk();算法例如以下所看到的. <?php //$array 数组 //$size 每一个数组的个数 //每一个数组元素是否默认键值 functi ...

  4. DynamoDB Local for Desktop Development

    Would you like to be able to write and test code that uses the Amazon DynamoDB API even if you have ...

  5. 实现一个跨平台的mysock库(windows、linux)

     源码下载 1.首先确定自己的操作系统为32位还是64位: root@bfq:~/mysock# uname -a Linux bfq 3.11.0-26-generic#45~precise1- ...

  6. alternatives命令使用方法

    alternatives命令使用方法 alternatives是Linux下的一个功能强大的命令.仅仅能在root权限下运行.如系统中有几个命令功能十分相似,却又不能任意删除,那么能够用 altern ...

  7. 怎样配置Tomcat环境变量

    JDK环境变量配置:      假设你的安装JDK在C盘里,如:C:\Program Files\Java\jdk1.6.0_05,那么就在系统变量里(当然也能够在用户变量里)点新建:      变量 ...

  8. 关于Android与pc通信时中文乱码的分析和解决

    初步实现了Android与pc服务器的通信之后,又碰到了传说中令人头疼不已的中文乱码问题.既然出现了乱码,那么原因自然是协议不通了.我们知道eclipse中默认的编码标准是GBK,而安卓程序开发所默认 ...

  9. 解析“extern”

    解析“extern” 1. 声明外部变量 现代编译器一般採用按文件编译的方式,因此在编译时,各个文件里定义的全局变量是 互相透明的,也就是说,在编译时,全局变量的可见域限制在文件内部.以下举一个简单的 ...

  10. Zend Studio / Ecliplse插件StartExplorer

    Install site.zip (quick and simple way) Locate zip file under site\target in Project Explorer, Start ...