如何最大限制利用cpu?如何最快速的扫描完大表。如果大表有主键,count(*)就会走主键,oracle只需要扫描主键就能完成。 假设这个表没有主键,那么count(*)的时候只能走全表扫描,数据就非常慢。这里用full(a)强制走全表来模拟。 --找100G以上的分区表 SQL> @getsegsize_big Enter value for tablespace_name: Enter value for owner: Enter value for how_big_m: 100000 OWNER SEGMENT_NAME SEGMENT_TYPE BIG_M BIG_G TABLESPACE_NAME --------------- ---------------------------------------- ------------------ ---------- ---------- --------------------- SPS_PUB TB_IM_ORDER_QUE_GZ TABLE PARTITION 170579.875 166.581909 DATA_INPUT_GZ SPS_GZ TB_OS_LOG TABLE 132687 129.577148 DATA_INPUT_GZ CRM_GZ TB_BA_PRODUCT_HIST TABLE 119860.625 117.051392 DATA_INPUT_GZ 3 rows selected. --SPS_PUB.TB_IM_ORDER_QUE_GZ有166G,我们那这个表来测试一下 --了解数据分布情况 SQL> @getsegsize_partition Enter value for dblink: Enter value for segment_name: TB_IM_ORDER_QUE_GZ Enter value for owner: SPS_PUB OWNER SEGMENT_NAME PARTITION_NAME SEGMENT_TYPE BIG_M BIG_G TABLESPACE_NAM -------------------- ------------------------------ ------------------------------ -------------------- ---------- ---------- ------ SPS_PUB TB_IM_ORDER_QUE_GZ P10 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P9 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P12 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P13 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P14 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P15 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P16 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P17 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P18 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P19 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P11TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P8 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P7 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P6 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P44 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P43 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P42 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P41 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P28 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P29 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P30 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P31 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P32 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P33 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P34 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P35 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P36 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P37 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P38 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P39 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P40 TABLE PARTITION .1 .0 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P22 TABLE PARTITION 15,424.0 15.1 DATA_INPUT_GZ SPS_PUB TB_IM_ORDER_QUE_GZ P2