Which consistent get for which block
Hello Experts,
I have conducted an experiment at SQL*PLUS. I created a small table with 100 rows and then create an ununique index on the id column.
SQL> alter system flush shared_pool;
Sistem dei■tirildi.
SQL> create table small as
2 select rownum id, 'BOWIE' name from dual connect by level <= 100;
SQL> create index small_id_i on small(id);
SQL> alter session set tracefile_identifier = '100114_deneme2';
Oturum dei■tirildi.
SQL> exec dbms_monitor.session_trace_enable(waits => true);
PL/SQL yordam² ba■ar²yla tamamland².
SQL> select * from small where id = 44;
ID NAME
44 BOWIE
SQL> exec dbms_monitor.session_trace_disable;
PL/SQL yordam² ba■ar²yla tamamland².
After executed the above, I looked the trace file. The following excerpt was taken from end of the trace file.
=====================
PARSING IN CURSOR #4 len=210 dep=1 uid=0 oct=3 lid=0 tim=7391216619 hv=864012087 ad='7ff5f8385a8' sqlid='96g93hntrzjtr'
select /*+ rule */ bucket_cnt, row_cnt, cache_cnt, null_cnt, timestamp#, sample_size, minimum, maximum, distcnt, lowval, hival, density, col#, spare1, spare2, avgcln from hist_head$ where obj#=:1 and intcol#=:2
END OF STMT
EXEC #4:c=0,e=19,p=0,cr=0,cu=0,mis=0,r=0,dep=1,og=3,plh=2239883476,tim=7391216618
FETCH #4:c=0,e=10,p=0,cr=2,cu=0,mis=0,r=0,dep=1,og=3,plh=2239883476,tim=7391216713
CLOSE #4:c=0,e=2,dep=1,type=3,tim=7391216749
=====================
PARSING IN CURSOR #5 len=33 dep=0 uid=85 oct=3 lid=85 tim=7391217024 hv=1889534919 ad='7ff5f503f40' sqlid='c97q0gdsa00y7'
select * from small where id = 44
END OF STMT
PARSE #5:c=46800,e=121273,p=0,cr=52,cu=0,mis=1,r=0,dep=0,og=1,plh=1841720936,tim=7391217023
EXEC #5:c=0,e=17,p=0,cr=0,cu=0,mis=0,r=0,dep=0,og=1,plh=1841720936,tim=7391217119
WAIT #5: nam='SQL*Net message to client' ela= 1 driver id=1111838976 #bytes=1 p3=0 obj#=-1 tim=7391217185
FETCH #5:c=0,e=21,p=0,cr=2,cu=0,mis=0,r=1,dep=0,og=1,plh=1841720936,tim=7391217243
WAIT #5: nam='SQL*Net message from client' ela= 304 driver id=1111838976 #bytes=1 p3=0 obj#=-1 tim=7391217590
FETCH #5:c=0,e=13,p=0,cr=1,cu=0,mis=0,r=0,dep=0,og=1,plh=1841720936,tim=7391217673
STAT #5 id=1 cnt=1 pid=0 pos=1 obj=76014 op='TABLE ACCESS BY INDEX ROWID SMALL (cr=3 pr=0 pw=0 time=0 us cost=2 size=20 card=1)'
STAT #5 id=2 cnt=1 pid=1 pos=1 obj=76015 op='INDEX RANGE SCAN SMALL_ID_I (cr=2 pr=0 pw=0 time=0 us cost=1 size=0 card=1)'
WAIT #5: nam='SQL*Net message to client' ela= 1 driver id=1111838976 #bytes=1 p3=0 obj#=-1 tim=7391217792
*** 2014-01-10 15:10:36.712
WAIT #5: nam='SQL*Net message from client' ela= 23061079 driver id=1111838976 #bytes=1 p3=0 obj#=-1 tim=7414278895
CLOSE #5:c=0,e=27,dep=0,type=0,tim=7414279115
=====================
PARSING IN CURSOR #1 len=48 dep=0 uid=85 oct=47 lid=85 tim=7414281226 hv=3585424577 ad='7ff5f6ea810' sqlid='fypj2tgavag61'
BEGIN dbms_monitor.session_trace_disable; END;
END OF STMT
PARSE #1:c=15600,e=2045,p=0,cr=0,cu=0,mis=1,r=0,dep=0,og=1,plh=0,tim=7414281224
EXEC #1:c=0,e=1052,p=0,cr=0,cu=0,mis=0,r=1,dep=0,og=1,plh=0,tim=7414282442
My question is; Although this is very small table, I created an index. As you can see there are 3 consistent gets arise (cr=3). There is no doubt that the first consistent get happen on leaf block and the other on the table block. However, Does the third consistent get happen on which block?
In my opinion, The last consistent get should be on table block. Becacuse, according to the following thread (https://community.oracle.com/message/10711767). As far as I know from Solomon, there is fetch and there is prefetch. SQL*PLUS is written in OCI and in OCI prefetch defaults to 1. So, if you issue a query on SQL*PLUS and if this query returns one or more rows the first fetch and the second fetch should be on the same table block.
Also, can't we say that the last cr happen on table block by looking explain plan? Because, as it can be seen, cr was icreamented when table access by index rowid small line.
STAT #5 id=1 cnt=1 pid=0 pos=1 obj=76014 op='TABLE ACCESS BY INDEX ROWID SMALL (cr=3 pr=0 pw=0 time=0 us cost=2 size=20 card=1)'
STAT #5 id=2 cnt=1 pid=1 pos=1 obj=76015 op='INDEX RANGE SCAN SMALL_ID_I (cr=2 pr=0 pw=0 time=0 us cost=1 size=0 card=1)'
My second question, What can we do in order to understand which consistent get happen on which block (file# block# etc.)? Can't we understand by looking the trace file?
My third question is, before issue the select query on table. I flushed the shared pool. Does it make the parse 52 cr (Because of recursive calls)???
PARSE #5:c=46800,e=121273,p=0,cr=52,cu=0,mis=1,r=0,dep=0,og=1,plh=1841720936,tim=7391217023
I also trace 10200 event, if you want I also can show 10200 trace file. I didn't show it because I don't know how to read 10200 trace event.
Thanks in advance.
For example following 10200 trace event arised by select * from small where id = 42;
*** 2014-01-10 14:56:58.492
*** SESSION ID:(135.468) 2014-01-10 14:56:58.492
*** CLIENT ID:() 2014-01-10 14:56:58.492
*** SERVICE NAME:(SYS$USERS) 2014-01-10 14:56:58.492
*** MODULE NAME:(SQL*Plus) 2014-01-10 14:56:58.492
*** ACTION NAME:() 2014-01-10 14:56:58.492
ktrget2(): started for block <0x0004 : 0x010006bb> objd: 0x000128ee
env: (scn: 0x0000.004d5549 xid: 0x0000.000.00000000 uba: 0x00000000.0000.00 statement num=0 parent xid: xid: 0x0000.000.00000000 scn: 0x0000.00000000 97sch: scn: 0x0000.00000000 mascn: (scn: 0x0000.004d550c)
ktrexf(): returning 9 on: 0000000021DD1524 scn: 0xffff.ffffffff xid: 0x0000.000.00000000 uba: 0x00000000.0000.00 scn: 0xffff.ffffffff sfl: 0
ktrgcm(): completed for block <0x0004 : 0x010006bb> objd: 0x000128ee
ktrget2(): completed for block <0x0004 : 0x010006bb> objd: 0x000128ee
ktrgtc2(): started for block <0x0004 : 0x010006c3> objd: 0x000128ef
env: (scn: 0x0000.004d5549 xid: 0x0000.000.00000000 uba: 0x00000000.0000.00 statement num=0 parent xid: xid: 0x0000.000.00000000 scn: 0x0000.00000000 97sch: scn: 0x0000.00000000 mascn: (scn: 0x0000.004d550c)
ktrexc(): returning 8 on: 0000000021DD1524 scn: 0xffff.ffffffff xid: 0x0000.000.00000000 uba: 0x00000000.0000.00 scn: 0xffff.ffffffff sfl: 0
ktrgtc2(): completed for block <0x0004 : 0x010006c3> objd: 0x000128ef
ktrgtc2(): started for block <0x0000 : 0x00400b49> objd: 0x000001aa
env: (scn: 0x0000.004d5549 xid: 0x0000.000.00000000 uba: 0x00000000.0000.00 statement num=0 parent xid: xid: 0x0000.000.00000000 scn: 0x0000.00000000 96sch: scn: 0x0000.00000000 mascn: (scn: 0x0000.004d550c)
ktrexc(): returning 2 on: 0000000021DD1524 scn: 0xffff.ffffffff xid: 0x0000.000.00000000 uba: 0x00000000.0000.00 scn: 0xffff.ffffffff sfl: 0
ktrgtc2(): completed for block <0x0000 : 0x00400b49> objd: 0x000001aa
ktrget2(): started for block <0x0000 : 0x00415c82> objd: 0x000001aa
env: (scn: 0x0000.004d5549 xid: 0x0000.000.00000000 uba: 0x00000000.0000.00 statement num=0 parent xid: xid: 0x0000.000.00000000 scn: 0x0000.00000000 96sch: scn: 0x0000.00000000 mascn: (scn: 0x0000.004d550c)
ktrexf(): returning 9 on: 0000000021DD1524 scn: 0xffff.ffffffff xid: 0x0000.000.00000000 uba: 0x00000000.0000.00 scn: 0xffff.ffffffff sfl: 0
ktrgcm(): completed for block <0x0000 : 0x00415c82> objd: 0x000001aa
ktrget2(): completed for block <0x0000 : 0x00415c82> objd: 0x000001aa
ktrgtc2(): started for block <0x0004 : 0x010006c3> objd: 0x000128ef
env: (scn: 0x0000.004d5549 xid: 0x0000.000.00000000 uba: 0x00000000.0000.00 statement num=0 parent xid: xid: 0x0000.000.00000000 scn: 0x0000.00000000 97sch: scn: 0x0000.00000000 mascn: (scn: 0x0000.004d550c)
ktrexc(): returning 8 on: 0000000021DD1524 scn: 0xffff.ffffffff xid: 0x0000.000.00000000 uba: 0x00000000.0000.00 scn: 0xffff.ffffffff sfl: 0
ktrgtc2(): completed for block <0x0004 : 0x010006c3> objd: 0x000128ef
ktrget2(): started for block <0x0004 : 0x010006bb> objd: 0x000128ee
env: (scn: 0x0000.004d5549 xid: 0x0000.000.00000000 uba: 0x00000000.0000.00 statement num=0 parent xid: xid: 0x0000.000.00000000 scn: 0x0000.00000000 97sch: scn: 0x0000.00000000 mascn: (scn: 0x0000.004d550c)
ktrexf(): returning 9 on: 0000000021DD1524 scn: 0xffff.ffffffff xid: 0x0000.000.00000000 uba: 0x00000000.0000.00 scn: 0xffff.ffffffff sfl: 0
ktrgcm(): completed for block <0x0004 : 0x010006bb> objd: 0x000128ee
ktrget2(): completed for block <0x0004 : 0x010006bb> objd: 0x000128ee
ktrget2(): started for block <0x0004 : 0x010006c3> objd: 0x000128ef
env: (scn: 0x0000.004d5549 xid: 0x0000.000.00000000 uba: 0x00000000.0000.00 statement num=0 parent xid: xid: 0x0000.000.00000000 scn: 0x0000.00000000 96sch: scn: 0x0000.00000000 mascn: (scn: 0x0000.004d550c)
ktrexf(): returning 9 on: 0000000021DD1524 scn: 0xffff.ffffffff xid: 0x0000.000.00000000 uba: 0x00000000.0000.00 scn: 0xffff.ffffffff sfl: 0
ktrgcm(): completed for block <0x0004 : 0x010006c3> objd: 0x000128ef
ktrget2(): completed for block <0x0004 : 0x010006c3> objd: 0x000128ef
Similar Messages
-
Consistent gets and db block gets
Hi...
I wanted to know the difference between consistent gets and db block gets in v$sess_io.I have read that consistent gets is the blocks in consistent mode..so here what does consistent mode means????
Thanks in Advance,
AnandHere's the complete text of the answer I originally wrote nearly 5 years ago on the Oracle-L mailing list:
A 'db block get' is a current mode get. That is, it's the most up-to-date copy of the data in that block, as it is right now, or currently. There can only be one current copy of a block in the buffer cache at any time. Db block gets generally are used when DML changes data in the database. In that case, row-level locks are implicitly taken on the updated rows. There is also at least one well-known case where a select statement does a db block get, and does not take a lock. That is, when it does a full table scan or fast full index scan, Oracle will read the segment header in current mode (multiple times, the number varies based on Oracle version).
A 'consistent get' is when Oracle gets the data in a block which is consistent with a given point in time, or SCN. The consistent get is at the heart of Oracle's read consistency mechanism. When blocks are fetched in order to satisfy a query result set, they are fetched in consistent mode. If no block in the buffer cache is consistent to the correct point in time, Oracle will (attempt to) reconstruct that block using the information in the rollback segments. If it fails to do so, that's when a query errors out with the much dreaded, much feared, and much misunderstood ORA-1555 "snapshot too old".
As to latching, and how it relates, well, consider that the block buffers are in the SGA, which is shared memory. To avoid corruption, latches are used to serialize access to many linked lists and data structures that point to the buffers as well as the buffers themselves. It is safe to say that each consistent get introduces serialization to the system, and by tuning SQL to use more efficient access paths, you can get the same answer to the same query but do less consistent gets. This not only consumes less CPU, it also can significantly reduce latching which reduces serialization and makes your system more scalable.
Well, that turned out longer than I planned. If you're still reading, I hope it helped!
Hope that helps,
-Mark
PS The original question asked about latching as well, which explains the reason for the third paragraph.
Edited by: mbobak on Sep 2, 2008 11:07 PM -
Which power supply for which switch
have 2 different switchs with 2 different power supplys.
EZXS88W v3 andEZXS16W v2.1 - i have a 9v and a 12v linksys power brick both @1000mha. which one goes to which?
i also have a BEFSR81 v3 - with no powersupply. can anyone linkme to a GOOD seller on ebay or amazon for one please?EZXS88W power specs is 5V 6A, 3 PRONG and 100~240V.
EZXS16W v2.1 Power specs is 12V 1000MA, BIG BARREL and 120VAC.
BEFSR81 v3 Power specs is 12VDC 1000ma, BIG BARREL and 120VAC.
This are the specs for the power adapter for this devices. You will find this power adapter on any of the stores, or else you get a Universal Power Adapter which is compatible with all the Router and the Electronic Device. Just you need to adjust the power as per your Routers power specs. -
Which HDD interface for which drives?
Hello,
I have read Harm's and others' excellent advice on drive configuration, but am not sure about which drives to put on which interfaces. Assuming an X99 motherboard has 2 M.2 PCIE sockets, 1 SATA Express port, 1 SATA Express controller with 1 port, 8 SATA 6 GBs, and possibly a PCT RAID card. Which of these connectors would you use for which drive, and why? (I suppose another way to ask this might be which hdd uses benefit the most from increased speed--OS, application, pagefile, media, etc?)
Also, closely related, one thing I cannot discern from what I have read so far is where lies the point of diminishing returns. For a system used for a mix of Premiere/Photoshop/AE, using as HaswellE, 32Gb, and say a 980, how many drives and how much drive throughput is required to prevent HDD from being a significant bottleneck?
Thanks for any thoughts!!Normally PCI-E slots are a premium for editing systems and config options so I don't recommend wasting those on NVMe drives or adapter cards. I would suggest the Sata ports for storage usage and a SSD OS drive for sure. A SSD cache drive is a good idea as well provided it's big enough. Normally you want a 256GB Cache drive if so.
Eric
ADK -
Which tools best for which tasks and project workflow planning?
I am just getting comfortable with the basics of several CS tools and often need to use more than one to build a final product. Since I don't have a long history with the tools I still struggle learning which tool to use for specific tasks and then how best to use the variety of created assets in the various programs.
Currently using CS4 After Effects, Flash, and Photoshop to create web flash swf files. Most books, forums, tutorials, etc. focus on a given tool and how to use its features. I have looked but not found books that take you through a project start to end that spans several tools and using the best parts of each to accomplish pieces of the finished project.
Also, I find getting assets from one tool to the next does not always work out so well. For example, a text layer in AE can be exported a couple ways but by the time it gets into Flash it no longer retains the original text layer and is either rasterized or broekn up. So that is where better understanding workflow, if that is the right term, might help me ensure I use the right tool at the right time in the right order to minimize these kinds of problems.The guys from Waterloo labs did something similar: http://goo.gl/JkOy
They used a sbRIO, which is very similar to myRIO and you should have no problem doing this with myRIO. More info on their setup can be found here: http://www.ni.com/white-paper/11966/en/. You may even be able to re-use some of their code.
-Sam K
LabVIEW Hacker
Join / Follow the LabVIEW Hacker Group on google+ -
Which drive is for which?
I'm new to FCP, want to head off right. I've got a Final Cut Pro Documents folder on a 2nd drive set up as the scratch disk. My boot drive has the FCP Projects folder. Which one should my original .mov files live in, as well as the compressed
versions I bring into FCP...as well as the media files I eventually create?
Of course, I understand EVERYTHING there is to know other than that.
Thanks very much.ALL media of all sorts should reside an any drive other than your boot drive.
-
Which logical partition for which physical one ??
Dears,
I have a linux machine and 4 harddrives on RAID 5.
Now when i run $ df -k I have:
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
411043104 225881224 164282112 58% /
/dev/cciss/c0d0p1 101086 15962 79905 17% /boot
none 3113092 0 3113092 0% /dev/shm
You have new mail in /var/spool/mail/root
Now from above i can see that almost 400GB is mounted on / .
How could i know how they are distributed over the 4 harddrives?
lets say i have Oracle Apps in /u01/oracle, now i need to put the archives, copy of control file in a different disk other than the Applications disk?
FirasYou are welcome.
If you need more details about LVM, you may have a look at Chapter 7 and 8 of Red Hat Enterprise Linux 4: System Administration Guide
http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/sysadmin-guide/ch-lvm-intro.html -
Reduce Logical IO [db block gets/consistent gets]
Hi,
Still I'm unsure about the Logical IO (db block gets + consistent gets).
I want to reduce 'consistent gets' for this query
SQL> set autotrace traceonly
SQL> select * from cm_per_phone_vw;
905 rows selected.
Execution Plan
Plan hash value: 524433310
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
| 0 | SELECT STATEMENT | | 868 | 38192 | 8 (0)| 00:00:01 |
| 1 | SORT GROUP BY NOSORT | | 868 | 38192 | 8 (0)| 00:00:01 |
| 2 | TABLE ACCESS BY INDEX ROWID| CI_PER_PHONE | 1238 | 54472 | 8 (0)| 00:00:01 |
| 3 | INDEX FULL SCAN | CM172C0 | 1238 | | 1 (0)| 00:00:01 |
Statistics
8 recursive calls
0 db block gets
922 consistent gets
4 physical reads
0 redo size
39151 bytes sent via SQL*Net to client
1045 bytes received via SQL*Net from client
62 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
905 rows processedFollowing is the view it's accessing
CREATE OR REPLACE VIEW CM_PER_PHONE_VW
AS
SELECT
per_id
, MAX(DECODE(TRIM(phone_type_cd), 'MOB', phone)) AS MOB
, MAX(DECODE(TRIM(phone_type_cd), 'HOME', phone)) AS HOME
, MAX(DECODE(TRIM(phone_type_cd), 'BUSN', TRIM(phone) || ' ' || TRIM(extension))) AS BUSN
, MAX(DECODE(TRIM(phone_type_cd), 'FAX', phone)) AS FAX
, MAX(DECODE(TRIM(phone_type_cd), 'INT', phone)) AS INT
FROM
ci_per_phone
GROUP BY
per_idI have following indexes on table ci_per_phone
INDEX_NAME COLUMN_NAME COLUMN_POSITION
XM172P0 PER_ID 1
XM172P0 SEQ_NUM 2
XM172S1 PHONE 1
CM172C0 PER_ID 1I tried creating indexes on PER_ID and PHONE_TYPE_CD but the consistent gets reduces to 920 instead of 922.
Just for curiosity, how can I reduce this?
secondly, is there any explanation on 'OPERATION' break of the plan, e.g. TABLE ACCESS BY INDEX ROWID ?
Please advice.
Luckys.Further I'm having problem with another query which is a view
CREATE OR REPLACE VIEW CM_PER_CHAR_VW
AS
SELECT
/*+ full (a) */
a.acct_id
, MAX(DECODE(a.char_type_cd, 'ACCTYPE', a.char_val)) acct_type
, MAX(DECODE(a.char_type_cd, 'PRVBLCYC', a.adhoc_char_val)) prev_bill_cyc
FROM
ci_acct_char a
WHERE
a.effdt =
(SELECT
MAX(a1.effdt)
FROM
ci_acct_char a1
WHERE a1.acct_id = a.acct_id
AND a1.char_type_cd = a.char_type_cd)
GROUP BY
a.acct_idI'm not able to reduce the consistent gets and even the filter appears.
I've analyzed the table as well as the index on the table.
cisadm@CCBDEV> select * from cm_acct_char_vw;
2649 rows selected.
Execution Plan
Plan hash value: 132362271
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
| 0 | SELECT STATEMENT | | 27 | 4536 | 14 (8)| 00:00:01 |
| 1 | HASH GROUP BY | | 27 | 4536 | 14 (8)| 00:00:01 |
| 2 | VIEW | | 27 | 4536 | 14 (8)| 00:00:01 |
|* 3 | FILTER | | | | | |
| 4 | HASH GROUP BY | | 27 | 2916 | 14 (8)| 00:00:01 |
| 5 | NESTED LOOPS | | 2686 | 283K| 13 (0)| 00:00:01 |
| 6 | TABLE ACCESS FULL| CI_ACCT_CHAR | 2686 | 157K| 12 (0)| 00:00:01 |
|* 7 | INDEX RANGE SCAN | XM064P0 | 1 | 48 | 1 (0)| 00:00:01 |
Predicate Information (identified by operation id):
3 - filter("A"."EFFDT"=MAX("A1"."EFFDT"))
7 - access("A1"."ACCT_ID"="A"."ACCT_ID" AND
"A1"."CHAR_TYPE_CD"="A"."CHAR_TYPE_CD")
Statistics
0 recursive calls
0 db block gets
2754 consistent gets
0 physical reads
0 redo size
76517 bytes sent via SQL*Net to client
2321 bytes received via SQL*Net from client
178 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
2649 rows processedhere's the tkprof
select *
from
cm_acct_char_vw
call count cpu elapsed disk query current rows
Parse 2 0.00 0.00 0 0 0 0
Execute 1 0.00 0.00 0 0 0 0
Fetch 178 0.07 0.05 0 2754 0 2649
total 181 0.07 0.05 0 2754 0 2649
Misses in library cache during parse: 1
Optimizer mode: CHOOSE
Parsing user id: 63 (CISADM)
Rows Execution Plan
0 SELECT STATEMENT MODE: CHOOSE
0 HASH (GROUP BY)
0 VIEW
0 FILTER
0 HASH (GROUP BY)
0 NESTED LOOPS
0 TABLE ACCESS MODE: ANALYZED (FULL) OF 'CI_ACCT_CHAR'
(TABLE)
0 INDEX MODE: ANALYZED (RANGE SCAN) OF 'XM064P0'
(INDEX (UNIQUE))
Elapsed times include waiting on following events:
Event waited on Times Max. Wait Total Waited
---------------------------------------- Waited ---------- ------------
SQL*Net message to client 179 0.00 0.00
SQL*Net message from client 179 0.00 0.08
********************************************************************************I've an similar query for another table, where there are 1110 rows, but in the explain, no filter appears in the predicate
Predicate Information (identified by operation id):
2 - access("P"."EFFDT"="VW_COL_1" AND "PER_ID"="P"."PER_ID" AND
"CHAR_TYPE_CD"="P"."CHAR_TYPE_CD")Both the queries have somewhat similar views.
I've got 2 questions,
Is there a way I can reduce the consistent gets( I've tried with/without HINTS),
secondly whats the predicate access shows as 'VW_COL_1'
please advice. -
Flatcable of iPhone 3GS? Which for which purpose??
Hello
When you open the iPhone 3GS. (Lift the LCD). The LCD/Thoughscreen ist connected to the mainboard with 3 cable.
Can someone tell me which cable is for which purpose. They are numbered as 1), 2) and 3)
Who is able to inform me?
GérardIn some countries, Apple offers trade-in discounts. Taking advantage of them is not fiscally responsible for the user as you can get significantly more value for the device through other sites or by selling it yourself.
-
Which Mac Pro for print and which for web
My department is going to be purchasing new computers in the next month. I want to make an informed decision on which ones to buy.
We have both print and web designers. All will be getting new computers. However, I think that print and web probably have different technical needs.
So, of the three available: Quad-Core, 8-Core and 12-Core...which is best for which medium?You could get along fine with an iMac.
You could wait and be forced to use Lion compliant apps
Do you need heavy grapic cabability you probably want 24GB RAM, not 8-12 cores but fastest single cpu available. Or even stock 4-core 2.8 (you don't want more and slower though like 2.4 or 2.6 or even 2.93GHz models).
Mac Performance Guide Reviews -
Consistent gets/physical reads issue
Dear all,
There are not any of DML on table tb_hxl_user.
First Select:
SQL> select count(1) from tb_hxl_user;
COUNT(1)
286435658
Elapsed: 00:04:03.67
Statistics
357 recursive calls
0 db block gets
2106478 consistent gets
2106316 physical reads
0 redo size
422 bytes sent via SQL*Net to client
416 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
6 sorts (memory)
0 sorts (disk)
1 rows processed Second Select:
SQL> select count(1) from tb_hxl_user;
COUNT(1)
286435658
Elapsed: 00:03:02.29
Statistics
0 recursive calls
0 db block gets
2106395 consistent gets
2106273 physical reads
0 redo size
422 bytes sent via SQL*Net to client
416 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processed After the first,I know that all the blocks have been flushed to SGA,
but the second select,it generated many " 2106395 consistent gets" and " 2106273 physical reads" also,
why?What exactly is consistent gets read below link:
http://jonathanlewis.wordpress.com/2009/06/12/consistent-gets-2/
Which is similar to docs clearity and authenticity.
What exactly is physical read read below link:
http://download.oracle.com/docs/cd/B16240_01/doc/doc.102/e16282/oracle_database_help/oracle_database_instance_throughput_physreads_ps.html
Regards
Girish Sharma -
High Consistent Gets and memory settings
What is actually high consistent gets?
I get High Consistent Gets for certain sessions. Following are some of my parameter settings.
db_16k_cache_size = 0
db_2k_cache_size = 0
db_32k_cache_size = 0
db_4k_cache_size = 0
db_8k_cache_size = 0
db_block_size = 8192
sga_max_size = 7632M
sga_target = 7632M
shared_pool_reserved_size = 119957094
shared_pool_size = 48M
pga_aggregate_target = 1500M
Will setting AMM by configuring following parameter help Oracle to manage the memory in terms of workload and reduce CONSISTENT GETS?
Or do I need to manually configure parameter such as "db_8k_cache_size".?
memory_max_target = my SGA+PGA: 9.5G
memory_target = my SGA+PGA: 9.5G
sga_target = 0
pga_agreegate_target =0
Regards, LilyLily wrote:
What is actually high consistent gets?These are the logical IO's . If the logical IOs are high, it may mean that you have selected a lot of data which is now supposed to be given back to you. The high Logical IOs is not something that you should try to minimize using a high amount of memory since its already cached data. That sort of workaround works or would work if the physical IOs are high. If the session is doing more logical IO's check the query and the selectivity of the data and see if you can limit it further.
I get High Consistent Gets for certain sessions. Following are some of my parameter settings.
db_16k_cache_size = 0
db_2k_cache_size = 0
db_32k_cache_size = 0
db_4k_cache_size = 0
db_8k_cache_size = 0
db_block_size = 8192
sga_max_size = 7632M
sga_target = 7632M
shared_pool_reserved_size = 119957094
shared_pool_size = 48M
pga_aggregate_target = 1500M
Will setting AMM by configuring following parameter help Oracle to manage the memory in terms of workload and reduce CONSISTENT GETS?
Or do I need to manually configure parameter such as "db_8k_cache_size".?
memory_max_target = my SGA+PGA: 9.5G
memory_target = my SGA+PGA: 9.5G
sga_target = 0
pga_agreegate_target =0
As I said, instance tuning is not something that you should aim for .
Aman.... -
Trying to understand consistent gets
1. We were very surprised to observe that the consistent gets for a query (shown below) changed (from 120K to 18K) when the only modification was adding a comment to it. How can this happen?
2. Furthermore, the plans for the two queries were identical. How can consistent gets differ if the plan is the same?
3. Is consistent gets the best metric for comparing the performance of two versions of a query, or is there a better one? (In the past we've tried to use execution timing for comparison, but the timing of a single query can vary greatly between runs.)
select
count(*) from (
SELECT source_id, project_id,
max_score,
fields_matched
FROM (SELECT source_id, project_id, MAX(scoring) as max_score,
apidb.tab_to_string(set(CAST(COLLECT(table_name) AS apidb.varchartab)), ', ') fields_matched,
max(index_name) keep (dense_rank first order by scoring desc, source_id, table_name) as index_name,
max(oracle_rowid) keep (dense_rank first order by scoring desc, source_id, table_name) as oracle_rowid
FROM ( SELECT SCORE(1) * (select nvl(max(weight), 1) from apidb.TableWeight where table_name = 'Blastp')
as scoring,
'apidb.blastp_text_ix' as index_name, b.rowid as oracle_rowid, b.source_id, b.project_id,
external_database_name as table_name
FROM apidb.Blastp b
WHERE CONTAINS(b.description, 'protein', 1) > 0
AND 'Blastp' IN ('Product', 'Notes', 'Comments', 'InterPro', 'EcNumber', 'GoTerms', 'Phenotype', 'Notes', 'and the rest')
AND 'gene' = 'gene'
AND b.pvalue_exp < -30
AND b.query_organism IN ('Plasmodium falciparum', 'Plasmodium vivax', 'Plasmodium yoelii', 'Plasmodium berghei', 'Plasmodium chabaudi', 'Plasmodium knowlesi')
UNION
SELECT
SCORE(1)* nvl(tw.weight, 1)
as scoring,
'apidb.gene_text_ix' as index_name, gt.rowid as oracle_rowid, gt.source_id, gt.project_id, gt.field_name as table_name
FROM apidb.GeneDetail gt, apidb.TableWeight tw, apidb.GeneAttributes ga
WHERE CONTAINS(content, 'protein', 1) > 0
AND gt.field_name IN ('Product', 'Notes', 'Comments', 'InterPro', 'EcNumber', 'GoTerms', 'Phenotype')
AND 'gene' = 'gene'
AND gt.field_name = tw.table_name(+)
AND gt.source_id = ga.source_id
AND ga.species IN ('Plasmodium falciparum', 'Plasmodium vivax', 'Plasmodium yoelii', 'Plasmodium berghei', 'Plasmodium chabaudi', 'Plasmodium knowlesi')
UNION
SELECT SCORE(1) * nvl(tw.weight, 1)
as scoring,
'apidb.isolate_text_ix' as index_name, wit.rowid as oracle_rowid, wit.source_id, wit.project_id, wit.field_name as table_name
FROM apidb.IsolateDetail wit, apidb.TableWeight tw
WHERE CONTAINS(content, 'protein', 1) > 0
AND wit.field_name in ('fred')
AND 'gene' = 'isolate'
AND wit.field_name = tw.table_name(+)
GROUP BY source_id, project_id
ORDER BY max_score desc, source_id
);1. We were very surprised to observe that the consistent gets for a query (shown below) changed (from 120K to 18K) when the only modification was adding a comment to it. How can this happen?Adding a comment and getting a different anything makes no sense, but you already know this. Did you toggle the comment on and off to see any changes in performance?
2. Furthermore, the plans for the two queries were identical. How can consistent gets differ if the plan is the same?Clearly something odd happened. Possibilities include
* wrong execution plan reported in one case (unlikely, but possible)
* system resource availability was different at different times
3. Is consistent gets the best metric for comparing the performance of two versions of a queryI use consistent gets, but also look at disk reads (not useful after data has been cached), CPU, and overall execution time. On rare occasions queries can be CPU-bound
Edited by: riedelme on Mar 3, 2010 1:06 PM -
what window programme can i get for my new imac. would like the latest windows with outlook and all the other stuff. also bought it from a friend and need to remove his name from it, but have followed all the instructions and its still there, can anyone advise please?
If you have an intel Mac, you can use BootCamp, which is part of your OS and allows you to run Windows.
-
hello i have started using iphone 5 for which i downloaded my contacts from i clouds i am not able to get name of the person when he is calling for which i have already saved the no. on my contact list i have reseted my phone twice its only showing the names of the person whose no. i have saved it with the country code i am staying in india new delhi pls help me i am fed up not able to get the name of person who is calling
Sir, your Apple ID can be used as an iCloud account as well. They are both the same thing.
You can learn more from --> Set up your Apple ID for iCloud and iTunes - Apple Support
Maybe you are looking for
-
How to align text in drawstring method
hai, i'm using drawString method in my application. i'm using it to draw certain data in a editorpane. in that i have to align the text content but i don't know how to align the text in it such as right alignment,left alignment and center alignment..
-
Change Security Level by the program.
Hello folks. I'm trying on Lookout 6.0.2 to return to the lowest security level 30 minutes later after someone entered a high level security login. I do not want that operators have access inside the computer if the supervisor or the technical person
-
Hi Guys, I am at my wits end as to how I can solve this. I really can't find a solution, I hope you can help. I have a gui layout thus: JTabbedPane -> JScrollPane -> JPanel -> JPanel (instead of awt.canvas) I have multiple java2d 'graphs' that I wish
-
Uneven color-rendition due to contrast film on Macbook Pro?
I've used my Macbook Pro now for a couple of weeks, and have noticed that evenly colored areas and gradients seem to be plagued by "noise"- most likely from the contrast film on top of the lcd-panel. This is getting frustrating as I work on photos an
-
WHAT IS GOING ON?! help me please
2006 new black macbook 80GB: I have had this computer for less than a week and already, the keyboard is not responding (numlock is not pressed) and the trackpad also doesnt register at all. I plugged in an external usb mouse, and it worked- I dont kn