Мені потрібно видалити близько 2 мільйонів рядків зі своєї бази даних PG. У мене є список ідентифікаторів, які мені потрібно видалити. Однак будь-який спосіб, яким я намагаюся це зробити, займає дні.
Я спробував помістити їх у таблицю і робити це партіями по 100. Через 4 дні це все ще працює, видалено лише 297268 рядків. (Мені довелося вибрати 100 ідентифікаторів з таблиці ідентифікаторів, видалити, де В тому списку, видалити з таблиці ідентифікаторів 100, які я вибрав).
Я намагався:
DELETE FROM tbl WHERE id IN (select * from ids)
Це теж вічно. Важко підрахувати, на скільки часу, оскільки я не бачу, як це прогресується до кінця, але запит все ще працював через 2 дні.
Просто шукаю найефективніший спосіб видалення з таблиці, коли я знаю конкретні ідентифікатори, які потрібно видалити, і є мільйони ідентифікаторів.