У меня есть очень часто обновляемая таблица с 240 миллионами строк (и растет). Каждые три часа вставляются 1,5 миллиона строк и 1,5 миллиона удаляются. Когда я переместил кластер на твердотельный накопитель, время массовой вставки (с использованием копирования) сократилось с 22 до 2,3 минут. Время удаления также было улучшено. Я планирую делать это массовое обновление каждые два часа или каждый час.
Хотя производительность сейчас (после SSD) совместима с более частым обновлением, я прочитал несколько страшных историй о смерти SSD из-за ограниченной выносливости NAND в сочетании с усилением записи. Поскольку SSD стоят дорого, я бы хотел перенести их гибель как можно дальше в будущее. Отсюда мой вопрос: что на самом деле происходит с файлом на диске при удалении и последующем вакууме? Я предполагаю, что есть две записи на диск, одна для пометки строки как удаленной, а другая при очистке, чтобы пометить ее как доступную для перезаписи. Если бы вместо удаления и очистки я разделил таблицу, создавая и удаляя таблицы при каждой массовой вставке / удалении, я бы минимизировал износ SSD?
источник
Ответы:
Вы можете сэкономить на удалении и вакууме, если вы будете использовать умное разбиение! Убедитесь, что ваш дизайн совместим с удалением разделов вместо фактического удаления.
источник