Datenbankgröße
Die Datenbankgröße kann aus den Systemtabellen EXA_ALL_OBJECT_SIZES oder EXA_DBA_OBJECT_SIZES entnommen werden.
In der Tabelle werden Tabellen und Schemata aufgelistet. Bitte beachten Sie, dass die Größe eines Objekts vom Typ 'SCHEMA' als Summe von Größen aller in dem Schema befindlichen Objekten berechnet wird. Bei Views, Funktionen usw. handelt es sich hierbei um die Größe des entsprechenden Textes.
RAW_OBJECT_SIZE gibt die logische Objektgröße, bemessen an Datentypen und Inhalten an. Diese Größe ist vergleichbar mit der Größe einer CSV-Datei mit gleichem Inhalt. Der Wert wird berechnet als Summe über alle gespeicherten Werte. Dabei ergeben
- NULL –› 1 Byte
- Typ fester Größe: Typabhängig –› 1-80000 Bytes
- Varchar –› Anzahl Bytes, die der Wert belegt.
MEM_OBJECT_SIZE gibt die tatsächliche Menge an (Haupt-) Speicher ab, die für das jeweilige Datenbankobjekt verbraucht wird. Der Wert wird berechnet als
- Summe über alle gespeicherten Werte nach Kompression
- Overhead für Zugriffsstrukturen, z.B. Längeninformation für VARCHAR
- Overhead für Replikation
Replikation: Tabelleninhalte werden auf jedem Knoten im Speicher gehalten. Dies betrifft lediglich kleine Tabellen.
Bitte beachten Sie, dass bereits beim Anlegen einer Tabelle einige Datenblöcke reserviert werden. Daher ist MEM_OBJECT_SIZE von leeren oder sehr kleinen Tabellen in der Regel größer als RAW_OBJECT_SIZE. Dies sagt nichts über die tatsächliche Datenkompression aus.
In diesen Systemtabellen sehen Sie die Gesamtgröße der Datenbankobjekte, also über alle Knoten.
Beispiel: Objekte im Schema 'EXAMPLES'
-
- OBJECT_NAME OBJECT_TYPE RAW_OBJE MEM_OBJE
- ------------------------ ----------- -------- --------
- TESTADR TABLE 492836 2615072
- ITEMS TABLE 1120 23489
- PAYMENTS TABLE 208 13956
- PRODUCTS TABLE 1191 230942
- NEW_CITIES TABLE 132 80336
- V_PRODUCT_ORDERING VIEW 578 578
- V_CUSTOMERS VIEW 431 431
- V_PRODUCT_RATING_MONTHLY VIEW 755 755
- CUSTOMER_MOVES TABLE 0 13920
- MYMAX FUNCTION 290 290
- DAYS_BETWEEN FUNCTION 402 402
- COUNTRIES TABLE 64 74655
- NEW_CUSTOMERS TABLE 117 217756
- CITIES TABLE 167 80336
- ORDERS TABLE 399 13996
- TESTADR_CLEANSED TABLE 41770 1822724
- CUSTOMERS TABLE 365 222986
- RETURNED_ITEMS TABLE 178 92179
- V_ORDERS VIEW 648 648
- V_RETURNS VIEW 713 713
- V_PAYMENTS VIEW 472 472
- V_CUSTOMER_RAITING VIEW 861 861
- V_TRANSACTIONS VIEW 615 615
- LAG TABLE 45 9299
- MYFUNCS PACKAGE 208 208
EXAoperation dagegen zeigt den freien Platz pro Knoten ausgehend von den Gesamtgrößen der persistenten und temporären Datenbankfiles sowie gegebenenfalls Backups. Die Größen können durchaus von Knoten zu Knoten unterschiedlich sein, z.B. aufgrund von temporär erzeugten Daten.
Anzeige in EXAoperation
-
- Node Free data Disk Free spool State
- n0011 400.7 GiB [UUUUUUUU] 400.7 GiB Running
- n0012 1028.8 GiB [UUUUUUUU] 1028.8 GiB Running
- n0013 1174.8 GiB [UUUUUUUU] 1174.8 GiB Reserve
- n0014 1278.4 GiB [UUUUUUUU] 1278.4 GiB Running
- n0015 181.7 GiB [UUUUUUUU] 181.7 GiB Running
Datenverteilung
Die Angaben in EXAoperation sind daher nicht geeignet, um die Gleichmäßigkeit der Datenverteilung zu überprüfen.
Dies kann mit Hilfe der iproc()-Funktion für einzelne Tabellen erledigt werden:
Beispiel: iproc()-Nutzung
-
- SELECT
- COUNT(*), iproc()
- FROM mytable
- GROUP BY iproc()
- ORDER BY 2;
-
- COUNT(*) IPROC
- ------------------- -----
- 5327099 0
- 5325780 1
- 5333799 2
- 5319445 3















