Dienstag Feb. 07, 2006

ORACLE: Welches Datenfile erzeugt am meisten I/O?

Dazu nimmt man folgende Query:

SELECT NAME,
        PHYRDS "Physical Reads",                                                                                        
        round((PHYRDS / PD.PHYS_READS)*100,2) "Read %",                                                                 
        PHYWRTS "Physical Writes",                                                                                      
        round(PHYWRTS * 100 / PD.PHYS_WRTS,2) "Write %",                                                                
        fs.PHYBLKRD+FS.PHYBLKWRT "Total Block I/O's"                                                                    
FROM (                                                                                                                  
        SELECT sum(PHYRDS) PHYS_READS,                                                                                 
                sum(PHYWRTS) PHYS_WRTS                                                                                  
        FROM v$filestat                                                                                              
        ) pd,                                                                                                           
        v$datafile df,                                                                                                  
        v$filestat fs                                                                                                   
WHERE df.FILE# = fs.FILE#                                                                                             
ORDER BY fs.PHYBLKRD+fs.PHYBLKWRT DESC;

Hier zahlt es sich mal wieder ganz besonders aus, wenn man die Tablespaces/Datenfiles verschiedenen Projekten zuordnert und nicht alles in eine Datei stopft. Denn dann sieht man mit dieser Query sofort das Projekt, das am meisten Festplatten-I/O verursacht.

Today's Links

Materialized Views in PostgreSQL
Replication hooks for PostgreSQL (events: connection startup / shutdown, transaction begin / commit / rollback)
Nutch: A Flexible and Scalable Open-Source Web Search Engine (PDF)
How to Index Anything - Wie man mit Hilfe von Swish-E alle möglichen Daten indizieren kann, beschreibt dieser Artikel (PDF)
C64Music - Ein netter Blog über C64 Musik.
A story about FreeMarker and Velocity - Eine praktische Entscheidungshilfe
JIP (The Java Interactive Profiler) - Im Gegensatz zu anderen Profilern hat dieser keine native Komponente
Daisy the Open Source CMS - Basiert auf Coccon
Flash-Animationen sichern
Interview mit Thomas Landgraf - Rüttelspielchen auf dem C64
FreeRingtoneMaker: Kostenloses Klingelton-Werkzeug
Speicherverbrauch unter Linux verstehen lernen
Alternate Data Storage Technologies - Die Vor- und Nachteile div. Datenspeichertechniken (es geht hauptsächlich um Datenbanken aller Art)
JExamples.com Suche - Eine Firefox Erweiterung
Lautsprecher empfängt Musik ohne Kabel - Dafür mit Bluetooth
Ipod-Software-Kit - Nützliche Tools für Ipdod-Fans
Occam's Razor - JSPs and Groovlets head to head
CLI Magic: ifup, ifdown, ifstatus
Titus PyX Tutorial for Gnuplot Users
Root on LVM on software RAID micro howto

Intranet/Internet Open Source Suchmaschinen

Wer auf der Suche nach einer Suchengine für seine eigenen Intranet/Internet Webseite ist, der kann mal folgende Engines ins Auge fassen:

Webglimpse
Nutch
Mnogosearch
Egothor
Dataparksearch
Swish-e

EJB Design Patterns

EJB Design Patterns - Das Buch als PDF zum freien Download.

ORACLE: Füllgrad der Tablespaces feststellen

Wie findet man raus, wie voll die Tablespaces schon sind? Darüber gibt folgendes SQL-Skript Auskunft:

SELECT a.TABLESPACE_NAME,
        a.BYTES bytes_used,
        b.BYTES bytes_free,
        b.largest,
        round(((a.BYTES-b.BYTES)/a.BYTES)*100,2) percent_used
FROM
        (
                SELECT TABLESPACE_NAME,
                        sum(BYTES) BYTES
                FROM dba_data_files
                GROUP BY TABLESPACE_NAME
        )
        a,
        (
                SELECT TABLESPACE_NAME,
                        sum(BYTES) BYTES ,
                        max(BYTES) largest
                FROM dba_free_space
                GROUP BY TABLESPACE_NAME
        )
        b
WHERE a.TABLESPACE_NAME=b.TABLESPACE_NAME
ORDER BY ((a.BYTES-b.BYTES)/a.BYTES) DESC;