Current Page: Greybox » Authoring » Course ID: medieninformatik » Modules » Module ID: m06 » Learning Units » Unit ID: 1_4_13
Last Modified:Tuesday, 2015-05-05 - 08:09:01
 
Tools: ValidatePreview XML Preview HTML Preview PDF
Alternative: Printable HTML

 

Learning Unit ID: 1_4_13
Title: Oracle interMedia - eine kommerzielle Multimediadatenbank
Abstract: Diese Lerneinheit stellt interMedia von seiner Funktionalität (allgemein) und seiner Architektur dar.
 
Status:

Revie II: done.

Version: 8.0
History:

Acronyme, Absätze und Wordanführungszeichen done.

Review von Prof. Kosch eingearbeitet.

@ Prof. Kosch: ORD*

Unbekannte Character removed.

Sourcecode inline gestellt.


Author
Author 1: Harald Kosch E-Mail: harald.kosch@itec.uni-klu.ac.at
Author 2: (empty) E-Mail: (empty)
Author 3: (empty) E-Mail: (empty)
Author 4: (empty) E-Mail: (empty)
Author 5: (empty) E-Mail: (empty)
Organization: Universität Klagenfurt - Institut für Informatik-Systeme

Content

Einleitung Oracle's 9i interMedia

1

Auto

  • Oracle interMedia stellt eine Reihe von Services zur Speicherung, Verwaltung und Suche in multimedialen Daten zur Verfügung:
    • Verwaltung von Meta- und Mediendaten
    • Speicherung und Suchfunktionalität, die Suchfunktionalität beschränkt sich auf Bilder
    • Unterstützung aller populären Formate
  • Oracle interMedia ist eine Multimedia-Datenbank welche in das Oracle Datenbankmanagementsystem (DBMS401) integriert ist.
  • Basiert auf der Cartridgetechnologie von Oracle, welche es ermöglicht, spezielle DBMS zu entwerfen (siehe vorherige Lerneinheit).

2

Auto

interMedia führt eine Reihe von Datentypen zur Verwaltung von multimedialen Daten und deren Meta-Daten ein. Neben den Multimedia-Datentypen werden eine Reihe von Methoden zur Verwaltung der Daten, sowie zur Speicherung und Konvertierung angeboten. In den letzten Jahren, von der Version 8i angehend, wurden immer mehr Datentypen unterstützt, so dass interMedia nun die gängigsten Formate unterstützt.

interMedia nützt die Erweiterungsmöglichkeiten, die durch Oracle angeboten werden, und deswegen ist interMedia ein echte Multimedia-Datenbank, die sowohl Indexoperationen als auch Anfrageoptimierungen durchführt.

interMedia Architektur

1

Auto PC

interMedia Architektur

Auto PDA_Phone

interMedia Architektur

2

Auto

Auto PC

interMedia Architektur

Auto PDA_Phone

interMedia Architektur

Auto

Die im Bild dargestellte Architektur von interMedia unterstützt die von Oracle angebotene 3-tier verteilte Architektur (Datenbankserver, Applikationsserver, Endenutzer). Es werden zum einen interMedia java-Klassen angeboten, die es ermöglichen, auf die Bilddaten mittels JDBC (Java Database Connectivity) zuzugreifen (vom mitteltier, z.B. dem Applikations- oder Web Server oder vom Endbenutzer).
Weiterhin ist die Unterstützung von "Streaming Servers" zu erwähnen. Oracle unterstützt einige Servertypen, z.B: real time streaming server, die dann direkt auf die in der Datenbank gespeicherten Medien zugreifen können, um einen kontinuierlichen Strom an die Endbenutzer auszusenden.
Am back-end, also im Datenbankserver, findet man zu einem den MediaParser, der es ermöglicht, Meta-Daten von den Mediendaten zu extrahieren und zum anderen die Medien für die Verarbeitung zu parsen.
Die Suchfunktionalität wird mittels der Java Advanced Imaging Libraries realisiert.

interMedia - Verwaltung der Inhalte

1

Auto

