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

Поперли - в смысле у одного из клиентов
30 авг 11, 17:07    [11202338]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
.ЛП
Guest
2 SergSuper
я так понимаю что база всегда консистентная, просто у всех остается база на разное время

Нет.
На одном компе "своя" транзакция №5 (5а), и дальнейшие 6, 7, и т.д.
На других компах "другая" транзакция №5 (5б), и дальнейшие 6, 7, и т.д.
Причём 6, 7, и т.д. могут зависить от 5б. Которая на одном из компов получилась не 5б, а 5а. И этот комп в один прекрасный момент возьмёт и сервером станет, распространив на новых клиентов несогласованную информацию.
И никто об этом не узнает, пока жареный петух в жопу не клюнет.

---------------------------

2 интересующаяся_мнением
Цитата от разработчика:

"Я не признаю систему, которую можно выключить централизованно. В живом мире система должна сохранять признаки жизни, даже если более 50% ее уничтожено".
На эту тему, разработчики очень любят рассказывать байку о том, как у них в лихие девяностые тупо поперли все компы, на которых была установлена их бухгалтерия. База сохранилась на компе в соседней комнате, до которого не добрались :)

Как вам такая точка зрения?

Цитата от другого разработчика:
"Неважно, насколько быстро работает ваша программа, если она работает неправильно".

Это конечно хорошо, если даже при выходе из строя 50% системы она продолжает жить.
Но у вас то она не продолжает жить (а только "признаки жизни сохраняет") - при выходе из строя всего-лишь двух компутеров ("сервера" и последнего "клиента").

Что до сохранения базы на компутере, который в лихие девяностые не нашли - хосспадя, делайте бекапы на сервер в Алабаме.
30 авг 11, 17:33    [11202511]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
SergSuper
Member

Откуда: SPb
Сообщений: 5488
.ЛП
2 SergSuper
я так понимаю что база всегда консистентная, просто у всех остается база на разное время

Нет.
На одном компе "своя" транзакция №5 (5а), и дальнейшие 6, 7, и т.д.
На других компах "другая" транзакция №5 (5б), и дальнейшие 6, 7, и т.д.
Причём 6, 7, и т.д. могут зависить от 5б. Которая на одном из компов получилась не 5б, а 5а. И этот комп в один прекрасный момент возьмёт и сервером станет, распространив на новых клиентов несогласованную информацию.
И никто об этом не узнает, пока жареный петух в жопу не клюнет.

тут еще вопрос что у них транзакцией считается
возможно что транзакция должна подтверждаться(и нумероваться) сервером и тогда 5-я транзакция может быть только на одном компьютере
вобще странно что самим разработчикам не снизойти до прямого общения
30 авг 11, 17:51    [11202636]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
.ЛП
Guest
SergSuper
тут еще вопрос что у них транзакцией считается
возможно что транзакция должна подтверждаться(и нумероваться) сервером и тогда 5-я транзакция может быть только на одном компьютере

Ещё раз.
Клиент создал транзакцию. Отправил её на сервер. Сервер её пронумеровал (№5). Подтвердил клиенту, дескать всё ок, транзакцию принял, ща буду её всем бродкастить. Клиент выключился. Сервер умер. Новый сервер (из числа живых клиентов) будет нумеровать с номера 5. Включившийся завтра клиент откуда будет знать, что его транзакция №5 - она совсем не та, что №5 у нового сервера?

З.Ы. Кстати.... бродкасты они такие бродкасты... через маршрутизатор то они хоть пролезут, эти бродкасты? Или архитектура системы форсирует использование строго в одном сегменте локальной сети, без никаких маршрутизаторов? Дык таких ограничений на себя не накладывают даже файл-серверные системы...
30 авг 11, 17:59    [11202695]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
SergSuper
Member

Откуда: SPb
Сообщений: 5488
.ЛП
SergSuper
тут еще вопрос что у них транзакцией считается
возможно что транзакция должна подтверждаться(и нумероваться) сервером и тогда 5-я транзакция может быть только на одном компьютере

