1

mysql-server-expressは文字列を圧縮できますか?この情報が見つからないようですので、ドキュメントへのリンクを教えていただければ幸いです。

mysqlは、文字列に対してcompress()関数を使用することでこれを許可していることを知っています。また、これを自動的に実行できるのか、それとも毎回この機能を使用する必要があるのか​​疑問に思っていますか?

また、http://www.postgresql.org/docs/8.0/interactive/datatype-character.htmlによると、圧縮は自動的に行われます。私は正しいですか?

4

1 に答える 1

1

PostgreSQL は、大きな行に使用する TOAST で保存されたものを自動的に圧縮します。この圧縮は透過的であるため、呼び出し元のコードには圧縮が行われていないように見えますが、実際には圧縮されていません。

透過的であるため、値を検索するクエリには影響しません。

MySQL で myisampack を使用すると、テーブルが圧縮されますが、読み取り専用になります。高速版でそれが可能かどうかはわかりません。

どのデータベースでも、独自の圧縮を行い、結果の blob を保存できます。

長所: 多くの場合、PostgreSQL の圧縮よりも優れている可能性があります。通信プロトコル内で発生するどの圧縮よりも優れている可能性があります。データを圧縮して処理できる場合は、作業は完了です。

短所:あなたの側からの作業が必要です。問題のフィールド内で検索する機能を台無しにします。内部圧縮が最適ではない可能性があります (ただし、圧縮が有利な場合は、スコアを圧縮しないよりはましかもしれません)。データを圧縮して使用できない場合は、データにアクセスする前にさらに作業を行う必要があります。

于 2011-12-09T11:57:50.037 に答える