Oracle interMedia unterstützt Speicherung, Suche, and Verwaltung von:

  • Binary Large Objects (BLOBs): werden im DBMS gespeichert (lokale Speicherung). Sie unterliegen der Grössenbeschränkung eines BLOBS. Alle Arten von multimedialen Inhalten können so gespeichert werden.
  • File-based Large Objects (BFILEs): werden in externen Dateisystemen gespeichert und von der Datenbank referenziert. Sie können natürlich über DB-Operationen ausgelesen und gespeichert werden.
  • URLs, welche multimediale Daten referenzieren.
  • Streaming Audio oder Video: Daten, die in spezialisierten Medienservern gespeichert sind und von dort kontinuierlich übertragen werden.

2

Auto

Oracle 9i interMedia kennt 4 verschiedene Speicherungsarten für Medien und Meta-Daten. Die erste ist der Binary Large Objects (BLOB407) zur internen Speicherung von Medien- und Meta-Daten. Dieser ist sicher für alle Nicht-Video Daten von Relevanz. Daten können natürlich auch extern abgelegt werden, hier unterscheidet man die stark- oder lose gekoppelte Referenzierung als File-based Large Objects (BFILE), oder über eine URL. Im ersteren Fall hat man Operationen zur Speicherung und Verwaltung der abgelegten Daten.
Im letzten Fall werden Daten auf einem Streaming Server abgelegt und in der Datenbank referenziert.

Objektrelationale Datentypen

1

Auto

Oracle interMedia benützt OR(Objekt-Relationale)-DB Typen um multimediale Daten zu verwalten. Die Datentypen sind:
ORDAudio, ORDImage, ORDVideo und ORDDoc

  • Jeder dieser Typen führt eine Reihe von Attributen (u.U mit Meta-Dateninformationen) und Methoden ein.
  • Medien-Daten sind Audio, Bild, Video und die Kombination dieser (ORDDoc).
  • Metadaten sind Daten über die Mediendaten, sowie die Größe, Art der Komprimierung, Format, etc.
  • Methoden sind Prozeduren und Funktionen welche die Objekte verwalten, wie z.B. getProperties() und setProperties() zur Abfrage der Eigenschaften der Mediendaten.

Es gibt auch noch den Texttyp auf den wir hier nicht genauer eingehen können, der interessierte Leser wird auf technet.oracle.com verwiesen.

2

Auto

Oracle interMedia hat seine 4 objekt-relationale (OR-)Mediendatentypen mit ORD463 als Prefix benannt. Alle Objekttypen haben ein Attribut vom Typ ORDSource, das eine gewisse Abstraktion für den Speicherort der eigentlichen Daten bietet. So können die entsprechenden Daten entweder lokal als BLOB in der Datenbank, als BFILE im Filesystem oder mit Hilfe einer URL auf einem Webserver gespeichert werden. Die Datentypen definieren Attribute und Methoden. Attribute dienen vor allem der Speicherung von Meta-Daten über die Mediencharakteristika. Metadaten sind Daten über die Mediendaten, sowie die Größe, Art der Komprimierung, Format, etc.
Methoden sind Prozeduren und Funktionen welche die Objekte verwalten, wie z.B. getProperties( ) und setProperties() zur Abfrage der Eigenschaften der Mediendaten.

Die Methoden jedes einzelnen Objektes unterscheiden sich aufgrund verschiedener unterschiedlicher Eigenheiten jedes Medientyps.

Die Ausprägungen gibt es für Audio (ORDAudio), Bilder (ORDImage), Video (ORDVideo) und einen Mix-Datentyp ORDDoc. Hierbei nimmt der Typ ORDDoc eine Sonderrolle ein, da mit diesem beliebige multimediale Datentypen gespeichert werden können (z.B. Postscript, XML, Bilder, Audio). ORDAudio dient als Objekt zur Verwaltung von Audiodaten (.wav usw.). Das ORDImage-Objekt speichert Bilddaten wie .jpg, .gif, .bmp oder ähnliches. Zur Speicherung von Videos (wie z.B. .avi) wird ORDVideo verwendet.

