Ich mache eine Tabelle, in der ich XML speichere. Um XML zu speichern, verwende ich den CLOB-Datentyp. Die maximale Größe meines XML wäre 5kb. Welche Größe der CLOB-Spalte sollte ich beim Erstellen der Tabelle definieren?Größe der CLOB in Oracle definieren
Antwort
Sie definieren keine Größe genau beim Setzen eines Clobs (im Gegensatz zu einem Varchar). Es ist einfach clob
.
Die maximale Größe eines Lobs ist 4 Gb.
Lagerung weise wird es Raum wie folgt verwenden:
- wenn das lob als in-Reihe definiert ist, und das lob weniger als ~ 4 kb, es wird nur die Menge an Platz in Anspruch nehmen, dass das Dokument ist. (zB speichert ein xml von 512 Bytes in Zeile und es wird 512 Bytes verwenden.
- Wenn der Lob außerhalb der Zeile definiert ist (oder 4kb überschritten), dann wird es ein Vielfaches der "Chunk" Größe verwenden, die Sie wann definiert . Erstellen der Tabelle
wenn eine lOB-Spalte erstellen, können Sie seine Speicher Klausel angeben kann in-Reihe steuern und out-of-Row-Optionen wie folgt aus:
LOB (c) STORE AS lobseg (DISABLE STORAGE IN ROW CHUNK 16384)
dh, die angeben würde, dass die lob kann niemals inline mit den regulären Tabellendaten gespeichert werden und weist Speicher in Vielfachen von 16kb pro Chunk zu. Selbst wenn Ihr Dokument 1kb groß wäre, würde es 16kb sto benötigen Rage.
Wenn Ihre XML-Dokumente nur 5kb groß sind, sollten Sie den In-Row-Speicher in Betracht ziehen und eine kleine Chunk-Größe eingeben (die Chunk-Größe ist 1 Block. Wenn Sie also einen Tablespace mit 4KB Extents haben, ist Ihr Minumum Chunk Größe wird 4kb sein; wenn Sie weniger angeben, wird es ignoriert). Der Nachteil, in-row Lobs zuzulassen, ist, dass die Tabelle größer sein wird, so dass große Bereich Scans ein wenig leiden können (aber Lob-Abruf ist schneller).
Auch in 11g haben Sie die Möglichkeit, LOB-Segmente zu komprimieren, die Sie vielleicht in Erwägung ziehen (wenn Ihre Lizenz dies deckt). Mit solch kleinen Dokumenten mag Ihnen das nicht viel nützen.
mehr hier lesen: http://docs.oracle.com/cd/B28359_01/appdev.111/b28393/adlob_tables.htm
- 1. Abfrage Oracle Clob Datentyp
- 2. Dapper & Oracle Clob Typ
- 3. Update Oracle CLOB mit PHP
- 4. ORACLE - dynamische SQL- CLOB mit
- 5. Kann nicht in CLOB einfügen, Oracle
- 6. Wie erhalten Sie die Größe einer CLOB-Spalte in Oracle in Bytes?
- 7. Oracle 10g rekursive Anzahl von xml Clob
- 8. Hibernate on Oracle: Zuordnung der String-Eigenschaft zur CLOB-Spalte
- 9. Wie liest man eine CLOB-Spalte in Oracle mit OleDb?
- 10. Wie kopiere ich einen CLOB von Oracle in SQL Server
- 11. Oracle: Ändern der Größe der Variablen
- 12. definieren präzise Größe Speicherstrukturen
- 13. Suche nach einer bestimmten Zeichenfolge in Oracle Clob-Spalte
- 14. Wie Sie eine CLOB-Spalte in Oracle abfragen
- 15. Definieren der Größe eines Arrays während der Ausführung in C
- 16. Wahre Tablespace-Größe in Oracle
- 17. PDO_OCI - in ein Clob-Feld
- 18. Oracle PL/SQL. Group by on clob data
- 19. Verwenden von Oracle 10g CLOB mit Grails 2.0.1
- 20. Variable in Oracle SQL-Entwickler definieren
- 21. Wie interpretiert man ALL_TAB_COLS.DATA_LENGTH = 4000 für Oracle-CLOB-Typen?
- 22. select * returns CLOB
- 23. Oracle Sql Developer kann Clob-Daten nicht exportieren?
- 24. Bitset-Größe bei Initialisierung definieren?
- 25. C# Definieren der Größe eines Array in einer Arraylist
- 26. Kann ein CLOB aus einer entfernten Oracle-Datenbank gelesen werden?
- 27. Zeilen in CLOB verknüpfen
- 28. Größe einer Datenbank in Oracle finden
- 29. Speichern langer Zeichenfolgen (CLOB) in Hsqldb-Datenbanken?
- 30. String zu Clob in Java?
In 11g, die maximale Größe eines LOB (4 GB - 1) * (DB Blockgröße), die mit TB zwischen 8 und 128 arbeitet. Nicht so viele Leute müssen die alten 4 GB überschreiten, aber Sie können. http://docs.oracle.com/cd/B28359_01/server.111/b28320/limits001.htm –