Ещё раз.
Клиент создал транзакцию. Отправил её на сервер. Сервер её пронумеровал (№5). Подтвердил клиенту, дескать всё ок, транзакцию принял, ща буду её всем бродкастить. Клиент выключился. Сервер умер. Новый сервер (из числа живых клиентов) будет нумеровать с номера 5. Включившийся завтра клиент откуда будет знать, что его транзакция №5 - она совсем не та, что №5 у нового сервера?
возможно подтверждение клиенту приходит как раз с этим бродкастом
но вобще да, какая-то вероятность получить что-то нехорошее существует
30 авг 11, 18:53    [11202962]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
.ЛП,
Ну не сгущайте краски-то так :)
На самом деле не все так страшно, как вы описываете. То что описываемый вами сценарий - дыра, - да. Это признаю и я и разработчик. Закрыть эту дыру не сложно, и это будет сделано.

Если же смотреть на реальность - вероятность подобного сценария крайне мала: ведь вы же смотрите ситуацию, когда у вас сервак сгорел в состоянии, успевшем принять последнюю транзакцию и успевшим разослать ее на клиентов таким образом, что она дошла не до всех, а только до части клиентов... т.е. с сетью тоже что-то произошло (бродкастом же слали, даже если сервак сдох успев отправить - пакеты-то дойдут). При этом одновременно_с_этим вы вырубаете из сети клиента, получившего эту последнюю транзакцию. Извините меня, но вероятность возникновения такой ситуации..... оооо...

Что касается выживания системы при уничтожении 50% входящих в нее компов и больше, - да нет, - она не просто будет жить кое-как. Она именно будет жить совершенно нормально и потеряет.. ну разве что последние секунды/максимум - минуты данных. И это при том, что никакого админа нет и никто ни за какими бэкапами не следит и резервных серверов не ставит.
Собственно это я и имела в виду, когда говорила в статье об "естественной отказоустойчивости": у вас система выживет и будет обладать почти всеми данными, если жив окажется хотя бы один комп.

Если уж говорить об отказоустойчивости, давайте рассмотрим вариант обеспечения отказоустойчивости в конторке средней паршивости с приходящим/удаленным админом. (Я намеренно не беру всевозможные системы типа оракловых кластеров, зеркалирования дисковых массивов и т.д. и т.п. Это другой уровень администрирования и другие деньги.
Мы сейчас о массовом сегменте с малыми и средними предприятиями, на которые, как раз и рассчитан данный фреймворк со своей базой и архитектурой.)
Чего там максимум будут делать? Максимум, - это регулярные бэкапы и складывание их куда-нибудь. Соответственно, имеем: сервак сгорел. Если лог жив, то мы восстанавливаемся из бэкапа, накатываем лог имеем все закоммиченные транзакции на сервере. В момент выполнения операции сотрудники курят. На процедуру уходит некоторое время, но в принципе - все живо.
А если лог помер? В этом случае мы имеем данные только до момента бэкапа, который, при хорошем раскладе делается ну, раз в день, т.е. имеем день потерянной работы. А часто бэкап не делается вообще... Ну и кто тут окажется в дураках в ситуации "сервак сгорел"?
30 авг 11, 18:56    [11202980]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
SergSuper
вобще странно что самим разработчикам не снизойти до прямого общения

За разработчика - извиняюсь, - с терминологией сложности... Вот и приходится работать переводчиком :)
30 авг 11, 19:04    [11203010]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Dimitry Sibiryakov
Member

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

интересующаяся_мнением
При этом одновременно_с_этим вы вырубаете из сети клиента, получившего эту последнюю
транзакцию. Извините меня, но вероятность возникновения такой ситуации..... оооо...

Очень велика. Конец месяца, сотрудник остаётся после всех чтобы добить пачку накладных.
Уходя, он выключает всё и на следующий день наслаждается заслуженным отгулом. Но сервер
при попытке включения сгорает. Всё, приехали.

Posted via ActualForum NNTP Server 1.4

