What is it exactly a BLOB in a DBMS context

前端 未结 7 1859
清歌不尽
清歌不尽 2020-11-30 19:23
  • What is it a BLOB?
  • How can I use it?
  • What are the differences between DBMS\'s BLOBs. I would like to save data using BLOBs into any DBMS and then rea
相关标签:
7条回答
  • 2020-11-30 20:05

    any large single block of data stored in a database, such as a picture or sound file, which does not include record fields, and cannot be directly searched by the database's search engine.

    0 讨论(0)
  • 2020-11-30 20:07

    They are binary large objects, you can use them to store binary data such as images or serialized objects among other things.

    0 讨论(0)
  • 2020-11-30 20:11

    A BLOB is a Binary Large OBject. It is used to store large quantities of binary data in a database.

    You can use it to store any kind of binary data that you want, includes images, video, or any other kind of binary data that you wish to store.

    Different DBMSes treat BLOBs in different ways; you should read the documentation of the databases you are interested in to see how (and if) they handle BLOBs.

    0 讨论(0)
  • 2020-11-30 20:14

    This may seem like a silly question, but what do you actually want to use a RDBMS for ?

    If you just want to store files, then the operating system's filesystem is generally adequate. An RDBMS is generally used for structured data and (except for embedded ones like SQLite) handling concurrent manipulation of that data (locking etc). Other useful features are security (handling access to the data) and backup/recovery. In the latter, the primary advantage over a regular filesystem backup is being able to recover to a point in time between backups by applying some form of log files.

    BLOBs are, as far as the database concerned, unstructured and opaque. Oracle does have some specific ORDSYS types for multi-media objects (eg images) that also have a bunch of metadata attached, and have associated methods (eg rescaling or recolouring an image).

    0 讨论(0)
  • 2020-11-30 20:14

    I think of it as a large array of binary data. The usability of BLOB follows immediately from the limited bandwidth of the DB interface, it is not determined by the DB storage mechanisms. No matter how you store the large piece of data, the only way to store and retrieve is the narrow database interface. The database is a bottleneck of the system. Why to use it as a file server, which can easily be distributed? Normally you do not want to download the BLOB. You just want the DB to store your BLOB urls. Deposite the BLOBs on a separate file server. Then, you reliefe the precious DB connection and provide unlimited bandwidth for large objects. This creates some issue of coherence though.

    0 讨论(0)
  • 2020-11-30 20:17

    I won't expand the acronym yet again... but I will add some nuance to the other definition: you can store any data in a blob regardless of other byte interpretations they may have. Text can be stored in a blob, but you would be better off with a CLOB if you have that option.

    There should be no differences between BLOBS across databases in the sense that after you have saved and retrieved the data it is unchanged.... how each database achieves that is a blackbox and thankfully almost without exception irrelevant. The manner of interacting with BLOBS, however can be very different since there are no specifications in SQL standards (or standards in the specifications?) for it. Usually you will have to invoke procedures/functions to save retrieve them, and limiting any query based on the contents of a BLOB is nearly impossible if not prohibited.

    Among the other stuff enumerated as binary data, you can also store binary representations of text -> character codes with a given encoding... without actually knowing or specifying the encoding used.

    BLOBS are the lowest common denominators of storage formats.

    0 讨论(0)
提交回复
热议问题