|
|
|
атомарный апдейт
|
|||
|---|---|---|---|
|
#18+
зачастую возникает необходимость заполнить какой-то определенный столбец в таблице новыми данными, с одной стороны никаких проблем написать UPDATE запрос не возникает, но если таблица очень большая, то этот запрос на долго может залочить данные, что недопустимо. Можно, конечно, написать скрипт на каком-то ЯП или ту же функцию/процедуру в самом мускуле, но все это имеет лишний "геморрой". Может есть какой-то способ делать это проще? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2014, 15:04:49 |
|
||
|
атомарный апдейт
|
|||
|---|---|---|---|
|
#18+
Нет, либо апдейтить все целиком, либо в цикле блоками, другого варианта нет, насколько я понимаю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2014, 15:10:16 |
|
||
|
атомарный апдейт
|
|||
|---|---|---|---|
|
#18+
ну так innodb же многоверсионный и не лочит данные. в чем конкретно проблема ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2014, 15:27:21 |
|
||
|
атомарный апдейт
|
|||
|---|---|---|---|
|
#18+
netwindну так innodb же многоверсионный и не лочит данные. в чем конкретно проблема ?Так если нужно проапдейтить все записи, то все записи и будут залоченными. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2014, 15:30:06 |
|
||
|
атомарный апдейт
|
|||
|---|---|---|---|
|
#18+
netwindну так innodb же многоверсионный и не лочит данные. в чем конкретно проблема ? Все равно же будет транзакция и она будет долгая... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2014, 15:38:01 |
|
||
|
атомарный апдейт
|
|||
|---|---|---|---|
|
#18+
если делать апдейт большого кол-ва записей по частям, при помощи нескольких апдейтов - то атомарными будут только "куски" которые апдейтятся одной командой. А результирующий апдейт получится неатомарным. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2014, 16:35:26 |
|
||
|
атомарный апдейт
|
|||
|---|---|---|---|
|
#18+
chabapokесли делать апдейт большого кол-ва записей по частям, при помощи нескольких апдейтов - то атомарными будут только "куски" которые апдейтятся одной командой. А результирующий апдейт получится неатомарным. ну да, не правильно я выразился ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2014, 17:29:13 |
|
||
|
атомарный апдейт
|
|||
|---|---|---|---|
|
#18+
Hettchabapokесли делать апдейт большого кол-ва записей по частям, при помощи нескольких апдейтов - то атомарными будут только "куски" которые апдейтятся одной командой. А результирующий апдейт получится неатомарным. ну да, не правильно я выразился у меня храниться дерево в таблице по принципу ссылка на папу. удаление проиходит каскадно. а вот потомки узлов дерева, так как при удалении большей ветки ...этих потомков может статься на мильойны, а при удалении, тригером формируеться ещо одна таблица и апдейт происходит в другой, то событие в цикле удаляет по Н штук. и вот дабы избегать локов так и сделал. ЗЫ под вставкой понимаеться insert on duplicate key update, причом в большинстве случаев будет таки апдейт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2014, 18:17:29 |
|
||
|
атомарный апдейт
|
|||
|---|---|---|---|
|
#18+
автору меня храниться дерево в таблице по принципу ссылка на папу. удаление проиходит каскадно. а вот потомки узлов дерева, так как при удалении большей ветки ...этих потомков может статься на мильойны, а при удалении, тригером формируеться ещо одна таблица и апдейт происходит в другой, то событие в цикле удаляет по Н штук. и вот дабы избегать локов так и сделал. запомните это дети, и больше так не делайте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2014, 18:21:25 |
|
||
|
атомарный апдейт
|
|||
|---|---|---|---|
|
#18+
ScareCrowавтору меня храниться дерево в таблице по принципу ссылка на папу. удаление проиходит каскадно. а вот потомки узлов дерева, так как при удалении большей ветки ...этих потомков может статься на мильойны, а при удалении, тригером формируеться ещо одна таблица и апдейт происходит в другой, то событие в цикле удаляет по Н штук. и вот дабы избегать локов так и сделал. запомните это дети, и больше так не делайте. давай, расказывай как хранить в реляционной базе дерево правильно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2014, 18:33:48 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=38663747&tid=1834708]: |
0ms |
get settings: |
6ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
51ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
26ms |
get tp. blocked users: |
1ms |
| others: | 204ms |
| total: | 307ms |

| 0 / 0 |