30 авг 11, 19:08    [11203021]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
Dimitry Sibiryakov,

Убедили :) Ну признали уже эту дыру, признали. Будет устранена.
30 авг 11, 19:11    [11203031]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Dimitry Sibiryakov
Member

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

Да и хрен с ними, катастрофическими сценариями... Скажите лучше: я правильно понял, что в
индексах хранятся ссылки только на самые свежие версии записей?

Posted via ActualForum NNTP Server 1.4

30 авг 11, 19:12    [11203036]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
интересующаяся_мнением
Убедили :) ...

Но сервак должен сгореть так, что именно диск с файлом данных порушится... а сотрудник увезти комп(ноутбук) с последними вбитыми накладными с собой домой в свой заслуженный отгул.. а, ну и конечно никто не знает о том, что он вчера оставался последним чтобы добить пачку накладных :) ... Это я так, - отмазываюсь :-ь
30 авг 11, 19:16    [11203050]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
Dimitry Sibiryakov,
Нет, на все версии. На системном уровне они видны. На уровне пользователя - нет.
30 авг 11, 19:17    [11203054]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
.ЛП
Guest
2 интересующаяся_мнением
ведь вы же смотрите ситуацию, когда у вас сервак сгорел в состоянии, успевшем принять последнюю транзакцию и успевшим разослать ее на клиентов таким образом, что она дошла не до всех, а только до части клиентов... т.е. с сетью тоже что-то произошло (бродкастом же слали, даже если сервак сдох успев отправить - пакеты-то дойдут). При этом одновременно_с_этим вы вырубаете из сети клиента, получившего эту последнюю транзакцию.

Да при чём тут одновременно или неодновременно?
Бухгалтер сидел до полуночи, считал зарплату сотрудникам.
В полночь сохранил.
Час посмотрел порнуху. За это время получил все возможные бродкасты и нотификации.
Потов выключил комп.
В три часа ночи сгорел сервак.
В восемь утра пришли сотрудники и повключали свои компы.
Гды вы видите "одновременно"?

Извините меня, но вероятность возникновения такой ситуации..... оооо...

Вы что там, вероятностным программированием занимаетесь? :)
Транзакция закоммитилась с вероятностью 86.9%.
Программист получит зарплату именно с этой вероятностью.


Что касается выживания системы при уничтожении 50% входящих в нее компов и больше, - да нет, - она не просто будет жить кое-как. Она именно будет жить совершенно нормально и потеряет.. ну разве что последние секунды/максимум - минуты данных.

Понимаете ли, одно дело - потерять какие-то данные. Плохо, да. Но от этого никто не застрахован на сто целых ноль десятых процентов.
Всегда есть шанс потерять часть данных. Иногда большую, иногда меньшую. Можно потерять 100% данных. Можно потерять 0.000001% последних данных.

Но речь то про консистентность. Её можно потерять только всю.
Нельзя быть на 86.9% консистентным. Точно так же как нельзя быть немножко беременной.

За разработчика - извиняюсь, - с терминологией сложности... Вот и приходится работать переводчиком :)

Не моё собачье дело, конечно, но...
Зачем вам такой разработчик, у которого даже с терминологией проблемы?
30 авг 11, 19:19    [11203058]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
.ЛП,
Я уже сказала, что относительно этой дыры я не спорю. Конечно здесь консистентность разрушается и это дело нужно устранять.
30 авг 11, 19:28    [11203076]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
.ЛП
Guest
интересующаяся_мнением
.ЛП,
Я уже сказала, что относительно этой дыры я не спорю. Конечно здесь консистентность разрушается и это дело нужно устранять.

А зачем? Зачем это дело нужно устранять?
Как мне кажется - незачем.

Не нужно это (обсуждаемую СУБД) лечить.
Нужно это (обсуждаемую СУБД) выкидывать. Целиком и полностью.
Плюсов то нету у СУБД по сравнению с другими. Вообще никаких нету.
Оно отстало от жизни навсегда. Догнать не получится. Ни силами двух с половиной землекопов, ни силами двадцати пяти.

