|
блокировка чтения - в каком серванте можно ее исключить ?
|
|||
---|---|---|---|
#18+
Приветствую. С годом Белого Филина всех нас. Вопросы: 1/ Мне нужно понять как правильно сделать базу хранения и обновления прайсов (один прайс - одна таблица,кол_во полей разное но основные одни и те же, сборка юнионом, прайсов около сотни). Сейчас все крутиться на MSSQL но я имею серьезные проблемы с блокировками чтения - я не всегда могу обновить прайс в нагруженной среде. Есть ли в настройках кагонить сервера возможность снять блокировку чтения - прайсы обновляю вручную, автоматом и :) снова вручную когда на той стороне снова поменяли формат, но постоянно - от этого зависит конкурентная способность организации. 2/ к прайсам народ подбирается из MSAccess (кроме вебинтерфейса). Требуют возможность оставлять заметки для себя - временные. Ну и прочие хотелки. У серванта должна быть возможность вещать на вьюхи триггеры "вместо обновления" - хороший способ сделать обновляемым любой не обновляемый вью. 3/ почему-то интересно: MSSQL "хранит" базу в двух файлах .mdf(база) и .ldf(лог) - удобно: работаешь на домашнем, отэтачил, кинул на флеху, приэтачил в другом серванте....важно !!!. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2015, 11:47 |
|
блокировка чтения - в каком серванте можно ее исключить ?
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2015, 12:21 |
|
блокировка чтения - в каком серванте можно ее исключить ?
|
|||
---|---|---|---|
#18+
SangYongЕсть ли в настройках кагонить сервера возможность снять блокировку чтения 1. Можно сделать SET TRANSACTION ISOLATION LEVEL Read Uncommited, но лучше в select указать, что таблица NOLOCK А вообще-о у Вас каша какая-то, а не база. Почему каждый прайс в отдельной таблице? Почему блокировка при изменении прайса длится так долго, что мешает чтению? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2015, 12:36 |
|
блокировка чтения - в каком серванте можно ее исключить ?
|
|||
---|---|---|---|
#18+
Cat2, да каша - причина - форматы прайсов у всех разные с разными типами и с разными кол_вами полей - нужные только 5 - их привожу к единому типу остальные нужны некоторым эпизодически - например некоторые прайсы дают вес и локейшн. Процедуры обновления тоже разные для каждого прайса - для некотрых стоят шпиончики - сравнивают наличие прайсов и поплняют статистику по позициям. И вообще всё начиналось с двух прайсов - пошла тяга и только сейчас начал задумываться. Локи эпизодические - раз в неделю. Смотрю список блокировок и кил делаю. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2015, 14:41 |
|
блокировка чтения - в каком серванте можно ее исключить ?
|
|||
---|---|---|---|
#18+
Yo.!, ну да - есть что поизучать по 10-разу - всегда найдется недоперепонятое. Тема была вообще про известные кому-то еще какие-то серванты а не только про MSSQL. Мне нужно чтобы я тупо всегда мог сделать "делит всё" и "инсерт всё" не обращая внимания на чтецов. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2015, 14:47 |
|
блокировка чтения - в каком серванте можно ее исключить ?
|
|||
---|---|---|---|
#18+
SangYongТема была вообще про известные кому-то еще какие-то серванты а не только про MSSQL. Мне нужно чтобы я тупо всегда мог сделать "делит всё" и "инсерт всё" не обращая внимания на чтецов. Видишь ли, MS SQL это единственный сервер у которого есть проблемы с блокировкой читателей. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2015, 15:08 |
|
блокировка чтения - в каком серванте можно ее исключить ?
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, в кабрид заглянул - таж фишка не смогу ссылку щас дать - просто в доки их залез. если полезу в PG то меня будет еще кое-что интересовать ибо когда я туда лазил в последний раз там не было триггеров на вью инстид оф и еще чего-то - не помню - кажется селекта из процедуры...Да и перемещать базу как-то было не удобно ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2015, 15:31 |
|
блокировка чтения - в каком серванте можно ее исключить ?
|
|||
---|---|---|---|
#18+
SangYongв кабрид заглянул В куда?.. Ты бы ещё в FvMAS заглянул... Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
03.01.2015, 17:49 |
|
блокировка чтения - в каком серванте можно ее исключить ?
|
|||
---|---|---|---|
#18+
Cat2, NOLOCK выставил - скорость выполнения замедлилась примерно на 400 мс - не критично. Погонял фильтрацию через MSA - вроде пока таймаутов не наблюдаю. Гляну на процесс когда народ вернется в себя благодарен за обсуждение. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.01.2015, 17:20 |
|
блокировка чтения - в каком серванте можно ее исключить ?
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovSangYongТема была вообще про известные кому-то еще какие-то серванты а не только про MSSQL. Мне нужно чтобы я тупо всегда мог сделать "делит всё" и "инсерт всё" не обращая внимания на чтецов. Видишь ли, MS SQL это единственный сервер у которого есть проблемы с блокировкой читателей. Не единственный. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2015, 05:29 |
|
блокировка чтения - в каком серванте можно ее исключить ?
|
|||
---|---|---|---|
#18+
MasterZivНе единственный. А, ну да, есть ещё богом забытые Sybase, DB2, MyISAM и FvMAS. Но до этой экзотики аффтар точно не доберётся. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
09.01.2015, 12:44 |
|
блокировка чтения - в каком серванте можно ее исключить ?
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, mssql не единственный блокировочник, и блокировочники - не изгои индустрии СУБД, как ты это пытаешься представить, а нормальное явление. у каждой схемы разведения транзакций есть как плюсы, так и минусы. Если автор темы не умеет пользоваться транзакциями, это его проблемы, а не используемой СУБД. а он даже вопрос толком не может сформулировать. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.01.2015, 09:20 |
|
блокировка чтения - в каком серванте можно ее исключить ?
|
|||
---|---|---|---|
#18+
SangYong, подозрительно, что задача чтения райсов может не то что на MSSQL, а вообще на любом нынесущесвующем да и любом сервере выпущенным в последние 10 лет представлять проблему. Предположу, что клиенты лазят напрямую базу, шлют в нее прямые селекты и курсор/ресурсы не отпускают. Если он так, то конечно надо чуток изменить подход к чтению данных с клиента и тогда даже уровнями изоляции не придется заморачиваться (но безусловно тут тоже сразу подкрутить как надо). ... |
|||
:
Нравится:
Не нравится:
|
|||
11.01.2015, 17:33 |
|
блокировка чтения - в каком серванте можно ее исключить ?
|
|||
---|---|---|---|
#18+
Ggg_old, да в прайсы лезут напрямую - MSAccess (ODBC) и из локалки и снаружи. Ретранслируемый запрос отправляется серверу - прямой селект по условию. А как Вы бы посчитали более правильным ? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.01.2015, 14:00 |
|
блокировка чтения - в каком серванте можно ее исключить ?
|
|||
---|---|---|---|
#18+
SangYong, даже в этом случае при чтении данных блокировка shared снимается сразу же после чтения одной страницы данных. Также специально для того, чтобы select не мешал update-ту есть "ворота" для select -ов на таблице в виде update intent lock - несколько скелетов через нее проходят, потом"воротики закрываются" и select ы блокируются и не мешают update -у. так что тебе надо что- то в консерватории поправить. в смысле, ты что то делаешь совершенно не так. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2015, 08:54 |
|
|
start [/forum/topic.php?fid=35&tid=1552345]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
180ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 302ms |
0 / 0 |