Re[12]: SQL 2005 стал быстрее с версионностью?
От: Merle Австрия http://rsdn.ru
Дата: 25.12.05 15:36
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Я почему-то думал, что ты разбираешься хотя бы в MSSQL.

Я воощем-то никогда и не пртендовал...

А>Уверяю тебя, что MARS (Multiple Active Result Sets) не имеет никакого отношения к нескольким одновременно живущим тр-циям в рамках одного коннекта.

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

А>Ещё раз прошу — отделяй тр-ции от операторов (резалтсетов etc), а то каша в твоей голове так там и останется

Вот от обсуждения качества каши попрошу воздержаться, уверяю, это не так сложно, я же сдерживаюсь, хотя, надо признаться, с трудом.
Мы уже победили, просто это еще не так заметно...
Re[14]: SQL 2005 стал быстрее с версионностью?
От: Merle Австрия http://rsdn.ru
Дата: 25.12.05 15:36
Оценка:
Здравствуйте, Аноним, Вы писали:

А> Особенно если учесть, что о работах по MVCC ты узнал пару дней назад — из этого топика и благодаря Алексу.



А>Я не люблю, когда люди говорят неправду о том, чего не понимают

Что именно из того что я сказал является по твоему неправдой? Я пытаюсь добиться внятного ответа на этот вопрос уже на протяжении нескольких постингов. Можно быть всетаки более конкретным? А то мой запас терпения потихоньку испаряется.

А>Ты утверждаешь, что IB\FB откатывает нечто в случае конфликта обновления.

Нет. Я утверждаю, что версионный механизм (не важно какой) вынужден откатывать в случае конфликта обновления на любых уровнях изоляции выше RC (он так устроен, за подробностями к Бернстайну, хотя бы). И что на практике известные мне версионники в большинстве случаев откатывают даже при RC.
Как меня совершенно корректно поправили в соседней подветке, в IB есть режимы которые позволяют не откатывать транзакцию. Отлично, я в IB не краевед, хорошо если так, но к поднятому здесь вопросу это имеет довольно посредственное отношение.

А>Ты не уточняешь что такое это нечто, но из твоих рассуждений очевидно, что ты не делаешь никакой разницы между откатом оператора и откатом тр-ции.

Во-первых я очень конкретно говорю, что именно откатывается, если это имеет значение в обсуждаемом контексте и даже специально уточняю. А во-вторых, то что я не делаю разницы — это не более чем плод чей-то довольно возмущенной фантазии.

А>В чём же я заблуждаюсь ?

Например, в том что: "...стиль программирования, прививаемый MSSQL'ом, не рекомендует явного управления тр-циями и мало кто из T-SQL кодеров пользуется запрещённым оператором BEGIN TRAN..."

А>SET XACT_ABORT это тоже параметр, задаваемый клиентом.

Давай ты тогда сначала дашь определение клиента, а заодно и сервера, а потом мы продолжим этот разговор, причем скорее всего в отдельной ветке.

А> Подумай хорошенько, перед тем как ошибаться опять.

Вот только давай без демагогии. Покажи, сначала, где я ошибся хоть один раз, потом поговорим.

А>Еще раз — перестань ставить знак равно между откатом оператора и тр-ции.

Покажи хоть одно место, где я его ставил.

А>А причём тут процесс ?

Понятно, дальше можешь не продолжать. Все вопросы снимаются, с темой предлагаю завязывать.

А> Только не нужно высказываться о IB\FB — ты совершенно не владеешь вопросом.

А я вообщем-то и не высказывался. Это вы тут налетели со своим IB на перевес вообще не разобравшись о чем идет речь, хотя я до последнего старался никаких конкретных серверов вообще неупоминать.
Мы уже победили, просто это еще не так заметно...
Re[15]: SQL 2005 стал быстрее с версионностью?
От: Аноним  
Дата: 25.12.05 16:27
Оценка: -2
Здравствуйте, Merle, Вы писали:

M>Здравствуйте, Аноним, Вы писали:


А>> Особенно если учесть, что о работах по MVCC ты узнал пару дней назад — из этого топика и благодаря Алексу.

M>

Т.е. не отрицаешь, ок. Может тогда не будешь мне повсюду предлагать перечитать эти работы ? А то создаётся впечатление, что ты знаешь и понимаешь их от коркм до корки... ложное впечатление однако...

А>>Я не люблю, когда люди говорят неправду о том, чего не понимают

