Интересный тренд использовать dictionary-based compression в СУБД. Сейчас это обсуждают в Cassandra mailing list, ранее такую возможность добавила ScyllaDB в свою коммерческую версию. Наилучший эффект достигается, конечно же, на LSM дереве, т.к. только там мы имеем дело с достаточно большими объёмами в одном sstable и append-only работой с диском, но в целом ничего, кажется, не мешает применять и в B-деревьях. Основная проблема в реализации это создание и поддержка актуальных словарей - это бэкграунд работа, которая не должна влиять на производительность системы в целом. В shared-memory парадигме обеспечить конкурентный быстрый доступ к релевантному словарю может быть непросто. Если словарь утерян, расшифровать файл невозможно, поэтому необходимо обеспечить надёжное хранение словаря. В ScyllaDB для этого используется group0 - глобальная Raft группа объединяющая все узлы в кластере. Похожий принцип управления метаданными реализован и в Picodata.