Eine genaue Beschreibung der gesamten vorhandenen Methoden kann hier nicht gegeben werden, da jeder der Objekttypen über einen sehr reichhaltigen Methodenschatz verfügt (beispielsweise hat ORDImage mehr als 30 Methoden). Es gibt auch noch den Texttyp auf den wir hier nicht genauer eingehen können, der interessierte Leser wird auf technet.oracle.com verwiesen.

Datentypen Oracle 9i: Gesamtübersicht

1

Auto

  • Built-in Datentypen
    • Character_data types: CHAR, VARCHAR2, NCHAR, NCHAR2
    • Number_data types: NUMBER(p,s)
    • Long_and_row_data types: LONG, LONG RAW, RAW
    • Date time_data types: DATE, TIMESTAMP, INTERVAL
    • Large_object_data types: BLOB, CLOB, NCLOB, BFILE
    • Rowid_data types: ROWID, UROWID
  • Building Block Typen
    • Building block: Object Types, REFs, Varrays, Nested Tables
  • ANSI SQL unterstütze Datentypen
    • Die meisten ANSI SQL-Typen werden von Oracle unterstützt, ausser: GRAPHIC, VARGRAPHIC, LONG VARGRAPHIC, TIME, TIMESTAMP
  • Cartridge Datentypen
    • any_types: SYS.AnyType, SYS.AnyData, SYS.AnyDataSet
    • XML_types: SYS.XMLType, SYS.UriType
    • spatial_types: MDSYS.SDO_Geometry
    • media_types: ORDSYS.ORDAudio, ORDSYS.ORDImage, ORDSYS.ORDVideo,
      ORDSYS.ORDDoc

2

Auto

Die folgenden Klassen von Datentypen existieren in Oracle 9i:

  • Built-in Datentypen
    • Character_data types: CHAR, VARCHAR2, NCHAR, NCHAR2
    • Number_data types: NUMBER(p,s)
    • Long_and_row_data types: LONG, LONG RAW, RAW
    • Date time_data types: DATE, TIMESTAMP, INTERVAL
    • Large_object_data types: BLOB, CLOB, NCLOB, BFILE
    • Rowid_data types: ROWID, UROWID
  • Building Block Typen
    • Building block: Object Types, REFs, Varrays, Nested Tables
  • ANSI SQL unterstütze Datentypen
    • Die meisten ANSI SQL-Typen werden von Oracle unterstützt, ausser: GRAPHIC, VARGRAPHIC, LONG VARGRAPHIC, TIME, TIMESTAMP
  • Cartridge Datentypen
    • any_types: SYS.AnyType, SYS.AnyData, SYS.AnyDataSet
    • XML_types: SYS.XMLType, SYS.UriType
    • spatial_types: MDSYS.SDO_Geometry
    • media_types: ORDSYS.ORDAudio, ORDSYS.ORDImage, ORDSYS.ORDVideo,
      ORDSYS.ORDDoc

Bemerkenswert ist hier der Besitzer des Datentyps für Multimedia: ORDSYS!, also derjenige Benutzer, dem das Cartridge gehört!

ORDImage in weiterer Folge

1

Auto

  • ORDImage stellt als einziger Datentyp (bisher) Suchfunktionalität zur Verfügung. Der Unterschied liegt in der Ähnlichkeitssuche, denn über die Inhalte der Attribute eines Datentyps kann natürlich immer gesucht werden.
  • ORDVideo and ORDAudio haben ähnliche Methodenschnittstellen (ausgenommen die Suche wie ORDImage).

2

Auto

ORDImage stellt als einziger Datentyp (bisher) Suchfunktionalität zur Verfügung. Der Unterschied liegt in der Ähnlichkeitssuche, denn über die Inhalte der Attribute eines Datentyps kann natürlich immer gesucht werden.
ORDVideo and ORDAudio haben ähnliche Methodenschnittstellen (ausgenommen die Suche wie ORDImage).

Bibliographie

2

Auto

Kos04

OiM04

Fre02


Notes
(empty)