M>Что именно из того что я сказал является по твоему неправдой? Я пытаюсь добиться внятного ответа на этот вопрос уже на протяжении нескольких постингов. Можно быть всетаки более конкретным?

Я несколько раз перечислил. Перечитай ветку и обрати внимание на то место, где я встрял. И спроси себя — а зачем он встрял

M>А то мой запас терпения потихоньку испаряется.


Вах! И что же будет ?

А>>Ты утверждаешь, что IB\FB откатывает нечто в случае конфликта обновления.

M>Нет. Я утверждаю, что версионный механизм (не важно какой) вынужден откатывать в случае конфликта обновления на любых уровнях изоляции выше RC (он так устроен, за подробностями к Бернстайну, хотя бы). И что на практике известные мне версионники в большинстве случаев откатывают даже при RC.
M>Как меня совершенно корректно поправили в соседней подветке, в IB есть режимы которые позволяют не откатывать транзакцию. Отлично, я в IB не краевед, хорошо если так, но к поднятому здесь вопросу это имеет довольно посредственное отношение.

Ё-маё... IB никогда сам не откатывает тр-цию ! Повтори себе это N раз. Или M

А>>Ты не уточняешь что такое это нечто, но из твоих рассуждений очевидно, что ты не делаешь никакой разницы между откатом оператора и откатом тр-ции.

M>Во-первых я очень конкретно говорю, что именно откатывается, если это имеет значение в обсуждаемом контексте и даже специально уточняю. А во-вторых, то что я не делаю разницы — это не более чем плод чей-то довольно возмущенной фантазии.

Да ? И где же ты хоть раз "очень конкретно" сказал ? Да хоть перечитай абзац выше

А>>В чём же я заблуждаюсь ?

M>Например, в том что: "...стиль программирования, прививаемый MSSQL'ом, не рекомендует явного управления тр-циями и мало кто из T-SQL кодеров пользуется запрещённым оператором BEGIN TRAN..."

Это не заблуждение. Это наблюдение. Можешь провести опрос.

А>>SET XACT_ABORT это тоже параметр, задаваемый клиентом.

M>Давай ты тогда сначала дашь определение клиента, а заодно и сервера, а потом мы продолжим этот разговор, причем скорее всего в отдельной ветке.

Мне есть чем заняться, поверь.

А>> Подумай хорошенько, перед тем как ошибаться опять.

M>Вот только давай без демагогии. Покажи, сначала, где я ошибся хоть один раз, потом поговорим.

Я разве мало показал ?

А>>Еще раз — перестань ставить знак равно между откатом оператора и тр-ции.

M>Покажи хоть одно место, где я его ставил.

Покажи хоть одно место, где ты его не ставил.

А>>А причём тут процесс ?

M>Понятно, дальше можешь не продолжать. Все вопросы снимаются, с темой предлагаю завязывать.

Давно пора

А>> Только не нужно высказываться о IB\FB — ты совершенно не владеешь вопросом.

M>А я вообщем-то и не высказывался. Это вы тут налетели со своим IB на перевес вообще не разобравшись о чем идет речь, хотя я до последнего старался никаких конкретных серверов вообще неупоминать.

Ок, спи спокойно

--
Хорсун Влад
Re[13]: SQL 2005 стал быстрее с версионностью?
От: Аноним  
Дата: 25.12.05 16:27
Оценка:
Здравствуйте, Merle, Вы писали:

А>>Уверяю тебя, что MARS (Multiple Active Result Sets) не имеет никакого отношения к нескольким одновременно живущим тр-циям в рамках одного коннекта.

M>Ну почему же, примерно такое же как и поднятая тобой тема к данному топику.

Я не обсуждаю топик. Это не заметно ?

M>Однако, радует уже то, что ты ходишь по указанным ссылкам, к сожалению не по всем, я говорил нетолько про MARS.


1. Ты не дал мне ни одной ссылки, так что рабоваться тебе нечему
2. Ты упомянул MARS в качестве ответа на мой вопрос об нескольких одновременно активных тр-циях в одном коннекте.
3. Я привёл совершенно конкретную цитату, в которой говорится об отсутствии этой фичи в Юконе. Ты думаешь, что в доке по ADO.NET или AsyncQuery она появится волшебным образом ?
4. Ты сознательно убираешь значимые цитаты из обсуждения ?

А>>Ещё раз прошу — отделяй тр-ции от операторов (резалтсетов etc), а то каша в твоей голове так там и останется

