|
|
|
2-а запроса
|
|||
|---|---|---|---|
|
#18+
Добрый день. Моя задача добиться работы с нескольких машин одновременно. Брать строчку из большой базы работать, а потом удалять это увеличит базу из-за индекса + время работы со строкой велико и в это время другая машина может обратится к строке что приведёт к обработке одной строки 2-а раза. Поэтому Я подумал о перемещении нескольких строк в отдельную таблицу, и работа с ними будет проще и индекс будет маленький. Но тут возник вопрос во время выполнения 2-х запросов (INSERT INTO `test`.`test` SELECT * FROM `test`.`test2` LIMIT 10 ; DELETE FROM test LIMIT 10;) Может ли вклиниться другой такой же запрос и скопировать данные до удаления? И как этого избежать. PS пока писал придумал костыль но не думаю что таким образом городить это хорошо. Можно добавить строку и перед копированием просто изменить её с NOLL на значение, присвоенное машине. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2015, 01:46:50 |
|
||
|
2-а запроса
|
|||
|---|---|---|---|
|
#18+
Перефразирую (INSERT INTO `test`.`test` SELECT * FROM `test`.`test2` LIMIT 10 ; DELETE FROM test LIMIT 10;) Мне интересно при выполнении этих команд в одном запросе может ли вклиниться такой же запрос с другой системы? Предположим, что 2-е системы отправили запрос одновременно, тогда произойдёт копирование одинаковых данных и удаление не скопированных. Может ли такое произойти и как этого избежать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2015, 09:28:24 |
|
||
|
2-а запроса
|
|||
|---|---|---|---|
|
#18+
Фигнёй маешься. Лучше заведи ещё одно поле для резервирования записей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2015, 14:15:46 |
|
||
|
2-а запроса
|
|||
|---|---|---|---|
|
#18+
Akina, Может вы правы, но тогда на таблице будет большая нагрузка она не загнётся? Сейчас на одной таблице частое сканирование и добавление строк. На другой такой же это добавление строки один раз сканирование и удаление. Сейчас она работает очень быстро. Если Я загружу всё на одну таблицу может одна машина его не положит, но что произойдёт, когда машин будет 10? Я намекаю на то что когда делаешь что-то с таблицей допустим индекс всё намертво стоит, но обращение к другой таблице худо-бедно работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2015, 14:41:12 |
|
||
|
2-а запроса
|
|||
|---|---|---|---|
|
#18+
Snowman8526, из того, что ты написал, я не понял ни строчки. не майся дурью, не нужно ничего никуда копировать, открой курсор на каждом клиенте на select... for update, передай запись и обрабатывай . это для inno, а для myisam такое вообще не делается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.07.2015, 17:58:17 |
|
||
|
|

start [/forum/topic.php?desktop=1&fid=47&tid=1832982]: |
0ms |
get settings: |
5ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
49ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
24ms |
get tp. blocked users: |
1ms |
| others: | 192ms |
| total: | 291ms |

| 0 / 0 |
