Oracle在通过网络传输时是否压缩/最小化查询结果中的一些重复数据?

kse*_*een 2 sql compression oracle networking oracle-net-services

可能重复:
Oracle 10g:通过数据库链接传输压缩了吗?可能吗?

我有一个巨大的SQL查询,其中包含很多字段.此结果中的大多数数据都是每个自我的重复数据.

以下是智能的SQL结果的一部分:

RECORD_ID DATE_REC    CAB   PERSON_ID CODE1                          CODE4     CODE2 CODE5                                CODE5_VALUE                                                                      CODE5_SUBVALUE1           CODE5_SUBVALUE2           CODE5_SUBVALUE3           CODE6_SUBVALUE1           CODE6_SUBVALUE2           CODE6_SUBVALUE3
  1500747 31.10.2012          2260784                                  5664       26 552ec2af-c9d3-4f18-bc84-68d641fdbc5f HF2OUGVG11                                                                       JOHNSON                   DAVID                     MATTHEW                   PETERSON                  EARL                      TOMAS
  1500750 31.10.2012                                                   5664       26 552ec2af-c9d3-4f18-bc84-68d641fdbc5f HF2OUGVG11                                                                       JOHNSON                   DAVID                     MATTHEW                                                                      
  1500711 29.10.2012                  0;4;28;                          5664       26 552ec2af-c9d3-4f18-bc84-68d641fdbc5f HF2OUGVG11                                                                       JOHNSON                   DAVID                     MATTHEW                                                                      
  1500712 29.10.2012                  0;4;28;                          5664       26 552ec2af-c9d3-4f18-bc84-68d641fdbc5f HF2OUGVG11                                                                       JOHNSON                   DAVID                     MATTHEW                                                                      
  1500713 29.10.2012                  0;4;28;                          5664       26 552ec2af-c9d3-4f18-bc84-68d641fdbc5f HF2OUGVG11                                                                       JOHNSON                   DAVID                     MATTHEW                                                                      
  1500714 29.10.2012                  0;4;28;                          5664       26 552ec2af-c9d3-4f18-bc84-68d641fdbc5f HF2OUGVG11                                                                       JOHNSON                   DAVID                     MATTHEW                                                                      
  1500715 29.10.2012                  0;4;28;                          5664       26 552ec2af-c9d3-4f18-bc84-68d641fdbc5f HF2OUGVG11                                                                       JOHNSON                   DAVID                     MATTHEW                                                                      
  1500716 29.10.2012                  0;4;28;                          5664       26 552ec2af-c9d3-4f18-bc84-68d641fdbc5f HF2OUGVG11                                                                       JOHNSON                   DAVID                     MATTHEW                                                                      
  1500717 29.10.2012                  0;4;28;                          5664       26 552ec2af-c9d3-4f18-bc84-68d641fdbc5f HF2OUGVG11                                                                       JOHNSON                   DAVID                     MATTHEW                                                                      
  1500718 29.10.2012                  0;4;28;                          5664       26 552ec2af-c9d3-4f18-bc84-68d641fdbc5f HF2OUGVG11                                                                       JOHNSON                   DAVID                     MATTHEW                                                                      
  1500745 31.10.2012                                                   5664       26 552ec2af-c9d3-4f18-bc84-68d641fdbc5f HF2OUGVG11                                                                       JOHNSON                   DAVID                     MATTHEW                                                                      
  1500746 31.10.2012                                                   5664       26 552ec2af-c9d3-4f18-bc84-68d641fdbc5f HF2OUGVG11                                                                       JOHNSON                   DAVID                     MATTHEW                                                                      
  1500748 31.10.2012                                                   5664       26 552ec2af-c9d3-4f18-bc84-68d641fdbc5f HF2OUGVG11                                                                       JOHNSON                   DAVID                     MATTHEW                                                                      
  1500749 31.10.2012                                                   5664       26 552ec2af-c9d3-4f18-bc84-68d641fdbc5f HF2OUGVG11                                                                       JOHNSON                   DAVID                     MATTHEW                                                                      
  1500709 29.10.2012                  0;4;28;                          5664       26 552ec2af-c9d3-4f18-bc84-68d641fdbc5f HF2OUGVG11                                                                       JOHNSON                   DAVID                     MATTHEW                                                                      
  1500710 29.10.2012                  0;4;28;                          5664       26 552ec2af-c9d3-4f18-bc84-68d641fdbc5f HF2OUGVG11                                                                       JOHNSON                   DAVID                     MATTHEW                                                                      
Run Code Online (Sandbox Code Playgroud)

从上面的请求可以看出,有很多重复的数据.Oracle会在串行化时通过网络传输吗?

APC*_*APC 5

SQL*Net执行有限级别的重复数据删除.也就是说,它将当前行与最后一行进行比较,如果当前行中给定列中的值包含与发送行中该列相同的值,则不传输该值.然后它替换接收端的所有重复.

这意味着排序顺序至关重要.但是,如果您发布的样本日期代表查询的输出,我认为您应该看到当前ORDER BY子句的大量重复数据删除.但是,可能存在可提供更大压缩的备用排序:如果"巨大的SQL查询"超过足够高的"巨大"值,则可能需要对这些进行基准测试.

Jonathan Lewis在博客文章中提供了更多详细信息,包括可用于评估案例中重复数据删除的演示. 你应该阅读它.