Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 5 [6] 7 8 9 10 .. 12   вперед  Ctrl      все
 Re: MySQL и Firebird для Web  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
Dimitry Sibiryakov

Gluk (Kazan)
я спрашивал как дела с update-ом и insert-ом
мне сказали намана - вроде все довольны ??? или нет ?

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

А вот знают ли разработчики MySQL способы обхода запрета на DML в триггерах - вопрос пока
без ответа.


ну яж так и говорю - все довольны
5 авг 10, 13:37    [9215213]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54791

Gluk (Kazan)
Надо :)

А чоб не объяснить Особенно если юродствовать перестанешь.
Применяется просто. В момент начала транзакции, фиксируется её номер и все данные для
выполнения этого запросов подчиняются общим правилам видимости для транзакции с данным
номером. insert (и update тоже) просто видят то, что и любой другой запрос в данной
транзакции. Есть правда толстый нюанс с видимостью изменений, произведённых в той же
транзакции, но кто-ж сказал, что надо делать именно как в Firebird???

Posted via ActualForum NNTP Server 1.4

5 авг 10, 13:42    [9215281]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
Dimitry Sibiryakov

Gluk (Kazan)
Надо :)

А чоб не объяснить Особенно если юродствовать перестанешь.
Применяется просто. В момент начала транзакции, фиксируется её номер и все данные для
выполнения этого запросов подчиняются общим правилам видимости для транзакции с данным
номером. insert (и update тоже) просто видят то, что и любой другой запрос в данной
транзакции. Есть правда толстый нюанс с видимостью изменений, произведённых в той же
транзакции, но кто-ж сказал, что надо делать именно как в Firebird???


Если не возражаешь, я послушаю, что скажет hvlad
5 авг 10, 13:44    [9215306]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Yo.!
Guest
Dimitry Sibiryakov

А чоб не объяснить Особенно если юродствовать перестанешь.
Применяется просто. В момент начала транзакции, фиксируется её номер и все данные для
выполнения этого запросов подчиняются общим правилам видимости для транзакции с данным
номером. insert (и update тоже) просто видят то, что и любой другой запрос в данной
транзакции.


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

Dimitry Sibiryakov

Есть правда толстый нюанс с видимостью изменений, произведённых в той же
транзакции, но кто-ж сказал, что надо делать именно как в Firebird???

ну-ну, и в чем же заключается защита от произведенных изменений ? как решена проблема мутаций ? ты главное не пропадай !
5 авг 10, 13:51    [9215412]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54791

Yo.!
в чем собственно отличие такого поведения от любой другой версионной субд ?

В отсутствии запрета на чтение таблиц из триггеров.

Posted via ActualForum NNTP Server 1.4

5 авг 10, 13:57    [9215485]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Yo.!
Guest
Dimitry Sibiryakov

В отсутствии запрета на чтение таблиц из триггеров.


я потрясен и у меня просто открылись глаза. ведь firebird действительно решил проблему мутировавших данных! он просто читатет мутировавшие данные и в этом и есть решение !!
спасибо дорогой, у меня просто открылись глаза, а эти индусы в оракле просто ничего не смыслат, наворотили не нужных проверок, жить эксепшенами мешают, а ведь можно так просто решить проблему - просото читать муйню тихо молча, никого не раздражая. как же я не понимал такую простую истину
5 авг 10, 14:06    [9215597]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
hvlad
Member

Откуда:
Сообщений: 11554
Gluk (Kazan)
hvlad

Gluk (Kazan)
Я говорил, что ее можно применить, для решения этих нежданчиков (что собственно Oracle и делает)
Как он это делает, объяснять надеюсь не надо ???
А объясни убогому, может америку откроем.

PS Решение этой проблемы в разработке, оно обкатывается. И конкретно для insert версионность не нужна. Вот для update\delete - да, помогает.


А чоб не объяснить Особенно если юродствовать перестанешь.
Я и не начинал :)

Gluk (Kazan)
Применяется просто. В момент начала SQL-запроса, фиксируется SCN и все данные для выполнения этого запроса берутся из блоков согласованными на момент этого SCN. insert (и update тоже) просто не видят то что они наизменяли физически.
Многовато-же блоков приходится ему запоминать...

Gluk (Kazan)
Есть правда толстый нюанс с миниоткатами, но кто-ж сказал, что надо делать именно как в Oracle???
Именно так в Firebird не сделано, причём сознательно. Считается, что прикладной разработчик сам в состоянии обработать конфликт обновления и решить - повторять ему запрос или нет.


