kettle 表输入+流查询 与 数据库查询

他们的主要区别:

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

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

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

使用场景:

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

  •中小数据量的等值查询:流查询
  •大数据量的等值集中式查询:数据库查询(使用缓存)
  •大数据量的等值分散式查询:数据库查询(不使用缓存)
上一篇:[IR] Compression


下一篇:Codeforces Round #555 (Div. 3)[1157]题解