PostgreSQLLa base de données la plus sophistiquée au monde.
Documentation PostgreSQL 16.6 » Interfaces client » Large Objects » Introduction

35.1. Introduction #

Tous les « Large Objects » sont enregistrés dans un seul catalogue système nommé pg_largeobject. Chaque « Large Object » a aussi une entrée dans la table système pg_largeobject_metadata. Les « Large Objects » peuvent être créés, modifiés et supprimés en utilisant une API de lecture/écriture très similaire à celle des opérations standards sur les fichiers.

PostgreSQL accepte aussi un système de stockage appelé « TOAST » qui stocke automatiquement les valeurs ne tenant pas sur un bloc de la base de données dans une aire de stockage secondaire par table. Ceci rend partiellement obsolète la fonctionnalité des « Large Objects ». Un avantage restant des « Large Objects » est qu'il autorise les valeurs de plus de 4 To en taille alors que les champs TOAST peuvent être d'au plus 1 Go. De plus, lire et mettre à jour des portions d'un « Large Object » se fait très simplement en conservant de bonnes performances alors que la plupart des opérations sur un champ mis dans la partie TOAST demandera une lecture ou une écriture de la valeur totale.