Firebird (думаю как и все остальные транзакционные СУБД) имеет (в основном в памяти) лог изменений, сделанных каждым запросом (undo-log).
Конкретно для insert'ов это разреженный битмап с номерами вставленных записей. Использовать его для корректной работы insert from select не просто, а очень просто.
Для отслеживания изменений, произведенных update\delete, используется всё тот же undo-log. Иногда бекверсия хранится прямо в нём, иногда приходится доставать её с диска (в основном из кеша, конечно). Расписывать подробности пока не хочу.

Так что для insert from select версионность никак не нужна :)
5 авг 10, 14:09    [9215627]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
hvlad
Многовато-же блоков приходится ему запоминать...


Бесплатных пирожных не завезли

hvlad

...
Так что для insert from select в FB версионность никак не нужна :)


не нужна, так не нужна ...
5 авг 10, 14:16    [9215703]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54791

Yo.!

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

Читать муйню они не хотят, читать "данные ... согласованными на момент этого SCN" - не
могут. Индусы, что с них возьмёшь...

Posted via ActualForum NNTP Server 1.4

5 авг 10, 14:29    [9215876]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
Dimitry Sibiryakov

Yo.!

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

Читать муйню они не хотят, читать "данные ... согласованными на момент этого SCN" - не
могут. Индусы, что с них возьмёшь...


Ну видать индусы и умные попадаются :)
Индия большая
5 авг 10, 14:47    [9216089]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54791

Gluk (Kazan)
Ну видать индусы и умные попадаются :)
Индия большая

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

Posted via ActualForum NNTP Server 1.4

5 авг 10, 14:54    [9216170]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Yo.!
Guest
Dimitry Sibiryakov

Читать муйню они не хотят, читать "данные ... согласованными на момент этого SCN" - не
могут. Индусы, что с них возьмёшь...

на уровне serializable SCN согласован, но мутация из-за своих же изменений происходит, может ты предлагаешь забив на любые изменения своей транзакции ? отличный солюшен был бы
5 авг 10, 14:54    [9216172]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54791

Yo.!
мутация из-за своих же изменений происходит,

Ты открыл мне глаза! Мутации происходят из-за своих изменений! А нестабильность курсора -
из-за чужих. Чудо! Стабильность курсора не в состоянии справиться с мутациями! Мутации
запрещены чтобы не дай бог курсор не дестабилизировался. Ценой стабильности курсора
являются мутации. Логика - сила!

И эти люди удивляются, что Firebird не хочет покупать стабильность курсора такой ценой...

Posted via ActualForum NNTP Server 1.4

5 авг 10, 14:59    [9216224]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
Dimitry Sibiryakov

Gluk (Kazan)
Ну видать индусы и умные попадаются :)
Индия большая

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


Да нет, это как раз умное решение. Не гениальное, но умное.
В отличие от неумного решения позволять читать несогласованную "муйню"
5 авг 10, 15:24    [9216510]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Yo.!
Guest
Dimitry Sibiryakov

И эти люди удивляются, что Firebird не хочет покупать стабильность курсора такой ценой...

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

Dimitry Sibiryakov

Ценой стабильности курсора являются мутации.

вот это интересно, не поделишься ли своим виденьем этой цены ? типа отсутствие стабильности курсора в запросе оправдывает позволение читать мутируюшие данные или родилась более глубокая мысль ? у меня попкорн не закончился :-)
5 авг 10, 15:30    [9216600]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54791

Gluk (Kazan)
Да нет, это как раз умное решение. Не гениальное, но умное.
В отличие от неумного решения позволять читать несогласованную "муйню"

Что означает, что позволить "читать данные, согласованными на момент этого SCN" - решение
неумное. Ну-ну...

Posted via ActualForum NNTP Server 1.4

5 авг 10, 16:32    [9217352]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
Dimitry Sibiryakov

Gluk (Kazan)
Да нет, это как раз умное решение. Не гениальное, но умное.
В отличие от неумного решения позволять читать несогласованную "муйню"

Что означает, что позволить "читать данные, согласованными на момент этого SCN" - решение
неумное. Ну-ну...


Ну-ну, меня несколько обескураживает Ваша логика (расшифруете логический вывод?)
Позволить читать данные согласованными на момент начала запроса это гениальное решение.
К сожалению, индусы сподобились выдать только умное.

Неумное решение - позволить читать несогласованные данные
5 авг 10, 16:48    [9217515]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54791

Gluk (Kazan)