M>Вот от обсуждения качества каши попрошу воздержаться, уверяю, это не так сложно, я же сдерживаюсь, хотя, надо признаться, с трудом.

Та ради бога, тебе жить.
Я очень напуган (вдруг ты не сдержишься) и удаляюсь...

--
Хорсун Влад
Re[20]: SQL 2005 стал быстрее с версионностью?
От: Merle Австрия http://rsdn.ru
Дата: 25.12.05 19:53
Оценка:
Здравствуйте, dimitr, Вы писали:

D>Гммм. Они там по коммиту появляются, что-ли?

То есть по коммиту? По коммиту, удаляется из индекса старый ключ и вставляется новый.

Пока они молчат по поводу версий и индекса, вполне возможно что версия в ключе и присутствует, и когда они в доках пишут: "Row versioning information ... added to the database row", то под "database row" то имеется ввиду и ключ индекса, хотя вряд ли...

D>Не спорю. Но возможность есть.

Есть конечно, с этим никто и не спорит, но тут вопрос цены...
... [RSDN@Home 1.2.0 alpha rev. 619]
Мы уже победили, просто это еще не так заметно...
Re[14]: SQL 2005 стал быстрее с версионностью?
От: Merle Австрия http://rsdn.ru
Дата: 25.12.05 19:53
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>Я не обсуждаю топик. Это не заметно ?

Очень. Я так и не понял что ты обсуждаешь и если не топик, тогда вообще непонятно что ты здесь делаешь...

А>1. Ты не дал мне ни одной ссылки, так что рабоваться тебе нечему

Ну я все же надеюсь, что ты достаточно самостоятельный мальчик, чтобы воспользоваться BOL по ключевым словам.

А>3. Я привёл совершенно конкретную цитату, в которой говорится об отсутствии этой фичи в Юконе.

Только ты привел совершенно конкретную цитату из статьи описывающей бетту сиквела, а не релиз, а с тех пор там кое что поменялось. А во-вторых, ты даже эту статью прочитал не внимательно, там говорилось что это действительно не совсем параллельные транзакции, в том смысле, что сервер не может их двигать достаточно произвольно друг относительно друга, как он поступает с обычными транзакциями, а будет отдавать операторы на выполнение поочереди, переключаясь на другую транзакцию в строго определенных точках, но, тем не менее, это две совершенно самостоятельные транзакции.
Даже термин специальный ввели — batch transaction, который имеет смысл только для MARS-а. Так что на товй вопрос "И шо 2 тр-ции будут жить в одном коннекте ?", я совершенно верно ответил утвердительно, и абсолютно не понимаю твоих претензий...

А>4. Ты сознательно убираешь значимые цитаты из обсуждения ?

Ни одну значимую цитату из обсуждения я не убрал, благо значимого тут не много.

А>Я очень напуган (вдруг ты не сдержишься) и удаляюсь...

Ну слава байту, хоть бессмысленых споров на пустом месте не будет.
... [RSDN@Home 1.2.0 alpha rev. 619]
Мы уже победили, просто это еще не так заметно...
Re[16]: SQL 2005 стал быстрее с версионностью?
От: Merle Австрия http://rsdn.ru
Дата: 25.12.05 19:53
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>Т.е. не отрицаешь, ок.

Ну а чего бисер метать, если тебе так удобнее, считай что я в этом не разбираюсь..

А> Может тогда не будешь мне повсюду предлагать перечитать эти работы ?

Почитай-почитай, очень полезно для расширения кругозора.

А>И спроси себя — а зачем он встрял

Вот это я понять отчаялся, ты тоже молчишь... Время просто убиваешь?

А>Вах! И что же будет ?

Да не многое, подветка уедет в мусорку и разговор прекратится.

А>Ё-маё... IB никогда сам не откатывает тр-цию ! Повтори себе это N раз. Или M

Да хоть X. Мне совершенно однофигственно что там делает IB, благо в соседней подветке с этим уже разобрались, без чужой помощи и истерик.
Хотя в данном случае действительно описался, не транзакцию, а запрос, конечно же.

А>Да ?

Да.

А> И где же ты хоть раз "очень конкретно" сказал ?

Везде где это имело значение.

А>Это не заблуждение.

Заблуждение.

А> Это наблюдение.

Значит не так или не за теми наблюдал.

А>Мне есть чем заняться, поверь.

Понятно, ко всем прочим недостаткам ты еще и оперируешь терминами не утруждая себя из объяснением. В таких условиях разговор в принципе смысла не имеет.

А>Я разве мало показал ?