Есть какой-то там фреймворк, кусочки кода, формочки, кнопочки, бухгалтерские проводочки? Ну и хорошо. Избавить двух с половиной землекопов от проблем с терминологией, купить им книжку, и научить их сохранять всё это в любую современную СУБД.
30 авг 11, 22:33    [11203486]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
интересующаяся_мнением
интересующаяся_мнением
Ответ, - они сообщат об ошибке про неконсистентность базы и не будут работать.

Сорри за не слишком внятный текст. Здесь "Они" - это клиенты, номер транзакции которых выше, чем на сервере.


Не сообщат "они" ничего. Они тупо будут не в курсе, что бухгалтер унес домой 4,5 и 6 и радостно согласятся, что да их номер 3 самый последний

А вот когда бухгалтер на следующий день придет ... то да, лягут все
31 авг 11, 08:52    [11204154]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
интересующаяся_мнением
Цитата от разработчика:

"Я не признаю систему, которую можно выключить централизованно. В живом мире система должна сохранять признаки жизни, даже если более 50% ее уничтожено".
На эту тему, разработчики очень любят рассказывать байку о том, как у них в лихие девяностые тупо поперли все компы, на которых была установлена их бухгалтерия. База сохранилась на компе в соседней комнате, до которого не добрались :)

Как вам такая точка зрения?


Разработчик - социопат, держитесь от него как можно дальше.
Собственно вот эти "я не признаю" можно выслушивать от БГ, Ларри Элиссона и т.п. (отдавая себе отчет в том, что этим социопатам крайне повезло в жизни и их продуктами можно пользоваться на свой страх и риск, до некоторой степени успешно, за счет развитого community), но выслушивать такое от автора продукта внедренного (пусть даже в 200) мест, это все равно что продать душу неизвестно кому. В итоге весь ваш бизнес будет зависеть исключительно от его злой воли :)
31 авг 11, 09:01    [11204171]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
vadiminfo
Member

Откуда: Обнинск
Сообщений: 4802
интересующаяся_мнением, возможно, Вам луче зайти в разде другие СУБД. Там уже целых две типа новых СУБД. Там, может быть, их авторы окажут Вам поддержку какую-никакую на данном этапе противостоянии известным СУБД. А уже потом, када Вы преодолете все старые СУБД, Вы с теми двумя, вероятно, разберетесь как нибудь.
31 авг 11, 10:05    [11204356]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
интересующаяся_мнением
.ЛП,
Ну не сгущайте краски-то так :)
На самом деле не все так страшно, как вы описываете. То что описываемый вами сценарий - дыра, - да. Это признаю и я и разработчик. Закрыть эту дыру не сложно, и это будет сделано.


Да ну? И как будете закрывать???
Опишите
31 авг 11, 10:17    [11204401]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
MasterZiv
Member

Откуда: Питер
Сообщений: 34709

On 29.08.2011 2:15, интересующаяся_мнением wrote:

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


Такого не бывает. Все СУБД либо используют блокировки хотя бы где-то, либо
имеют несериализуемые транзакции (т.е. нарушение целостности БД).
Соответственно, либо у вас есть блокировки, либо у вас есть wormhole-ы и
несериализуемые транзакции. И то, и другое, в общем, не обязательно плохо.

Posted via ActualForum NNTP Server 1.4

31 авг 11, 10:40    [11204507]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
Gluk (Kazan)
Не сообщат "они" ничего. Они тупо будут не в курсе, что бухгалтер унес домой 4,5 и 6 и радостно согласятся, что да их номер 3 самый последний. А вот когда бухгалтер на следующий день придет ... то да, лягут все