Позволить читать данные согласованными на момент начала запроса это гениальное решение.
К сожалению, индусы сподобились выдать только умное.

Т.е. на всех таблицах они сподобились на гениальность, а вот на ту, для которой был вызван
DML у них гениальности не хватило.


Gluk (Kazan)
Неумное решение - позволить читать несогласованные данные

Несогласованные с чем? С мнением Ё? Эти данные не нарушают RI, так в чём же их
"несогласованность"?

Posted via ActualForum NNTP Server 1.4

5 авг 10, 16:57    [9217587]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
Dimitry Sibiryakov

Несогласованные с чем? С мнением Ё? Эти данные не нарушают RI, так в чём же их
"несогласованность"?


В том, что данные вставленные insert-ом еще не существовали, на момент начала запроса.
В том что изменения выполненные update-ом еще не существовали на момент его начала.
5 авг 10, 17:01    [9217616]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54791

Gluk (Kazan)

В том, что данные вставленные insert-ом еще не существовали, на момент начала запроса.
В том что изменения выполненные update-ом еще не существовали на момент его начала.

И в чём же "несогласованность"? Да, не существовали. Они так же не существовали на момент
старта транзакции. Как сказал Ё: "может ты предлагаешь забив на любые изменения своей
транзакции ? отличный солюшен был бы"

Posted via ActualForum NNTP Server 1.4

5 авг 10, 17:27    [9217905]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Siemargl
Member

Откуда: 010100
Сообщений: 6640
hvlad
Многовато-же блоков приходится ему запоминать...

Ага, есть интересная проблема (фича) "большой АНДЫ", которую и хрен шринкуешь потом и откатываться может сутками )
hvlad
Firebird (думаю как и все остальные транзакционные СУБД) имеет (в основном в памяти) лог изменений, сделанных каждым запросом (undo-log).
Конкретно для insert'ов это разреженный битмап с номерами вставленных записей. Использовать его для корректной работы insert from select не просто, а очень просто.
Для отслеживания изменений, произведенных update\delete, используется всё тот же undo-log. Иногда бекверсия хранится прямо в нём, иногда приходится доставать её с диска (в основном из кеша, конечно). Расписывать подробности пока не хочу.


Интересно, а памяти как хватает при массовых операциях, см.как у Оракла?

ЗЫ. Надо каждый топик в "Сравнении СУБД" вовремя форкать, чтобы опять не скатывался в орафайресрач )
5 авг 10, 18:04    [9218377]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
hvlad
Member

Откуда:
Сообщений: 11554
Siemargl
Интересно, а памяти как хватает при массовых операциях, см.как у Оракла?
Промежуточные бекверсии переливаются на диск, после превышения некоторого порога в памяти.
5 авг 10, 18:24    [9218541]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Di_LIne
Member

Откуда: Тропик Скорпиона
Сообщений: 32554
Читал-читал-читал...
Но так и не вкурил, почему ПРИНЦИПИЯЛЬНО нельзя использовать СУБД, успешно используемую во многих офф-лайн системах и интранетах, на Веб-сервере в инете? (со всеми её потрохами)

Ответ: - Нету хостеров - не взачиот.
Так как, кто тебе мешает быть сам-себе-хостер, кроме собственной лени...

Паралеьно второй вопрос, с пируетом на 180о...
- Почему столь успешно юзаемая в он-лайне СУБД, не приживается в офф-лайне?
5 авг 10, 19:04    [9218841]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
Siemargl
Member

Откуда: 010100
Сообщений: 6640
1. Виртуальный сервер - дорого. SQL2008 vs VPD для FB.
2.Возможно, потому что по сути гуано? Разработчики избалованы, им фичи подавай, удобства там, визуализацию.
5 авг 10, 19:26    [9218982]     Ответить | Цитировать Сообщить модератору
 Re: MySQL и Firebird для Web  [new]
kdv
Member

Откуда: iBase.ru
Сообщений: 30253
Siemargl
Виртуальный сервер - дорого. SQL2008 vs VPD для FB.

это всего-лишь тарифы такие. VPD начинается за 800 руб там, где SQL2008 кончается за 1400 руб. То есть, грубо говоря с SQL2008 тарифы до 700 руб это просто замануха.

К сожалению, это только моя теория, интересно было бы посмотреть для каких задач могут использоваться тарифы SQL до 700р в месяц.
5 авг 10, 20:22    [9219175]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 5 [6] 7 8 9 10 .. 12   вперед  Ctrl      все
Все форумы / Сравнение СУБД Ответить