Mysql
 sql >> Datenbank >  >> RDS >> Mysql

TEXT/BLOB in derselben Tabelle speichern oder nicht?

Update:Barracuda ist das Standard-InnoDB-Dateiformat seit Version 5.7.

Falls in Ihrer MySQL-Version verfügbar, verwenden Sie das InnoDB-Barracuda-Dateiformat mit

innodb_file_format=barracuda

in Ihrer MySQL-Konfiguration und richten Sie Ihre Tabellen mit ROW_FORMAT=Dynamic ein (oder Compressed ), um es tatsächlich zu verwenden.

Dadurch kann InnoDB BLOBs, TEXTs und größere VARCHARs außerhalb der Zeilenseiten speichern und wird so viel effizienter. Siehe diesen Blogartikel auf MySQLperformanceblog.com für weitere Informationen.

Soweit ich es verstehe, macht die Verwendung des Barracuda-Formats das Speichern von TEXT/BLOB/VARCHARs in separaten Tabellen aus Leistungsgründen nicht mehr gültig. Ich denke jedoch, dass es immer gut ist, die richtige Datenbanknormalisierung im Auge zu behalten.