Кроме экспрессии не по делу и нескольких не очень аккуратных высказываний ты не показал ничего.

А>Покажи хоть одно место, где ты его не ставил.

Я его не ставил нигде, это все чъя-то бурная фантазия или другие ингредиенты...
... [RSDN@Home 1.2.0 alpha rev. 619]
Мы уже победили, просто это еще не так заметно...
Re[20]: SQL 2005 стал быстрее с версионностью?
От: Merle Австрия http://rsdn.ru
Дата: 25.12.05 22:24
Оценка:
Здравствуйте, dimitr, Вы писали:

D>Гммм. Они там по коммиту появляются, что-ли?

Все таки чуть-чуть прогнал, "Index rows can be versioned as well as data rows"...
Так что на ключах индекса так же сидят версионные метки и они по честному уезжают в отдельное version store heap по мере устаревания.
... [RSDN@Home 1.2.0 alpha rev. 619]
Мы уже победили, просто это еще не так заметно...
Re[21]: SQL 2005 стал быстрее с версионностью?
От: dimitr Россия  
Дата: 25.12.05 23:11
Оценка:
Merle,

M> Так что на ключах индекса так же сидят версионные метки

M> и они по честному уезжают в отдельное version store heap
M> по мере устаревания.

Соответственно, при обновлении мной неиндексированного поля А, в индексе изменяются ключи индексированных полей B, C, ..., X?
Re[15]: SQL 2005 стал быстрее с версионностью?
От: dimitr Россия  
Дата: 25.12.05 23:22
Оценка:
Merle,

M> на твой вопрос "И шо 2 тр-ции будут жить в одном коннекте ?",

M> я совершенно верно ответил утвердительно, и абсолютно не понимаю
M> твоих претензий...

Дело в том, что "нормальные пацаны" в упор не понимают специфического отношения MS к транзакциям и коннектам. Ты в данном случае отмазываешься (термин не в обиду), цепляясь к словам. Типа честно ответил "будут жить". А уж как будут — меня не спрашивали. А, как достаточно очевидно даже ораклоидам , речь про полную независимость транзакций от коннектов. Чего MS сделать, похоже, пока никак не могёт. Или не хотит — тут не мне судить.

ЗЫ. Если несогласен, то предлагаю продолжить оффтопик в новой ветке...
Re[16]: SQL 2005 стал быстрее с версионностью?
От: dimitr Россия  
Дата: 25.12.05 23:25
Оценка:
D> речь про полную независимость транзакций от коннектов

Некорректно сказал, прицепиться можно Но надеюсь, что мысль все поняли
Re[15]: SQL 2005 стал быстрее с версионностью?
От: dimitr Россия  
Дата: 25.12.05 23:29
Оценка:
Merle,

M> не релиз, а с тех пор там кое что поменялось


Иван, ну хоть скажи, что изменилось-то? Ты ведь владеешь информацией. А то как дети, ей богу.
Re[21]: SQL 2005 стал быстрее с версионностью?
От: dimitr Россия  
Дата: 25.12.05 23:32
Оценка:
Merle,

M> То есть по коммиту? По коммиту, удаляется из индекса

M> старый ключ и вставляется новый.

Т.е. если (берем эту ситуацию абстрактно, вне привязки к Юкону) я обновил таблицу и потом по ней делаю селект, я должен (а) не увидеть своих же изменений (мой ключ не попал в индекс) или (б) пойти фуллсканом? Так что ли? Весело, однако...
Re[16]: SQL 2005 стал быстрее с версионностью?
От: _d_m_  
Дата: 26.12.05 01:43
Оценка: +1
Здравствуйте, Аноним, Вы писали:

А>>>В чём же я заблуждаюсь ?

M>>Например, в том что: "...стиль программирования, прививаемый MSSQL'ом, не рекомендует явного управления тр-циями и мало кто из T-SQL кодеров пользуется запрещённым оператором BEGIN TRAN..."

А>Это не заблуждение. Это наблюдение. Можешь провести опрос.


Давай ты там не будешь подписываться за MSSQL кодеров, к которым ты не имеешь никакого отношения и ничего не знаешь о них. Наблюдательный ты наш.
Re: А если + пара-тройка отчетников или аналитиков ?
От: vgrigor  
Дата: 26.12.05 07:56
Оценка:
А если + пара-тройка отчетников или аналитиков ?


Есть в списке задач отчеты как раз на уровне 20%,

какие в данном случае могут быть рекомендации по эффективности с версионностью ?

