Binary large object
   HOME

TheInfoList



OR:

A binary large object (BLOB or blob) is a collection of
binary data Binary data is data whose unit can take on only two possible states. These are often labelled as 0 and 1 in accordance with the binary numeral system and Boolean algebra. Binary data occurs in many different technical and scientific fields, wher ...
stored as a single entity. Blobs are typically
image An image is a visual representation of something. It can be two-dimensional, three-dimensional, or somehow otherwise feed into the visual system to convey information. An image can be an artifact, such as a photograph or other two-dimensio ...
s,
audio Audio most commonly refers to sound, as it is transmitted in signal form. It may also refer to: Sound *Audio signal, an electrical representation of sound *Audio frequency, a frequency in the audio spectrum * Digital audio, representation of sou ...
or other
multimedia Multimedia is a form of communication that uses a combination of different content forms such as text, audio, images, animations, or video into a single interactive presentation, in contrast to tradit ...
objects, though sometimes binary executable code is stored as a blob. They can exist as persistent values inside some
database In computing, a database is an organized collection of data stored and accessed electronically. Small databases can be stored on a file system, while large databases are hosted on computer clusters or cloud storage. The design of databases ...
s or
version control In software engineering, version control (also known as revision control, source control, or source code management) is a class of systems responsible for managing changes to computer programs, documents, large web sites, or other collections o ...
system, or exist at runtime as program variables in some
programming languages A programming language is a system of notation for writing computer programs. Most programming languages are text-based formal languages, but they may also be graphical. They are a kind of computer language. The description of a programming ...
. It is not to be confused with a
binary file A binary file is a computer file that is not a text file. The term "binary file" is often used as a term meaning "non-text file". Many binary file formats contain parts that can be interpreted as text; for example, some computer document fil ...
stored in a
file system In computing, file system or filesystem (often abbreviated to fs) is a method and data structure that the operating system uses to control how data is stored and retrieved. Without a file system, data placed in a storage medium would be one larg ...
. Blobs were originally just big amorphous chunks of data invented by
Jim Starkey Jim Starkey (born January 6, 1949 in Illinois) is a database architect responsible for developing InterBase, the first relational database to support multi-versioning,Babcock, Charles"MySQL Database to Get Replication Monitoring, Multiversionin ...
at DEC, who describes them as "the thing that ate Cincinnati, Cleveland, or whatever" from "the 1958 Steve McQueen movie", referring to ''
The Blob ''The Blob'' is a 1958 American science fiction horror film directed by Irvin Yeaworth, and written by Kay Linaker and Theodore Simonson. It stars Steve McQueen (in his first feature film leading role) and Aneta Corsaut and co-stars Earl Rowe ...
''. Later, Terry McKiever, a marketing person for
Apollo Apollo, grc, Ἀπόλλωνος, Apóllōnos, label=genitive , ; , grc-dor, Ἀπέλλων, Apéllōn, ; grc, Ἀπείλων, Apeílōn, label=Arcadocypriot Greek, ; grc-aeo, Ἄπλουν, Áploun, la, Apollō, la, Apollinis, label= ...
, felt that it needed to be an acronym and invented the
backronym A backronym is an acronym formed from an already existing word by expanding its letters into the words of a phrase. Backronyms may be invented with either serious or humorous intent, or they may be a type of false etymology or folk etymology. The ...
''Basic Large Object''. Then
Informix IBM Informix is a product family within IBM's Information Management division that is centered on several relational database management system (RDBMS) offerings. The Informix products were originally developed by Informix Corporation, whose ...
invented an alternative backronym, ''Binary Large Object''. The data type and definition were introduced to describe data not originally defined in traditional computer database systems, particularly because it was too large to store practically at the time the field of database systems was first being defined in the 1970s and 1980s. The data type became practical when disk space became cheap. This definition gained popularity with
IBM Db2 Db2 is a family of data management products, including database servers, developed by IBM. It initially supported the relational model, but was extended to support object–relational features and non-relational structures like JSON a ...
. The term is used in
NoSQL A NoSQL (originally referring to "non- SQL" or "non-relational") database provides a mechanism for storage and retrieval of data that is modeled in means other than the tabular relations used in relational databases. Such databases have existed ...
databases, especially in key-value store databases such as
Redis Redis (; Remote Dictionary Server) is an in-memory data structure store, used as a distributed, in-memory key–value database, cache and message broker, with optional durability. Redis supports different kinds of abstract data structures, s ...
. The term is also used by languages that allow runtime manipulation of Blobs, like
JavaScript JavaScript (), often abbreviated as JS, is a programming language that is one of the core technologies of the World Wide Web, alongside HTML and CSS. As of 2022, 98% of websites use JavaScript on the client side for webpage behavior, of ...
. The name "blob" is further borrowed by the deep learning software Caffe to represent multi-dimensional arrays. In the world of
free and open-source software Free and open-source software (FOSS) is a term used to refer to groups of software consisting of both free software and open-source software where anyone is freely licensed to use, copy, study, and change the software in any way, and the source ...
, the term is also borrowed to refer to proprietary device drivers, which are distributed without their
source code In computing, source code, or simply code, is any collection of code, with or without comments, written using a human-readable programming language, usually as plain text. The source code of a program is specially designed to facilitate the ...
, exclusively through
binary code A binary code represents text, computer processor instructions, or any other data using a two-symbol system. The two-symbol system used is often "0" and "1" from the binary number system. The binary code assigns a pattern of binary digits, als ...
; in such use, the term ''binary blob'' is common, even though the first letter in the ''blob'' abbreviation already stands for ''binary''. Depending on the implementation and culture around usage, the concept might be alternately referred to as a "basic large object" or "binary data type".


See also

*
Binary blob In the context of free and open-source software, proprietary software only available as a binary executable is referred to as a blob or binary blob. The term usually refers to a device driver module loaded into the kernel of an open-source ope ...
*
Character large object A Character Large OBject (or CLOB) is part of the SQL:1999 standard data types. It is a collection of character data in a database management system, usually stored in a separate location that is referenced in the table itself. Oracle and IBM Db ...


References

{{The Blob Databases Data types