web-dev-qa-db-ja.com

DBMSコンテキストでの正確なBLOBとは

  • BLOBとは何ですか?
  • どうすれば使用できますか?
  • DBMSのBLOBの違いは何ですか。 BLOBを使用して任意のDBMSにデータを保存してから、そのBLOBをライブラリで読み取りたいと思います。
57
cMinor

BLOB:

BLOBBinary Large Object)は、データベースシステムのラージオブジェクトデータ型です。 BLOBは、大量のデータ、ドキュメントタイプ、さらにはオーディオファイルやビデオファイルなどのメディアファイルを保存できます。 BLOBフィールドは、フィールドのコンテンツが使用される場合にのみスペースを割り当てます。 BLOBは、ギガバイトでスペースを割り当てます。

BLOBの使用:

バイナリラージオブジェクト(BLOB)は、データソースのフィールドのタイプに応じて、バイナリデータまたは文字データとしてデータベースに書き込むことができます。 BLOB値をデータベースに書き込むには、適切なINSERT or UPDATEステートメントを発行し、BLOB値を入力パラメーターとして渡します。 BLOBがSQL Serverテキストフィールドなどのテキストとして保存されている場合、BLOBを文字列パラメーターとして渡すことができます。 BLOBがSQL Serverの画像フィールドなどのバイナリ形式で保存されている場合、バイト型の配列をバイナリパラメータとして渡すことができます。

便利なリンク: ドキュメントをデータベースにBLOBとして保存する-不利な点は?

68
sgokhales

頭字語を再び拡張しません...しかし、他の定義にニュアンスを追加します。他のバイト解釈に関係なく、ブロブにデータを保存できます。テキストはblobに保存できますが、そのオプションがある場合はCLOBを使用した方が良いでしょう。

データを保存して取得した後も変更されないという意味で、データベース間でBLOBの間に違いはないはずです。ただし、BLOBとのやり取りの方法は、SQL標準(または仕様の標準?)に仕様がないため、非常に異なる場合があります。通常、プロシージャ/ファンクションを呼び出して保存する必要があります。BLOBのコンテンツに基づいてクエリを制限することは、禁止されていなければほとんど不可能です。

バイナリデータとして列挙されたその他のものの中では、使用されているエンコーディングを実際に認識または指定せずに、テキスト->文字コードのバイナリ表現を特定のエンコーディングで保存することもできます。

BLOBは、ストレージ形式の最も一般的な分母です。

10
Rondo

レコードフィールドを含まず、データベースの検索エンジンで直接検索できない、画像や音声ファイルなどのデータベースに保存されている大きな単一のデータブロック。

6
abhay kumar

これはばかげた質問のように思えるかもしれませんが、実際にRDBMSを使用したいのは何ですか?

ファイルを保存するだけの場合は、通常、オペレーティングシステムのファイルシステムで十分です。 RDBMSは通常、構造化されたデータと(SQLiteなどの埋め込みデータを除く)そのデータの同時操作(ロックなど)に使用されます。その他の便利な機能は、セキュリティ(データへのアクセスの処理)とバックアップ/回復です。後者では、通常のファイルシステムのバックアップに対する主な利点は、何らかの形式のログファイルを適用することにより、バックアップとバックアップの間の特定の時点まで回復できることです。

BLOBは、データベースに関する限り、構造化されておらず不透明です。 Oracleには、マルチメディアオブジェクト(画像など)に対していくつかの特定のORDSYSタイプがあり、それには多数のメタデータも添付され、関連付けられたメソッド(画像のサイズ変更や色変更など)があります。

6
Gary Myers

BLOBはバイナリラージオブジェクトです。データベースに大量のバイナリデータを格納するために使用されます。

これを使用して、任意の種類のバイナリデータを保存できます。これには、画像、ビデオ、または保存したいその他の種類のバイナリデータが含まれます。

さまざまなDBMSがBLOBをさまざまな方法で処理します。興味のあるデータベースのドキュメントを読んで、それらがBLOBをどのように(そしてどのように)処理するかを確認する必要があります。

4
Greg

これらはバイナリラージオブジェクトです。これらを使用して、画像やシリアル化されたオブジェクトなどのバイナリデータを格納できます。

4
sep15ms

バイナリデータの大きな配列と考えています。 BLOBの使いやすさは、DBインターフェースの限られた帯域幅からすぐに続き、DBストレージメカニズムによって決定されません。大きなデータの格納方法に関係なく、格納および取得する唯一の方法は、狭いデータベースインターフェイスです。データベースはシステムのボトルネックです。なぜ簡単に配布できるファイルサーバーとして使用するのですか?通常、BLOBをダウンロードする必要はありません。 DBにBLOB URLを保存するだけです。 BLOBを別のファイルサーバーに配置します。次に、貴重なDB接続を解放し、大きなオブジェクトに無制限の帯域幅を提供します。ただし、これにより一貫性の問題が発生します。

2
Val

コンピューターでは、BLAHBと発音され、場合によってはすべて小文字で表記されるBLOB(バイナリラージオブジェクト)は、処理(たとえば、アップロード、ダウンロード、またはデータベースへの保存)する必要がある大きなファイル、通常は画像または音声ファイルです)そのサイズのために特別な方法で。エリック・レイモンドによると、BLOBの主なアイデアは、ファイルのハンドラー(データベースマネージャーなど)がファイルを処理する方法を理解するためにファイルを理解する方法がないということです。石炭の大きな部分が、それがあり、今何ですか?他の情報源は、この用語はビッグデータオブジェクトを指し、それらを扱うときに時々生じる問題を意味するために造られたと強調しています。 BLOBを扱う1つのアプリケーションは、映画やテレビ番組などの大きなマルチメディアオブジェクトのデータベースストレージです。

0