← ALB News · curated headline

TABLESAMPLE SYSTEM и LIMIT: выборка, которая не видит конец таблицы

Habr · RU · Programming · 10/26/2026, 2:19:29 PM

Нам нужно было дёшево оценить, какая доля строк большой таблицы обладает некоторым свойством. В нашем случае свойство — «значение похоже на персональные данные», но задача общая: профилирование данных, проверки качества, любая статистика по колонке. Читать таблицу на миллиард строк целиком ради одной доли дорого, и в PostgreSQL для этого есть TABLESAMPLE SYSTEM : он читает только часть страниц. Рецепт, который пишется сам собой, — посчитать процент страниц из оценки числа строк, взять его с запасом и ограничить результат LIMIT . Ровно так было написано и у нас. Выборка при этом тихо не видела конец таблицы, а в конце кучи обычно лежат самые свежие строки. Ниже — почему так происходит, насколько это много и как это чинится. Читать далее

Continue to Habr →

You are being forwarded in 6s — stay on this page