Definition

Was ist ein BLOB?

| Autor / Redakteur: Tutanch / Nico Litzel

(Bild: © aga7ta - stock.adobe.com)

Ein BLOB (Binary Large Object ) ist ein großes binäres Datenobjekt, das von Datenbanken meist in besonderer Form verarbeitet und gespeichert wird. Typische BLOBs sind Dateien wie Video-, Audio- oder Bilddateien

Die Abkürzung BLOB seht für Binary Large Object und beschreibt eine große Datei, die in binärer Form vorliegt und in einer Datenbank abgelegt werden soll. Es kann sich beispielsweise um Video-, Audio- oder Bild- und Grafikdateien handeln. Zur Speicherung und Bearbeitung solch großer Dateien in Datenbanken sind spezielle Vorgehensweisen und Datentypen notwendig. Zum einen liegt dies an der Größe der Dateien, zum anderen an der für die Datenbanksysteme nicht lesbaren Struktur des Inhalts der BLOBs.

Im Big-Data-Umfeld sind BLOBs häufig vorzufinden und in relationalen oder nicht-relationalen Datenbanksystemen gespeichert. Je nach Datenbanksystem sind die Daten als normale Felddaten oder ausgelagert in speziellen BLOB-Bereichen abgelegt. Einige Datenbanksysteme unterstützen die Speicherung von Binary Large Objects nicht. Die Größe von BLOBs kann bis zu mehreren hundert Gigabyte betragen.

Unterschied zwischen BLOB und CLOB

Der Oberbegriff für Binary Large Object (BLOB) und Character Large Object (CLOB) lautet Large Object (LOB). BLOB und CLOB sind große Dateien, die sich in ihrem grundsätzlichen Aufbau jedoch unterscheiden. Während ein BLOB binär aufgebaut ist, besteht ein CLOB aus Zeichenketten. Einige Datenbanksysteme bieten Funktionen, BLOBs in CLOBs oder CLOBs in BLOBs zu konvertieren.

Die Problematik bei der Speicherung von BLOBs in Datenbanken

Grundproblem der Verarbeitung von BLOBs durch Datenbanken ist, dass die Daten der BLOBs aus Datenbanksicht unstrukturiert und daher nicht lesbar sind. Obwohl BLOBs eine innere Struktur besitzen, lässt diese sich von den Datenbanken weder erfassen noch auswerten. Die Inhalte und Kontexte selbst sind daher nicht nutzbar und sind als Ganzes zu speichern und zu interpretieren. Die Datenbankoperationen beschränken sich bei den BLOBs auf das vollständige Einlesen und Speichern. Typische Datenbankoperationen wie das Suchen, Sortieren oder Filtern der Daten sind auf den Inhalt der BLOBs nicht anwendbar, sondern meist nur auf Dateinamen und Dateityp. Nur die komplette Datei beziehungsweise ihr Dateiname und ihr Dateityp sind von der Datenbank prozessierbar.

Da in spalten- und zeilenbasierten Datenbanken die Felder in den häufigsten Datenbankmanagementsystemen nicht für die Speicherung von BLOBs geeignet sind, speichern viele Datenbanksysteme in den Datenbankfeldern nur einen Verweis auf den tatsächlichen Speicherort der BLOBs. Die unterstützte Größe eines BLOBs ist vom Typ des Datenbanksystems oder von den getroffenen Einstellungen abhängig. LOB-Segmente können unter Umständen in völlig anderen Speicherbereichen wie die Tabellen der Datenbank liegen. Dieses Verfahren verhindert, dass die großen Datenmengen der BLOBs die Performance der Bearbeitung anderer Tabellendaten beeinflussen.

In vielen Datenbanksystemen lassen sich für normale Tabellendaten und BLOBs unterschiedliche Einstellungen für Buffer und Cache festlegen. Grundsätzlich bleibt festzuhalten, dass die gleichzeitige Verarbeitung normaler Tabellendaten und BLOBs in den verschiedenen Datenbanken hinsichtlich Zugriff und benötigtem Speicherplatz nicht besonders effizient ist.

Die Vorteile der Speicherung von BLOBS in einer Datenbank

Obwohl die Speicherung und Verarbeitung von BLOBs in Datenbanken eher ineffizient ist, sind auch einige Vorteile damit verbunden. Alle Daten inklusive der BLOBs sind sauber in das Datenbankschema eingebunden und referenziert. Backups und Dumps der Datenbank enthalten sämtliche relevanten Daten. Ein weitere Vorteil ist, dass die Zugriffsrechte auf die Daten sauber durch die Rechteverwaltung des Datenbanksystems geregelt sind.

Die verschiedenen Datentypen gängiger Datenbanksysteme

In den verschiedenen Datenbankmanagementsystemen der unterschiedlichen Hersteller sind spezielle LOB-Datentypen für das Speichern von BLOBs und CLOBs vorhanden. BLOBs werden beispielsweise durch folgende Datentypen abgebildet:

  • Datenbanksystem: MySQL – BLOB-Datentypen: TINYBLOB (bis 64 Kilobyte), MEDIUMBLOB (bis 16 Megabyte), LONGBLOB (bis vier Gigabyte)
  • Datenbanksystem: PostgreSQL – BLOB-Datentypen: BYTEA oder per OID (Object Identifier)
  • Datenbanksystem: Oracle – BLOB-Datentypen: BLOB
  • Datenbanksystem: DB2 – BLOB-Datentypen: BLOB
  • Datenbanksystem: Microsoft SQL Server – BLOB-Datentypen: varbinary ab SQL Server 2005, text, ntext

