如何处理大数据量的查询?
JJTwo 2009-02-06 09:49:27 表結構:
NUMREPORTREALSENDGUID NUMBER not null,
NUMMMSID NUMBER(15),
VC2SERVICECODE VARCHAR2(24),
VC2CAMPAIGNID VARCHAR2(24),
VC2CALLEDNUM VARCHAR2(64),
DATCREATE DATE,
VC2REPORTSTATUS VARCHAR2(1),
VC2STATUS VARCHAR2(1),
VC2USERID VARCHAR2(128)
SQL:
select
vc2servicecode,vc2campaignid,datcreate,vc2reportstatus,vc2status
from imms_report_realsend
where datcreate between YYYY-MM-DD and yyyy-mm-dd
and vc2userid=?
order by datcreate
目前數據庫里已有1000多萬筆數據。查一下其中的200W大概需要2分鐘,太長
了。(不知道是不是分頁有問題,用的是extremetable)
最終數據量可能會有5400W
1.表分区(問題: 如果建表分區的話只能按日期建,每月一個分區,但是如果
做跨月查詢的話,速度會不會提升? 還是更可能還會變慢?)
2.索引 已經在DATCREATE上建了索引(datcreate有order by操作),但是效果
并不明顯!
請做過這樣的大數據量查詢的XDJM指教一下!
謝謝!