172 похожих чатов

> Т.е. pruning здесь работает быстрее, если partitions очень много...

что уже само по себе проблема и до сих пор! ;)

что за проблема? не понял тут вашу мысль

> Т.е. (см. выше) можно сказать и так: "поэтому локальные индексы на секциях не заменяют частичные, хотя в случаях вроде https://t.me/pgsql/195871 — помогают". ;)

я имел в виду, что мотивация к секционированию для разбиения больших индексов имеет право на жизнь, что частичными индексами, сокращая размер, некоторые проблемы эффективного использования не решаются

1 ответов

6 просмотров

> что за проблема? не понял тут вашу мысль Даже проблемы, вообще-то. ;) . Partitioning — это, опять-таки, не "волшебная пыль". Т.е. некоторые таблицы/схемы партционировать без потери корректности просто невозможно (и кое-какие gotchas весьма неприятны, IMHO). . Просто по производительности — pruning для UPDATE/INSERT/DELETE не используется; сам он занимает время, и никак (в отличие от частичных индексов — я не обязан создавать их для тех диапазонов дат, которые мне не нужны, учтите) это время сократить нельзя; количество накладываемых (и, возможно, удерживаемых) locks для partitioning и индексации, насколько я помню, отличается минимум вдвое — не в пользу partitioning... может, ещё что-то забыл. ;) > мотивация к секционированию для разбиения больших индексов имеет право на жизнь Конечно, имеет. Партиционированием для очень больших таблиц нужно пользоваться, по-хорошему, и реальной альтернативы тут я не вижу — просто по совсем другим причинам, чем "производительность запросов" (она может и будет снижаться для некоторых из них), вот что я тут пытался донести. :) > что частичными индексами, сокращая размер, некоторые проблемы эффективного использования не решаются Конечно, не решаются. Мы тут обсуждали только индексы, вроде бы.

Похожие вопросы

Обсуждают сегодня

комрады, че-та лыжы не едут var tmpFont: TFont; begin tmpFont:= TFont.Create; try case rgFontColor.ItemIndex of 0: tmpFont.Color:= clWindowText; 1: tmpFo...
Ed Doc
34
Интересно, нет ли какого-то способа получить из dll не адрес самой метки, а адрес со смещением?
The Bird of Hermes
54
generic procedure function test<T>(param: T); type case T of longint: NewT = word; longword: NewT = byte; end; var v1: NewT; Как это можно сделать? Чтобы у меня...
notme
21
Делал задачу вот такую https://stepik.org/lesson/4985/step/9?unit=1083 получилось такое https://play.haskell.org/saved/ipKrepqe оно работает, тестов много не писал, но работае...
Fedor
22
Всем привет, прошу совета по сложившейся ситуации: Windows приложение подключается к БД MySQL используя Firedac. При работе с версией MySQL 5.7 все отлично, но когда подключаю...
Constantine
6
Ребята, ребятушки! Помогите Как ловить исключения такие? Вызов метода COM-объекта формирует исключение, try{}catch{} не помогает Необработанное исключение: System.AccessViolat...
notme
2
Всем добрый вечер. Нужна помощь с прикруткой telegram-vapor-bot к проекту Vapor. Удалось после старта приложения отправить тестовое сообщение в бот, вот только сразу после это...
advanc3d
3
program Project1; procedure generic_proc<T>(); begin end; begin generic_proc<Int64>(0); end. Я чет не понял, а как в Delphi сделать такое? процедуру-дженерик... PS: а на...
notme
10
Всем привет, все время юзал бандлы, но появилась задача по базовому образу и команда werf build не пушит образ werf build --config='./root/werf.yaml' --repo ${CI_REGISTRY_IMAG...
Илья Корж
4
Кстати, что FPC мешает сделать нормальные проперти в юнитаз, завызанные на переменные? Нет, инлайнинг геттеров и геттеров кажется работает в принципе, но это же сколько лишн...
Arioch The
8
Карта сайта