Für die Programmiersprache Java existiert eine eigene Schnittstelle mit dem Namen BLOB. Mit ihr ist der Zugriff auf die in den Datenbanksystemen gespeicherten BLOBs möglich. Die Skriptsprache JavaScript für Browser kann eigene BLOB-Objekte zum Lesen, Senden und Bearbeiten binärer BLOB-Daten erzeugen.

Kommentare werden geladen....

Kommentar zu diesem Artikel abgeben

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

KI im produzierenden Gewerbe – wo steht Deutschland?

Kommentar von Dr. Inessa Seifert, PAiCE

KI im produzierenden Gewerbe – wo steht Deutschland?

Ob Deep Learning, maschinelles Lernen oder Predicitve Analytics: Künstliche Intelligenz (KI) gilt als künftige Schlüsseltechnologie der Digitalisierung und ihr wird ein dementsprechend hohes volkswirtschaftliches Potenzial zugeschrieben – auch im produzierenden Gewerbe. lesen

Hortonworks baut Kooperationen aus

Zusammenarbeit mit IBM, Google und Microsoft

Hortonworks baut Kooperationen aus

Anlässlich des DataWorks Summits in Kalifornien hat Hortonworks eine Reihe von neuen und vertieften Partnerschaften bekanntgegeben. Zudem kündigte das Unternehmen Version 3.0 seiner Data Platform an. lesen

Matlab erhält Toolbox für Entwurf und Testen von Algorithmen

Predictive Maintenance

Matlab erhält Toolbox für Entwurf und Testen von Algorithmen

Die neue Predictive Maintenance Toolbox in Matlab bietet Funktionen und Referenzbeispiele für Entwickler, die Algorithmen entwerfen, um Daten zu strukturieren, Zustandsindikatoren zu erstellen, Maschinenzustände zu überwachen und die wirtschaftliche Restlebensdauer zu schätzen und so Geräteausfälle zu vermeiden. lesen

Trifacta ab sofort über den Azure Marketplace verfügbar

Datenaufbereitung

Trifacta ab sofort über den Azure Marketplace verfügbar

Unternehmen können ab sofort Trifactas Data-Wrangling-Lösung „Wrangler Enterprise“ über den Microsoft Azure Marketplace beziehen. lesen

Big-Data-Pipeline von Talend

Microsoft Azure

Big-Data-Pipeline von Talend

Talend entwickelt neue Konnektoren für Hadoop, Data Warehousing, Data Lakes, NoSQL und Storage zur Operationalisierung von Cloud-Daten-Pipelines. lesen

Datenbanken auf Azure migrieren

Daten weltweit verfügbar machen - ab SQL Server 2005

Datenbanken auf Azure migrieren

Viele Unternehmen stehen vor der Entscheidung zu einer neuen Microsoft SQL Server-Version zu wechseln, oder Datenbanken in die Cloud zu migrieren, damit diese an anderen Standorten verfügbar ist. Microsoft unterstützt Administratoren dabei Datenbanken ab SQL Server 2005 in Azure SQL zu übernehmen, aber auch Datenbanken anderer Hersteller. lesen

Diese Big-Data- und BI-Dienste bietet Microsoft Azure

Service Fabric, Notification Hubs & BizTalk Services

Diese Big-Data- und BI-Dienste bietet Microsoft Azure

Microsoft Azure verfügt über zahlreiche Funktionen und Dienste, mit denen Unternehmen Big-Data-Umgebungen aufbauen können. Mit HDInsight lassen sich Hadoop-Cluster in Microsoft Azure bereitstellen. Flankiert werden kann ein solcher Cluster durch zahlreiche weitere Dienste, die Daten senden, speichern, verarbeiten oder analysieren können. lesen

Diese Big-Data- und BI-Dienste bietet Microsoft Azure

Stream Analytics, Data Catalog und Event Hubs

Diese Big-Data- und BI-Dienste bietet Microsoft Azure

In Microsoft Azure gibt es neben HDInsight noch einige weitere interessante Big-Data- und BI-Dienste, die sich in die eigene Infrastruktur einbinden lassen: Stream Analytics, Data Factory, Data Catalog und Event Hubs. Diese Dienste erlauben umfangreiche Datenanalysen und arbeiten mit HDInsight und anderen Azure-Diensten optimal zusammen. lesen

Daten sammeln, aggregieren und in HDFS bereitstellen

Apache Flume

Daten sammeln, aggregieren und in HDFS bereitstellen

Apache Flume erlaubt das umfassende Sammeln von Daten, vor allem im Bereich Streaming-Event-Daten. Die Daten lassen sich in Hadoop Cluster übertragen und auf diesem Weg effizient weiterverarbeiten. Viele Anbieter von Big-Data-Lösungen, darunter Cloudera, unterstützen bereits Flume. lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 45394889 / Definitionen)