А аналитики могут случиться в будущем. Хотя немного.
Чего тогда ?

_______________

Надо сказать вынос обработки внутренних проблем задачи на верхний уровень клиента —
очень плохая практика в программировании вообще. ООП, структурность, разделение уровней.... и.т.п.

Сейчас крайне важна также хорошая структуризованность кода,
иначе все будет неподдерживаться и из-за сложностей падать,
и много времени разрабатываться.

Поэтому если в версинности приходится обрабатываться "просто веселости внутренней обработки"
то это крайне плохой стиль,
который может быть оправдан только крайне высокой производительностью
в некоторых солучаях, но я так понимаю этого нет ?
Винтовку добудешь в бою!
Re[22]: SQL 2005 стал быстрее с версионностью?
От: Merle Австрия http://rsdn.ru
Дата: 26.12.05 09:03
Оценка:
Здравствуйте, dimitr, Вы писали:

D>Соответственно, при обновлении мной неиндексированного поля А, в индексе изменяются ключи индексированных полей B, C, ..., X?

Зачем им изменяться? При обновлении неиндексированного поля индекс не трогается, соответственно там ничего не меняется.
... << RSDN@Home 1.2.0 alpha rev. 0>>
Мы уже победили, просто это еще не так заметно...
Re[16]: SQL 2005 стал быстрее с версионностью?
От: Merle Австрия http://rsdn.ru
Дата: 26.12.05 09:03
Оценка:
Здравствуйте, dimitr, Вы писали:

D>Иван, ну хоть скажи, что изменилось-то? Ты ведь владеешь информацией. А то как дети, ей богу.

Да немного. Просто они подчистили поведение с транзакциями и ввели эти самые batch transaction, которые отличаются от обычных только тем, что если они явно открыты в пакете, то в этом же пакете должны быть явно закрыты, и работают "параллельно" с другими транзакциями в том же коннекте так, как я описал в предыдущем ответе.
... << RSDN@Home 1.2.0 alpha rev. 0>>
Мы уже победили, просто это еще не так заметно...
Re[16]: SQL 2005 стал быстрее с версионностью?
От: Merle Австрия http://rsdn.ru
Дата: 26.12.05 09:03
Оценка:
Здравствуйте, dimitr, Вы писали:

D>Дело в том, что "нормальные пацаны" в упор не понимают специфического отношения MS к транзакциям и коннектам.

А чего тут не понимать? Все просто как рельс..

D> Ты в данном случае отмазываешься (термин не в обиду), цепляясь к словам.

Ну а чего мне еще остается? Уводят всячески разговор в сторону цепляясь непонятно к чему — какой вопрос, такой и ответ...

D> Чего MS сделать, похоже, пока никак не могёт. Или не хотит — тут не мне судить.

Как бы подвох в том, что правило один коннект — одна активная транзакция, вообщем-то никому и не мешало. Даже сейчас MARS ввели, по большему счету, не для того чтобы таки это ограничение снять, а в качестве замены серверным курсорам.
Другое дело, что MARS потенциально можно нарастить до действительно независимых транзакций в одном конекте, но они будут еще долго думать по этому поводу, так как польза не очевидна, а программная модель усложнится.
... << RSDN@Home 1.2.0 alpha rev. 0>>
Мы уже победили, просто это еще не так заметно...
Re[23]: SQL 2005 стал быстрее с версионностью?
От: dimitr Россия  
Дата: 26.12.05 10:07
Оценка:
Merle,

M> Зачем им изменяться? При обновлении неиндексированного поля индекс

M> не трогается, соответственно там ничего не меняется.

Новая версия записи будет иметь другую метку транзакции. А раз метка входит в ключ, то ключ должен поменяться.

Есть запись (PK, COL) = (1, 1), закоммиченная транзакцией #10. Транзакция #11 меняет значение поля COL на 2. Как теперь индексным сканом по PK определить, что значение PK=1 относится к обоим версиям записи?
Re[17]: SQL 2005 стал быстрее с версионностью?
От: dimitr Россия  
Дата: 26.12.05 10:28
Оценка:
Merle,

M> Как бы подвох в том, что правило один коннект -

M> одна активная транзакция, вообщем-то никому и не мешало

Не надо говорить за всех. Это мешает тем, кто знает, что можно по другому. И эффективно этим пользуется на "более других" серверах.

Впрочем, это вы с Владом обсуждайте, если интересно Мне от этой темы не горячо и не холодно.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.