Никто там не ляжет. Когда бухгалтер придет на следующий день, если к моменту старта его машины у него номер локальной транзакции будет выше, чем на сервере - ему дадут отлуп и велят откатить транзакции. Если номер выше, - данные конкретно на его машине начнут писаться дальше. У него 4,5, 6 будут альтернативными, - это да, и это есть дыра на данный момент.
31 авг 11, 10:54    [11204568]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
vadiminfo,
Спасибо за мысль, возможно следует и туда заглянуть :) Я как-то рассматривала в контексте сравнения в основном с классическими РСУБД, - это, так сказать, главный акцент сравнения. Но взглянуть на вопрос чуть шире тоже не помешает.
31 авг 11, 11:01    [11204600]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
MasterZiv
Member

Откуда: Питер
Сообщений: 34709

On 29.08.2011 3:18, интересующаяся_мнением wrote:

> Второй момент, касается задач, на которые ориентирована СУБД. Сейчас в мире
> приходит понимание того, что классический реляционный подход не всегда идет на
> пользу решаемых задач, посему начали придумывать всяческие отхождения от
> стандарта: in-memory, с поколоночным хранением, вообще объектно-ориентированные.
> Раз они существуют, значит это кому-нибудь нужно?

Вы видимо слабо понимаете, о чём говорите. Ни одно из вышеперечисленных вами
"нововведений" не противоречит ни стандратру (ANSI SQL), ни реляционному подходу.

> клиент-сервер. Но есть ощущение, что она гибче, и легче позволяет решать
> некоторые задачи. В основном учетные: когда у вас не много пользователей (30
> бухгалтеров - это и правда много) и при этом довольно много всевозможных сложных
> рассчетов. А структуры данных приходится строить такие, что черт ногу сломит.
> Вот где-то здесь она и начинает играть, по моим ощущениям.

А думаете обычные реляционные СУБД такие задачи не решают ?
Или плохо их решают ?

Для современных РСУБД актуальна задача хорошей оптимизации сложных SQL-запросов.
Вот решите эту задачу -- будет вам счастие.

> К примеру, насколько я понимаю ситуацию, за счет того, что у них нет жесткого
> описания структуры атрибутов в таблице, они создают одну таблицу, к примеру, для
> каталога товаров, и пихают в нее все что только душе заблогарассудится: колбаса,
> значит колбаса, автомобиль, значит автомобиль. И никих вам EAV и наследуемых
> таблиц... В итоге, максимальное кол-во таблиц которое им приходилось решать для
> конкретной учетной задачи - 200.

Оптимизировать количество таблиц в реляционной СУБД -- это конечно достоойнейшая
задача. (это сарказм, если ещё кто не понял).

Обычно гораздо меньше. В других подобных
> системах, как я понимаю, они считаются тысячами.

Ну и что в этом плохого ? Кол-во таблиц вообще-то диктуется тем, какие данные
обрабатываются и какие предметные области охватываются деятельностью данной БД.
Чем шире охват, тем больше таблиц. Ничего плохого в том, что их много, нет.
У нас в БД их напр. более 2 тысяч.

Posted via ActualForum NNTP Server 1.4

31 авг 11, 11:05    [11204618]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
[quot Gluk (Kazan)]
интересующаяся_мнением
.ЛП,
Да ну? И как будете закрывать???
Опишите

В файле данных всегда есть размер смещения до окончания последней транзакции, ну и время ее пишется. На что-то одно можно завязаться и проверять это при старте клиентской машины: сравнивать инфу по последней транзакции на клиенте с серверной транзакцией с этим же номером.
31 авг 11, 11:05    [11204622]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
MasterZiv
Member

Откуда: Питер
Сообщений: 34709

On 29.08.2011 3:30, интересующаяся_мнением wrote:

> Это довольно очевидный аргумент :) Понятно что дыр в ней потенциально должно
> быть больше, чем у других СУБД именно по тем причинам, которые вы описали. Но я
> сейчас не рассматриваю возможность построения системы на ней, - я пытаюсь понять
> перспективность такого подхода к организации хранения и обработки данных в
> принципе. Может я ее развивать хочу :) ну или не я :)

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

Posted via ActualForum NNTP Server 1.4

31 авг 11, 11:14    [11204670]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 3 4 [5] 6 7 8 9 10 .. 13   вперед  Ctrl
Все форумы / Сравнение СУБД Ответить