Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
Ничего не могу сказать про 8-ку. Если говорить о 9-ке, то есть табличка, в которую набиваются профайлы, могу предложить заглянуть сюда . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 11:16 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
Нету у нас такой таблички:( Mark, help me! :) Как профайл подгрузить-то? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 11:20 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
Чтобы оптимизатор использовал профайлы нужно задавать свойства приложениям или серверу? В смысле придется лезть в код приложений или достаточно что-то где-то на сервере прописать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 11:34 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
Ну может кто-нибудь подкинет ссылку на DB2 v.8.2 по этому вопросу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 11:44 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
Можешь выложить explain информацию? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 11:49 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
DB2 Universal Database Version 8.1, 5622-044 (c) Copyright IBM Corp. 1991, 2002 Licensed Material - Program Property of IBM IBM DB2 Universal Database SQL Explain Tool ******************** DYNAMIC *************************************** ==================== STATEMENT ========================================== Isolation Level = Cursor Stability Blocking = Block Unambiguous Cursors Query Optimization Class = 5 Partition Parallel = No Intra-Partition Parallel = Yes (Bind Degree = ANY ) SQL Path = "SYSIBM", "SYSFUN", "SYSPROC", "DBADMIN" SQL Statement: select b.tovar_id, sum(b.tovar_mov) as kolich from dbadmin.strings b, dbadmin.document c where b.doc_id =c.id and c.class_name =43 and b.acpt =0 and c.shop_id =5 group by b.tovar_id Intra-Partition Parallelism Degree = 4 Section Code Page = 1251 Estimated Cost = 22074.199219 Estimated Cardinality = 3279.986084 Process Using 4 Subagents | Access Table Name = DBADMIN.DOCUMENT ID = 5,7 | | Index Scan: Name = DBADMIN.IND51_DOC ID = 15 | | | Regular Index (Not Clustered) | | | Index Columns: | | | | 1: CLASS_NAME (Ascending) | | | | 2: SHOP_ID (Ascending) | | #Columns = 0 | | Parallel Scan | | #Key Columns = 2 | | | Start Key: Inclusive Value | | | | | 1: 43 | | | | | 2: 5 | | | Stop Key: Inclusive Value | | | | | 1: 43 | | | | | 2: 5 | | Index-Only Access | | Index Prefetch: None | | Isolation Level: Uncommitted Read | | Lock Intents | | | Table: Intent None | | | Row : None | | Sargable Index Predicate(s) | | | Insert Into Sorted Shared Temp Table ID = t1 | | | | #Columns = 1 | | | | #Sort Key Columns = 1 | | | | | Key 1: (Ascending) | | | | Use Partitioned Sort | | | | Sortheap Allocation Parameters: | | | | | #Rows = 1543 | | | | | Row Width = 12 | | | | Piped | | | | Duplicate Elimination | Sorted Shared Temp Table Completion ID = t1 | List Prefetch Preparation | | Access Table Name = DBADMIN.DOCUMENT ID = 5,7 | | | #Columns = 1 | | | Fetch Using Prefetched List | | | | Prefetch: 311 Pages | | | Lock Intents | | | | Table: Intent Share | | | | Row : Next Key Share | | | Sargable Predicate(s) | | | | #Predicates = 2 | | | | Process Build Table for Hash Join | Hash Join | | Early Out: Single Match Per Outer Row | | Estimated Build Size: 41270 | | Estimated Probe Size: 138206032 | | Bit Filter Size: 1524 | | Access Table Name = DBADMIN.STRINGS ID = 5,12 | | | #Columns = 3 | | | Volatile Cardinality | | | Parallel Scan | | | Relation Scan | | | | Prefetch: Eligible | | | Lock Intents | | | | Table: Intent Share | | | | Row : Next Key Share | | | Sargable Predicate(s) | | | | #Predicates = 1 | | | | Process Probe Table for Hash Join | Insert Into Sorted Temp Table ID = t2 | | #Columns = 2 | | #Sort Key Columns = 1 | | | Key 1: TOVAR_ID (Ascending) | | Sortheap Allocation Parameters: | | | #Rows = 3280 | | | Row Width = 24 | | Piped | Access Temp Table ID = t2 | | #Columns = 2 | | Relation Scan | | | Prefetch: Eligible | | Sargable Predicate(s) | | | Partial Predicate Aggregation | | | | Group By | | | | Column Function(s) | Partial Aggregation Completion | | Group By | | Column Function(s) | Insert Into Asynchronous Local Table Queue ID = q1 Access Local Table Queue ID = q1 #Columns = 3 | Output Sorted | | #Key Columns = 1 | | | Key 1: (Ascending) Final Aggregation | Group By | Column Function(s) Return Data to Application | #Columns = 2 End of section ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 12:09 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
Прошу прощения. Можно в несколько другом виде? db2 set current snapshot yes db2 set current explain mode yes db2 "query" db2exfmt -d db_name -w -1 -n % -s % -# 0 -o c:\out.txt ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 12:46 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
что-то я не найду команд db2 set current snapshot yes db2 set current explain mode yes он на них ругается ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 12:57 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
Ну да, пропустил словечко... db2 "set current explain snapshot yes" db2 "set current explain mode yes" db2 "query" db2exfmt -d db_name -w -1 -n % -s % -# 0 -o /tmp/out.txt ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 13:48 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
вАХ! DB2 Universal Database Version 8.1, 5622-044 (c) Copyright IBM Corp. 1991, 2002 Licensed Material - Program Property of IBM IBM DATABASE 2 Explain Table Format Tool ******************** EXPLAIN INSTANCE ******************** DB2_VERSION: 08.02.2 SOURCE_NAME: SYSSH200 SOURCE_SCHEMA: NULLID SOURCE_VERSION: EXPLAIN_TIME: 2007-11-22-14.17.52.765001 EXPLAIN_REQUESTER: DBADMIN Database Context: ---------------- Parallelism: Intra-Partition Parallelism CPU Speed: 2.361721e-007 Comm Speed: 0 Buffer Pool size: 115000 Sort Heap size: 512 Database Heap size: 8192 Lock List size: 2048 Maximum Lock List: 80 Average Applications: 5 Locks Available: 167116 Package Context: --------------- SQL Type: Dynamic Optimization Level: 5 Blocking: Block All Cursors Isolation Level: Cursor Stability ---------------- STATEMENT 1 SECTION 65 ---------------- QUERYNO: 114576 QUERYTAG: Statement Type: Select Updatable: No Deletable: No Query Degree: -1 Original Statement: ------------------ select b . tovar_id , sum (b . TOVAR_MOV) as vozvrat from DBADMIN . STRINGS b , DBADMIN . DOCUMENT c where b . doc_id = c . id and c . class_name = 43 and b . acpt = 0 and c . shop_id = 5 group by b . tovar_id Optimized Statement: ------------------- SELECT Q4.$C0 AS "TOVAR_ID", Q4.$C1 AS "VOZVRAT" FROM (SELECT Q3.$C0, SUM(Q3.$C1) FROM (SELECT Q2.TOVAR_ID, Q2.TOVAR_MOV FROM DBADMIN.DOCUMENT AS Q1, DBADMIN.STRINGS AS Q2 WHERE (Q1.shop_id = 5) AND (Q2.acpt = 0) AND (Q1.CLASS_NAME = 43) AND (Q2.doc_id = Q1.ID)) AS Q3 GROUP BY Q3.$C0) AS Q4 Access Plan: ----------- Total Cost: 22074.2 Query Degree: 4 Rows RETURN ( 1) Cost I/O | 3279.99 GRPBY ( 2) 22073.9 56810.4 | 3279.99 LMTQ ( 3) 22073.7 56810.4 | 3279.99 GRPBY ( 4) 22072.8 56810.4 | 3279.99 TBSCAN ( 5) 22072.6 56810.4 | 3279.99 SORT ( 6) 22072.5 56810.4 | 3279.99 HSJOIN ( 7) 22070.9 56810.4 /-------+------\ 3.43087e+006 1542.05 TBSCAN FETCH ( 8) ( 9) 21781.3 110.301 56496 314.381 | /----+---\ 6.86173e+006 1542.05 1.61298e+006 TABLE: DBADMIN RIDSCN TABLE: DBADMIN STRINGS ( 10) DOCUMENT 6.10407 1 | 1542.05 SORT ( 11) 6.10377 1 | 1542.05 IXSCAN ( 12) 5.67637 1 | 1.61298e+006 INDEX: DBADMIN IND51_DOC Extended Diagnostic Information: -------------------------------- Diagnostic tables do no exist. No extended Diagnostic Information is available. Plan Details: ------------- 1) RETURN: (Return Result) Cumulative Total Cost: 22074.2 Cumulative CPU Cost: 1.58617e+010 Cumulative I/O Cost: 56810.4 Cumulative Re-Total Cost: 22071.8 Cumulative Re-CPU Cost: 1.58517e+010 Cumulative Re-I/O Cost: 0 Cumulative First Row Cost: 22072.5 Estimated Bufferpool Buffers: 0 Arguments: --------- BLDLEVEL: (Build level) DB2 v8.1.9.700 : s050422 STMTHEAP: (Statement heap size) 8192 Input Streams: ------------- 14) From Operator #2 Estimated number of rows: 3279.99 Number of columns: 2 Subquery predicate ID: Not Applicable Column Names: ------------ +Q5.VOZVRAT+Q5.TOVAR_ID 2) GRPBY : (Group By) Cumulative Total Cost: 22073.9 Cumulative CPU Cost: 1.58603e+010 Cumulative I/O Cost: 56810.4 Cumulative Re-Total Cost: 22071.5 Cumulative Re-CPU Cost: 1.58502e+010 Cumulative Re-I/O Cost: 0 Cumulative First Row Cost: 22072.5 Estimated Bufferpool Buffers: 0 Arguments: --------- AGGMODE : (Aggregration Mode) FINAL GROUPBYC: (Group By columns) TRUE GROUPBYN: (Number of Group By columns) 1 GROUPBYR: (Group By requirement) 1: Q3.TOVAR_ID ONEFETCH: (One Fetch flag) FALSE Input Streams: ------------- 13) From Operator #3 Estimated number of rows: 3279.99 Number of columns: 2 Subquery predicate ID: Not Applicable Column Names: ------------ +Q3.TOVAR_ID(A)+Q3.TOVAR_MOV Output Streams: -------------- 14) To Operator #1 Estimated number of rows: 3279.99 Number of columns: 2 Subquery predicate ID: Not Applicable Column Names: ------------ +Q5.VOZVRAT+Q5.TOVAR_ID 3) TQ : (Table Queue) Cumulative Total Cost: 22073.7 Cumulative CPU Cost: 1.58594e+010 Cumulative I/O Cost: 56810.4 Cumulative Re-Total Cost: 22071.3 Cumulative Re-CPU Cost: 1.58494e+010 Cumulative Re-I/O Cost: 0 Cumulative First Row Cost: 22072.5 Estimated Bufferpool Buffers: 0 Arguments: --------- LISTENER: (Listener Table Queue type) FALSE SORTKEY : (Sort Key column) 1: Q3.TOVAR_ID(A) TQ TYPE : (Table queue type) LOCAL TQDEGREE: (Degree of Intra-Partition parallelism) 4 TQMERGE : (Merging Table Queue flag) TRUE TQREAD : (Table Queue Read type) READ AHEAD UNIQUE : (Uniqueness required flag) FALSE Input Streams: ------------- 12) From Operator #4 Estimated number of rows: 3279.99 Number of columns: 2 Subquery predicate ID: Not Applicable Column Names: ------------ +Q3.TOVAR_ID(A)+Q3.TOVAR_MOV Output Streams: -------------- 13) To Operator #2 Estimated number of rows: 3279.99 Number of columns: 2 Subquery predicate ID: Not Applicable Column Names: ------------ +Q3.TOVAR_ID(A)+Q3.TOVAR_MOV 4) GRPBY : (Group By) Cumulative Total Cost: 22072.8 Cumulative CPU Cost: 1.5856e+010 Cumulative I/O Cost: 56810.4 Cumulative Re-Total Cost: 22071.3 Cumulative Re-CPU Cost: 1.58494e+010 Cumulative Re-I/O Cost: 0 Cumulative First Row Cost: 22072.5 Estimated Bufferpool Buffers: 0 Arguments: --------- AGGMODE : (Aggregration Mode) PARTIAL GROUPBYC: (Group By columns) TRUE GROUPBYN: (Number of Group By columns) 1 GROUPBYR: (Group By requirement) 1: Q3.TOVAR_ID ONEFETCH: (One Fetch flag) FALSE Input Streams: ------------- 11) From Operator #5 Estimated number of rows: 3279.99 Number of columns: 2 Subquery predicate ID: Not Applicable Column Names: ------------ +Q3.TOVAR_ID(A)+Q3.TOVAR_MOV Output Streams: -------------- 12) To Operator #3 Estimated number of rows: 3279.99 Number of columns: 2 Subquery predicate ID: Not Applicable Column Names: ------------ +Q3.TOVAR_ID(A)+Q3.TOVAR_MOV 5) TBSCAN: (Table Scan) Cumulative Total Cost: 22072.6 Cumulative CPU Cost: 1.58551e+010 Cumulative I/O Cost: 56810.4 Cumulative Re-Total Cost: 22071.1 Cumulative Re-CPU Cost: 1.58486e+010 Cumulative Re-I/O Cost: 0 Cumulative First Row Cost: 22072.5 Estimated Bufferpool Buffers: 0 Arguments: --------- MAXPAGES: (Maximum pages for prefetch) ALL PREFETCH: (Type of Prefetch) NONE SCANDIR : (Scan Direction) FORWARD Input Streams: ------------- 10) From Operator #6 Estimated number of rows: 3279.99 Number of columns: 2 Subquery predicate ID: Not Applicable Column Names: ------------ +Q3.TOVAR_ID(A)+Q3.TOVAR_MOV Output Streams: -------------- 11) To Operator #4 Estimated number of rows: 3279.99 Number of columns: 2 Subquery predicate ID: Not Applicable Column Names: ------------ +Q3.TOVAR_ID(A)+Q3.TOVAR_MOV 6) SORT : (Sort) Cumulative Total Cost: 22072.5 Cumulative CPU Cost: 1.58543e+010 Cumulative I/O Cost: 56810.4 Cumulative Re-Total Cost: 22070.9 Cumulative Re-CPU Cost: 1.58478e+010 Cumulative Re-I/O Cost: 0 Cumulative First Row Cost: 22072.5 Estimated Bufferpool Buffers: 56612.3 Arguments: --------- DUPLWARN: (Duplicates Warning flag) FALSE NUMROWS : (Estimated number of rows) 3280 ROWWIDTH: (Estimated width of rows) 24 SORTKEY : (Sort Key column) 1: Q3.TOVAR_ID(A) TEMPSIZE: (Temporary Table Page Size) 4096 UNIQUE : (Uniqueness required flag) FALSE Input Streams: ------------- 9) From Operator #7 Estimated number of rows: 3279.99 Number of columns: 2 Subquery predicate ID: Not Applicable Column Names: ------------ +Q3.TOVAR_MOV+Q3.TOVAR_ID Output Streams: -------------- 10) To Operator #5 Estimated number of rows: 3279.99 Number of columns: 2 Subquery predicate ID: Not Applicable Column Names: ------------ +Q3.TOVAR_ID(A)+Q3.TOVAR_MOV 7) HSJOIN: (Hash Join) Cumulative Total Cost: 22070.9 Cumulative CPU Cost: 1.58478e+010 Cumulative I/O Cost: 56810.4 Cumulative Re-Total Cost: 22070.9 Cumulative Re-CPU Cost: 1.58478e+010 Cumulative Re-I/O Cost: 56810.4 Cumulative First Row Cost: 22070.9 Estimated Bufferpool Buffers: 56612.3 Arguments: --------- BITFLTR : (Hash Join Bit Filter used) 1524 EARLYOUT: (Early Out flag) LEFT HASHCODE: (Hash Code Size) 24 BIT TEMPSIZE: (Temporary Table Page Size) 32768 Predicates: ---------- 6) Predicate used in Join Relational Operator: Equal (=) Subquery Input Required: No Filter Factor: 6.19969e-007 Predicate Text: -------------- (Q2.doc_id = Q1.ID) Input Streams: ------------- 2) From Operator #8 Estimated number of rows: 3.43087e+006 Number of columns: 3 Subquery predicate ID: Not Applicable Column Names: ------------ +Q2.TOVAR_MOV+Q2.TOVAR_ID+Q2.doc_id 8) From Operator #9 Estimated number of rows: 1542.05 Number of columns: 1 Subquery predicate ID: Not Applicable Column Names: ------------ +Q1.ID Output Streams: -------------- 9) To Operator #6 Estimated number of rows: 3279.99 Number of columns: 2 Subquery predicate ID: Not Applicable Column Names: ------------ +Q3.TOVAR_MOV+Q3.TOVAR_ID 8) TBSCAN: (Table Scan) Cumulative Total Cost: 21781.3 Cumulative CPU Cost: 1.50795e+010 Cumulative I/O Cost: 56496 Cumulative Re-Total Cost: 21781.3 Cumulative Re-CPU Cost: 1.50795e+010 Cumulative Re-I/O Cost: 56496 Cumulative First Row Cost: 5.02457 Estimated Bufferpool Buffers: 56496 Arguments: --------- JN INPUT: (Join input leg) OUTER MAXPAGES: (Maximum pages for prefetch) ALL PREFETCH: (Type of Prefetch) SEQUENTIAL ROWLOCK : (Row Lock intent) NEXT KEY SHARE SCANDIR : (Scan Direction) FORWARD SCANGRAN: (Intra-Partition Parallelism Scan Granularity) 2 SCANTYPE: (Intra-Partition Parallelism Scan Type) LOCAL PARALLEL SCANUNIT: (Intra-Partition Parallelism Scan Unit) PAGE TABLOCK : (Table Lock intent) INTENT SHARE TBISOLVL: (Table access Isolation Level) CURSOR STABILITY VOLATILE: (Volatile type) CARDINALITY Predicates: ---------- 4) Sargable Predicate Relational Operator: Equal (=) Subquery Input Required: No Filter Factor: 0.5 Predicate Text: -------------- (Q2.acpt = 0) Input Streams: ------------- 1) From Object DBADMIN.STRINGS Estimated number of rows: 6.86173e+006 Number of columns: 5 Subquery predicate ID: Not Applicable Column Names: ------------ +Q2.$RID$+Q2.TOVAR_MOV+Q2.TOVAR_ID +Q2.acpt+Q2.doc_id Output Streams: -------------- 2) To Operator #7 Estimated number of rows: 3.43087e+006 Number of columns: 3 Subquery predicate ID: Not Applicable Column Names: ------------ +Q2.TOVAR_MOV+Q2.TOVAR_ID+Q2.doc_id 9) FETCH : (Fetch) Cumulative Total Cost: 110.301 Cumulative CPU Cost: 9.13332e+006 Cumulative I/O Cost: 314.381 Cumulative Re-Total Cost: 1.53062 Cumulative Re-CPU Cost: 6.48093e+006 Cumulative Re-I/O Cost: 0 Cumulative First Row Cost: 11.1163 Estimated Bufferpool Buffers: 116.253 Arguments: --------- JN INPUT: (Join input leg) INNER MAX RIDS: (Maximum RIDs per list prefetch request) 512 MAXPAGES: (Maximum pages for prefetch) 311 PREFETCH: (Type of Prefetch) LIST ROWLOCK : (Row Lock intent) NEXT KEY SHARE TABLOCK : (Table Lock intent) INTENT SHARE TBISOLVL: (Table access Isolation Level) CURSOR STABILITY Predicates: ---------- 3) Sargable Predicate Relational Operator: Equal (=) Subquery Input Required: No Filter Factor: 0.0294118 Predicate Text: -------------- (Q1.shop_id = 5) 5) Sargable Predicate Relational Operator: Equal (=) Subquery Input Required: No Filter Factor: 0.0117647 Predicate Text: -------------- (Q1.CLASS_NAME = 43) Input Streams: ------------- 6) From Operator #10 Estimated number of rows: 1542.05 Number of columns: 1 Subquery predicate ID: Not Applicable Column Names: ------------ +Q1.$RID$(A) 7) From Object DBADMIN.DOCUMENT Estimated number of rows: 1.61298e+006 Number of columns: 3 Subquery predicate ID: Not Applicable Column Names: ------------ +Q1.shop_id+Q1.CLASS_NAME+Q1.ID Output Streams: -------------- 8) To Operator #7 Estimated number of rows: 1542.05 Number of columns: 1 Subquery predicate ID: Not Applicable Column Names: ------------ +Q1.ID 10) RIDSCN: (Row Identifier Scan) Cumulative Total Cost: 6.10407 Cumulative CPU Cost: 4.63251e+006 Cumulative I/O Cost: 1 Cumulative Re-Total Cost: 0.747395 Cumulative Re-CPU Cost: 3.16462e+006 Cumulative Re-I/O Cost: 0 Cumulative First Row Cost: 6.10377 Estimated Bufferpool Buffers: 2 Arguments: --------- NUMROWS : (Estimated number of rows) 1543 Input Streams: ------------- 5) From Operator #11 Estimated number of rows: 1542.05 Number of columns: 1 Subquery predicate ID: Not Applicable Column Names: ------------ +Q1.$RID$(A) Output Streams: -------------- 6) To Operator #9 Estimated number of rows: 1542.05 Number of columns: 1 Subquery predicate ID: Not Applicable Column Names: ------------ +Q1.$RID$(A) 11) SORT : (Sort) Cumulative Total Cost: 6.10377 Cumulative CPU Cost: 4.63122e+006 Cumulative I/O Cost: 1 Cumulative Re-Total Cost: 0.655985 Cumulative Re-CPU Cost: 2.77757e+006 Cumulative Re-I/O Cost: 0 Cumulative First Row Cost: 6.10377 Estimated Bufferpool Buffers: 2 Arguments: --------- DUPLWARN: (Duplicates Warning flag) TRUE NUMROWS : (Estimated number of rows) 1543 PARTCOLS: (Table partitioning columns) 1: Q1.$RID$ ROWWIDTH: (Estimated width of rows) 12 SORTKEY : (Sort Key column) 1: Q1.$RID$(A) SORTTYPE: (Intra-Partition parallelism sort type) PARTITIONED TEMPSIZE: (Temporary Table Page Size) 4096 UNIQUE : (Uniqueness required flag) TRUE Input Streams: ------------- 4) From Operator #12 Estimated number of rows: 1542.05 Number of columns: 0 Subquery predicate ID: Not Applicable Output Streams: -------------- 5) To Operator #10 Estimated number of rows: 1542.05 Number of columns: 1 Subquery predicate ID: Not Applicable Column Names: ------------ +Q1.$RID$(A) 12) IXSCAN: (Index Scan) Cumulative Total Cost: 5.67637 Cumulative CPU Cost: 2.82153e+006 Cumulative I/O Cost: 1 Cumulative Re-Total Cost: 0.655985 Cumulative Re-CPU Cost: 2.77757e+006 Cumulative Re-I/O Cost: 0 Cumulative First Row Cost: 5.0496 Estimated Bufferpool Buffers: 2 Arguments: --------- MAXPAGES: (Maximum pages for prefetch) 1 PREFETCH: (Type of Prefetch) NONE ROWLOCK : (Row Lock intent) NONE SCANDIR : (Scan Direction) FORWARD SCANGRAN: (Intra-Partition Parallelism Scan Granularity) 38 SCANTYPE: (Intra-Partition Parallelism Scan Type) LOCAL PARALLEL SCANUNIT: (Intra-Partition Parallelism Scan Unit) ROW TABLOCK : (Table Lock intent) INTENT NONE Predicates: ---------- 3) Start Key Predicate Relational Operator: Equal (=) Subquery Input Required: No Filter Factor: 0.0294118 Predicate Text: -------------- (Q1.shop_id = 5) 3) Stop Key Predicate Relational Operator: Equal (=) Subquery Input Required: No Filter Factor: 0.0294118 Predicate Text: -------------- (Q1.shop_id = 5) 5) Start Key Predicate Relational Operator: Equal (=) Subquery Input Required: No Filter Factor: 0.0117647 Predicate Text: -------------- (Q1.CLASS_NAME = 43) 5) Stop Key Predicate Relational Operator: Equal (=) Subquery Input Required: No Filter Factor: 0.0117647 Predicate Text: -------------- (Q1.CLASS_NAME = 43) Input Streams: ------------- 3) From Object DBADMIN.IND51_DOK_MAG Estimated number of rows: 1.61298e+006 Number of columns: 3 Subquery predicate ID: Not Applicable Column Names: ------------ +Q1.$RID$+Q1.shop_id+Q1.CLASS_NAME Output Streams: -------------- 4) To Operator #11 Estimated number of rows: 1542.05 Number of columns: 0 Subquery predicate ID: Not Applicable Objects Used in Access Plan: --------------------------- Schema: DBADMIN Name: IND51_DOK_MAG Type: Index Time of creation: 2007-11-21-15.40.00.875001 Last statistics update: 2007-11-22-00.01.09.375000 Number of columns: 2 Number of rows: 1612983 Width of rows: -1 Number of buffer pool pages: 10576 Distinct row values: No Tablespace name: TOWDOC Tablespace overhead: 5.000000 Tablespace transfer rate: 0.010000 Source for statistics: Single Node Prefetch page count: 16 Container extent page count: 16 Index clustering statistic: 0.791274 Index leaf pages: 602 Index tree levels: 2 Index full key cardinality: 1046 Index first key cardinality: 85 Index first 2 keys cardinality: 1046 Index first 3 keys cardinality: -1 Index first 4 keys cardinality: -1 Index sequential pages: 599 Index page density: 95 Index avg sequential pages: 599 Index avg gap between sequences:0 Index avg random pages: 2 Fetch avg sequential pages: -1 Fetch avg gap between sequences:-1 Fetch avg random pages: -1 Index RID count: 1614133 Index deleted RID count: 1150 Index empty leaf pages: 0 Base Table Schema: DBADMIN Base Table Name: DOCUMENT Columns in index: CLASS_NAME shop_id Schema: DBADMIN Name: DOCUMENT Type: Table Time of creation: 2005-03-02-19.32.17.859001 Last statistics update: 2007-11-22-00.01.09.375000 Number of columns: 11 Number of rows: 1612983 Width of rows: 36 Number of buffer pool pages: 10576 Distinct row values: No Tablespace name: TOWDOC Tablespace overhead: 5.000000 Tablespace transfer rate: 0.010000 Source for statistics: Single Node Prefetch page count: 16 Container extent page count: 16 Table overflow record count: 0 Table Active Blocks: -1 Schema: DBADMIN Name: STRINGS Type: Table Time of creation: 2005-03-02-19.33.29.062001 Last statistics update: 2007-11-22-00.19.03.531000 Number of columns: 14 Number of rows: 6861731 Width of rows: 41 Number of buffer pool pages: 56496 Distinct row values: No Tablespace name: TOWDOC Tablespace overhead: 5.000000 Tablespace transfer rate: 0.010000 Source for statistics: Single Node Prefetch page count: 16 Container extent page count: 16 Table overflow record count: 0 Table Active Blocks: -1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 14:12 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
Mark, вставил MQT, естественно все ускорилось... В новой таблице всего:) 9000 записей... Народ! А насколько оно вообще оправданно(использование MQT)? Допустим у меня таблицы обновляются по репликации... Теоретически можно понаделать на некоторые запросы MQT. Насколько сильно они влияют на скорость редактирования таблиц? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 14:53 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
TORTMark, вставил MQT, естественно все ускорилось... В новой таблице всего:) 9000 записей... Народ! А насколько оно вообще оправданно(использование MQT)? Допустим у меня таблицы обновляются по репликации... Теоретически можно понаделать на некоторые запросы MQT. Насколько сильно они влияют на скорость редактирования таблиц?Все зависит от конкретного случая. Вам надо проверить планы запросов и время выполнения операций изменения основных таблиц. Если устраивает - пользуйтесь refresh immediate mqt. Если нет, в вашем случае можете использовать refresh deferred mqt со staging таблицами. Изменения в базовых таблицах будут накапливаться в этих staging таблицах. Соотв. изменения в такой mqt (должна удовлетворять требованиям refresh immediate mqt) не будут производиться мгновенно, а только при refresh table. Этот подход дает следующие преимущества: - работа с базовыми таблицами не сильно замедляется. - refresh table будет гораздо легче, чем для обычной refresh deferred mqt. Минус в том, что информация будет не совсем свежей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 15:33 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
Да уж.... В моих случаях требуются только refresh immediate Специфика такая.... Ну да ладно... Буду в дальнейшем оптимистичнее смотреть на этот вариант... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 15:42 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
TORTДа уж.... В моих случаях требуются только refresh immediateДелайте перед запуском вашего запроса refresh table. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 16:00 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
Уважаемый, TORT. Вы писали, что на уровнях 0 и 1 запрос выполняется на порядок быстрее... Можете ли Вы, интереса моего ради, дать explain для одного из этих случаев тоже? =) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 16:03 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
Hunterik, есть мысль какая-нибудь? Поделитесь, если не трудно... Просто я уже добавил summary table, и в план теперь попадает она... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 16:08 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
Mark Barinstein, беда вся в том, что таких запросов происходит сотня в минуту... Я аж сам не поверил сначала... Тоже мне игла смерти в кощее... тьфу ты(пардон), в системе имел ввиду... Refresh тогда наверно негативно скажется... Или я ошибаюсь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 16:10 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
Вот еще чего... MQT же вроде нельзя реорганизовывать? Или можно? Или при refresh table ... not incremental как раз и происходит реорганизация? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 16:12 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
Hunterik, при уровнях 0 или 1 запрос выполнялся все же медленне, чем через MQT. В план запроса попадал индекс по doc_id. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 16:14 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
TORTMark Barinstein, беда вся в том, что таких запросов происходит сотня в минутуУ вас 100/мин. аггрегирующих запросов на такие таблицы в 1.5 и 6 млн. записей? И при этом базовые таблицы еще и модифицируются? TORTВот еще чего... MQT же вроде нельзя реорганизовывать? Или можно? Или при refresh table ... not incremental как раз и происходит реорганизация?mqt можно реорганизовывать. TORTпри уровнях 0 или 1 запрос выполнялся все же медленне, чем через MQT. В план запроса попадал индекс по doc_idМожно делать так: Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 16:36 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
Mark Barinstein, ну да... Полнейший OLTP+BI ) И выдерживает....:) Вот только иногда слабые места выявляются:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 17:21 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
Вот чего... В результате работы данные в MQT могут и удаляться, и изменяться, и добавляться... С точки зрения реорганизации проблемы могут какие-нибудь возникнуть? Или своевременная реорганизация + runstat = есть лекарство. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 17:23 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
TORTMark Barinstein, ну да... Полнейший OLTP+BI ) И выдерживает....:) Вот только иногда слабые места выявляются:)Это ненадолго... Обслуживание mqt ничем не отличается от обычной таблицы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 18:16 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
Mark Barinstein, что есть "ненадолго"? Поясните, пожалуйста... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 18:31 |
|
||
|
Подскажите с оптимизацией.....
|
|||
|---|---|---|---|
|
#18+
TORTMark Barinstein, что есть "ненадолго"? Поясните, пожалуйста...Как правило скрещивать подобные oltp+dwh системы с высокой нагрузкой получается, пока объем данных / кол-во пользователей относительно невелик. Ваша система будет реагировать на запросы все медленнее и медленнее, а взгляды пользователей в вашу сторону - все мрачнее. :) Пока вас там пользователи не начали пинать еще, начинайте либо разносить oltp и dwh по разным базам, либо приучать пользователей, что им необязательно иметь самые свежие агрегаты именно на данный момент. Хотя, если система не растет особо и не будет, и вас все устраивает более или менее, то, может, и не надо заморачиваться... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.11.2007, 18:58 |
|
||
|
|

start [/forum/topic.php?fid=43&msg=34959060&tid=1604189]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
69ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
86ms |
get tp. blocked users: |
2ms |
| others: | 248ms |
| total: | 453ms |

| 0 / 0 |
