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

Вопрос из разряда и спросила кроха что такое хорошо, а

что такое плохо...
Что лучше апдейт 10 строк 10ю операторами апдейт или 1 оператором за раз сразу 10 строк? А если строк сотни миллионов? Все обернуто в одну транзакцию. Возьмем бд где нет тригеров функций и все кристально чисто. Вот одна таблица и вот в ней такое кол во строк и больше ничего. Чисто абстракция с розовыми понями.
Упд. Под что лучше, хрчеься услышать весь путь который пройдет постгри и какие сложности его ждут

14 ответов

22 просмотра

Сотни миллионов в апдейт?

P- Автор вопроса
Konstantin Zaitsev
Сотни миллионов в апдейт?

Почему нет? From в апдейте позволяет многое

P
Почему нет? From в апдейте позволяет многое

Я уточнил) 10 из 100 миллионов и все 100 миллионов разная постановка)

P- Автор вопроса
Konstantin Zaitsev
Я уточнил) 10 из 100 миллионов и все 100 миллионов...

А нет. Тут имеется в виду мы либо будем 100 млн раз вызывать апдейт для строк или один апдейт на 100 млн. Условно говоря задачу из крайности в крайность как черное и белое

Для начала лучшэ то, что вы лучшэ понимаете и что вам проще читать.

P- Автор вопроса
Ilya Anfimov
Для начала лучшэ то, что вы лучшэ понимаете и что ...

Мне просто интересно узнать всю цепь действий постгри в двух сценариях

P
Мне просто интересно узнать всю цепь действий пост...

Одна и тоже почти. У вас одна транзакция

P
Мне просто интересно узнать всю цепь действий пост...

Ну, начните с explain. Потом в исходники -- по указанным там методам доступа. Потом -- в книгу Рогова или кого ещё по внутренностям постгреса. Через эту тысячу страниц у вас начнёт появляться некоторое понимание процэссов...

P
Мне просто интересно узнать всю цепь действий пост...

Я, например, не понял, в чём состоят эти сценарии, особенно "один апдейт на 100 млн строк". Что имелось в виду — огромный statement вида: WITH upd1 AS (UPDATE x SET y = 'z' WHERE id = 1), upd2 AS (UPDATE x SET z = 'v' WHERE id = 2), ... upd99999999 AS (...) UPDATE x SET y = 'foobar' WHERE id = 100000000; ? Или UPDATE x SET y = 5 WHERE id <= 100000000;, или какой-то другой вариант (тут много чего можно придумать)?

Про батчинг почитайте

Konstantin Zaitsev
Да может он и не нужен.

Ну я и не говорю что всегда нужен, вопрос выше абстрактный слишком

P- Автор вопроса
Yaroslav Schekin
Я, например, не понял, в чём состоят эти сценарии,...

1 вариант, который вы описали это именно он Упд. вру, не внимательно прочитал.

P
1 вариант, который вы описали это именно он Упд. ...

Ну так это не сработает, т.к. statement такого размера (если я правильно прикинул, сколько это для 100M rows) PostgreSQL просто не выполнит. > Упд. вру, не внимательно прочитал. Ну так вот то-то и оно, что ответ может сильно зависеть от конкретного варианта...

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта