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

Откуда:
Сообщений: 241
Gluk (Kazan)
Shlippenbaranus
пропущено...
Да, ну и что? Продемонстрируйте по пунктам, почему от этого все вдруг повалится.


Уже описывалось выше. Сейчас нет времени повторять.


"Описывалось выше" - ну, так я как бы предложил способ решить проблему (закрыть дыру), которая описывалась выше. Описывался конкретный сценарий образования неконсистентных данных, "если бухгалтер поработал вечером, а ночью испортился сервер", я предложил поправку к механизму фиксации транзакций, которая, как мне показалось, исправляет проблему. Вы можете предложить другой конкретный сценарий? Было бы интересно послушать.

Gluk (Kazan)
Откуда у Вас такой живой интерес? Вы таки один из 2.5 разработчиков???


Фу. Нельзя быть таким подозрительным. "Живой интерес" - почему бы и нет? Законом не запрещено.
31 авг 11, 16:44    [11207572]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
Shlippenbaranus
Фу. Нельзя быть таким подозрительным. "Живой интерес" - почему бы и нет? Законом не запрещено.


Неподозрительным буду не раньше чем приду домой.
Сейчас времени нет
31 авг 11, 16:47    [11207598]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
.ЛП
Guest
MasterZiv
On 29.08.2011 4:31, .ЛП wrote:
> что подаётся как архитектурные особенности и плюсы - вызывает тихое шевеление
> волос на голове.

Да, кстати достаточно грамотные замечания, потому что если это бухгалтерия,
то там обычно интенсивность работы очень низкая, интенсивность изменений
низкая (редко выполняемые операции), а больше нагрузка на запросы чтения,
обработка огромных (по тупизне пользователей) массивов данных. В таких
конфигурациях именно этот подход не так уж и плох будет по производительности,
потому что у каждого -- своя копия БД, можно сказать, распределённая обработка
данных получается :-)

Мы тут что обсуждаем, СУБД, или условия задачи?

Если вопрос ставится следующим образом:
"У нас есть мало пользователей, сидящих в одном сегменте локальной сети, которые обрабатывают малое количество данных, причём в основном на чтение, на запись меньше, а конфликтующих между собой операций записи совсем уж мало. Скажите пожалуйста, какая СУБД с этим справится?"
то ответ будет - "Любая. Хоть КС, хоть ФС, хоть реляционная, хоть нереляционная, хоть готовая, хоть самописная, хоть массив в памяти, сериализованный на жесткий диск, хоть XML-файлы, хоть что"

Однако же вопрос стоял "Что вы думаете по поводу вот такой СУБД".
Ответ - "Она ужасна. Потому что способна работать только вот в таких вот условиях, и даже при выполнении этих условий не видно преимуществ по сравнению с любой другой".
31 авг 11, 16:50    [11207629]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
Dimitry Sibiryakov
MasterZiv
За счёт чего сериализация-то происходит ?

Мой ХШ утверждает, что пока транзакция не обработана, следующий пакет просто не принимается.

Ага. Это уже в начале топика выяснили и даже придумали как положить всю систему - закатить массовый поток транзакций. На сервере они встанут в очередь, а потом еще и на каждом клиенте. Это самое слабое место архитектуры на мой взгляд пока - она в принципе не рассчитана на массовые изменения.
Т.е. область применение четко не выходит за рамки чего-то вроде учетных задач на малых и средних предприятиях.
31 авг 11, 17:20    [11207873]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Dimitry Sibiryakov
Member

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

интересующаяся_мнением
Ага. Это уже в начале топика выяснили

Не совсем так. Выяснили только что транзакции сериализуются. Но делается ли это на уровне
буферизации в TCP стэке или очередью запросов внутри вашего сервера - не было сказано. В
первом случае флуд положит не только вашу систему, но и Windows из-за исчерпания non-paged
памяти.

Posted via ActualForum NNTP Server 1.4

31 авг 11, 17:26    [11207904]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
Gluk (Kazan)
Это никак не затыкает дыру с данными из "альтернативной" реальности
Думайте дальше

Вот честно не понимаю. Транзакции пишутся последовательно, у каждой свое время, оно уникально. Машина при старте должна посмотреть номер своей транзакции и, если этот номер меньше чем на сервере, должна спросить у сервера время записи его транзакции с этим же номером. Если они не соответствуют друг другу, значит данные станции не соответствуют данным сервера: она должна откатиться до момента соответствия а потом получить от сервера update.
31 авг 11, 17:28    [11207912]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Gluk (Kazan)
Member

Откуда:
Сообщений: 9365
интересующаяся_мнением
Gluk (Kazan)
Это никак не затыкает дыру с данными из "альтернативной" реальности
Думайте дальше

Вот честно не понимаю. Транзакции пишутся последовательно, у каждой свое время, оно уникально. Машина при старте должна посмотреть номер своей транзакции и, если этот номер меньше чем на сервере, должна спросить у сервера время записи его транзакции с этим же номером. Если они не соответствуют друг другу, значит данные станции не соответствуют данным сервера: она должна откатиться до момента соответствия а потом получить от сервера update.


Остается человеческий фактор. Админ решает кто будет сервером. Это плохо :)
31 авг 11, 17:32    [11207939]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
SergSuper
интересующаяся_мнением,
может тут уже было, но я вот не понял как без блокировок такие ситуации разруливаются

допустим оператор Маша хочет списать со счета 100 руб. Она читает остаток по счету, там 150 руб
в это же время оператор Аня с этого же счета хочет списать тоже 100 руб и она также видит что там 150 руб
смогут ли они теперь обе списать по 100 руб (при условии что отрицательный остаток недопустим)?

Насколько я понимаю, это конфликт на изменение одной и той же записи. Маша спишет, а Аня нет, - ей отлуп придет от сервера. Кто первый успел, того и тапочки. Этот пример мы разбирали когда говорили про операцинисток, которые один и тот же документ правят.
31 авг 11, 17:34    [11207961]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Vladimir Baskakov
Member

Откуда:
Сообщений: 2006
Shlippenbaranus
Gluk (Kazan)
пропущено...


Да ну? И как будете закрывать???
Опишите


Не вижу особенных сложностей. Навскидку - принимая транзакцию 7, клиент должен убедиться, что транзакция 6, которую он отправил на сервер вчера, действительно принята всеми. Как это сделать? Ну, например, дать уникальное имя каждой транзакции, и проверять, что последняя отправленная транзакция у тебя имеет то же имя, что и транзакция за этим же номером на "сервере". При положительном ответе клиент будет знать, что "альтернативная реальность" не возникла, и спокойно примет транзакцию 7. В противном случае клиенту придется найти последнюю транзакцию на сервере, проименованную так же, как и у него, и откатиться до нее. А потом накатить все транзакции до последней на сервере.

Т.е. кроме приоритета, у транзакций должны быть еще и уникальные имена.

(Прошу прощения, если я что-то пропустил)

Shlippenbaranus, не вполне понял идею. Поясните? Уникальное имя должен иметь некий 'тип' транзакции? Ну например - 'резервирование товара'? Допустим, я послал - резервирую товар колбасу - 5, еще кто-то резервирую сосиски - 5, мой пакет потерялся... пакеты никогда не теряются? Или сервер дает сигнал квитирования? - так мол и так - пакет принял! И потом... если такое именование обеспечивает непротиворечивость данных... надежно? тогда ему место в движке дазы банных... Извините за искажение слов - просто привычка нагло требует называть БД нечто реляционное.

Т.е. если заставить прикладного программиста реализовать протокол, который ОБЫЧНО берет на себя сервер БД - то да... То же квитирование... Ну так тогда и прикладная программа раздувается, усложняется... или поверх приведенного движка пишется слой библиотек, который все это прячет внутри... На выделенной машине крутится еще один - серверный экземпляр, обеспечивающий проверку и перепроверку...

Мелькнула мысль про агрегаты. На машине 1 изменение, затрагивающее агрегаты A1, A2, A3... на машине 2 - А2 А3 A4... и так далее... Когда, и кто пересчитывает эти агрегаты при постинге изменений? Как они рассылаются? Как выясняется, что их прочли ВСЕ КОМУ ОНИ НУЖНЫ, а не только суперглавный сервер?
31 авг 11, 17:37    [11207979]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Shlippenbaranus
Member

Откуда:
Сообщений: 241
интересующаяся_мнением
Gluk (Kazan)
Это никак не затыкает дыру с данными из "альтернативной" реальности
Думайте дальше

Вот честно не понимаю. Транзакции пишутся последовательно, у каждой свое время, оно уникально. Машина при старте должна посмотреть номер своей транзакции и, если этот номер меньше чем на сервере, должна спросить у сервера время записи его транзакции с этим же номером. Если они не соответствуют друг другу, значит данные станции не соответствуют данным сервера: она должна откатиться до момента соответствия а потом получить от сервера update.


О, это правильно. Я предложил давать каждой транзакции уникальное имя - вместо него можно использовать точное время. Точное время будет почти уникально :). С нужной степенью точности.
31 авг 11, 17:38    [11207984]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Shlippenbaranus
Member

Откуда:
Сообщений: 241
Vladimir Baskakov
Shlippenbaranus, не вполне понял идею. Поясните? Уникальное имя должен иметь некий 'тип' транзакции?


Нет. Каждая отдельная транзакция. По существу, я сказал то же самое, что и интересующаяся_мнением (11207912). Только у нее вместо имени - время транзакции. Про время транзакции я не подумал, т.к., на мой взгляд, оно недостаточно уникально. В моем личном опыте :).
31 авг 11, 17:43    [11208027]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
mayton
Member

Откуда: loopback
Сообщений: 53027
В плане консистентности и безопасности данных - полный разброд и шатание.
Начать даже с того, кто за что отвечает. Я-бы в таких условиях будучи
сисадмином сидел-бы и курил и нижуя ни делал. Милое дельце
- спихивал бы всё на проблемы на локальной машине бухгалтера.
Этож облако мать его так. План и грид бл?*:!. Разбирайтесь сами
сцуки на ваших машинах.

Хехе... и еще слово какое... Plan...
31 авг 11, 17:44    [11208035]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Shlippenbaranus
Member

Откуда:
Сообщений: 241
mayton
Я-бы в таких условиях будучи
сисадмином сидел-бы и курил и нижуя ни делал.


Вооот. Достоинство этой системы - ей сисадмина не надо. Все равно сидит и курит. И никуя не делает :).
31 авг 11, 17:48    [11208074]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
mayton
Непонятно как обеспечивается оптимизация чтений. Здесь нужен какой-то индекс
который должен стать сегментом воистину неподъёмным (почти как этот
"рулон" транзакций) для рабочей станции где эта вся богадельня расположена.

Конечно индексируется это все. Про это уже писалось.

mayton
http://spcomputer.ru/index.php?option=com_content&task=view&id=26&Itemid=37
При этом, поскольку в арсенале пользователя имеются все необходимые агрегаты, необходимое представление информации, как правило, не занимает слишком много времени (максимально длительная по времени задача за всю историю существования комплекса - 2 минуты)


я просто не верю. Возможно речь идёт о каких-то сферических отчётах в вакууме.

Дайте мне SQL-* консоль к этой Викте и я положу любого клиента в коматоз...

Либо речь идёт о смехотворных объёмах.

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

Объемы действительно небольшие. Все это рассчитано на малые и средние предприятия. Максимальный объем бухучета обсчитываемый в этой архитектуре - 2000 человек, - это завод. Обслуживался он коллективом из 30 бухгалтеров. Соответственно - 30 машин в сети. Вот соответственно рассчет зарплаты на эти 2000 шел две минуты - самая тяжелая операция по длительности получалась. А все остальные отчеты, какие там по законодательству требуются, ну и им были нужны - это все незаметно было по времени.
А насчет SQL-консоли - извиняйте :) Нету у них SQL, - это в исходной статье написано. Без него в сегодняшней жизни конечно тяжко.
31 авг 11, 17:49    [11208095]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
Vladimir Baskakov
Мелькнула мысль про агрегаты. На машине 1 изменение, затрагивающее агрегаты A1, A2, A3... на машине 2 - А2 А3 A4... и так далее... Когда, и кто пересчитывает эти агрегаты при постинге изменений? Как они рассылаются? Как выясняется, что их прочли ВСЕ КОМУ ОНИ НУЖНЫ, а не только суперглавный сервер?

Все агрегаты пересчитывает только сервер. На самом деле примерно так происходит: клиент чего-то наменял, отправил это пакетом на сервере. Сервер почитал все полученное, досчитал все, что можно досчитать только централизованно, записал все что получилось (включая агрегаты и то что прислал клиент) в базу с новым номером транзакции, а потом уже всю эту байду кинул бродкастом всем остальным. Т.о. все всегда имеют агрегаты, соответствующие фактическим данным.
31 авг 11, 18:00    [11208177]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Dimitry Sibiryakov
Member

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

Shlippenbaranus
Достоинство этой системы - ей сисадмина не надо. Все равно сидит и курит. И никуя не
делает :).

Это общее свойство админов - ненужность пока всё работает. Как и у врачей пока здоров. А
вот когда всё упало, тут-то и появляются нюансы, авралы и прочие биения головой об стену.

Posted via ActualForum NNTP Server 1.4

31 авг 11, 18:00    [11208188]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Dimitry Sibiryakov
Member

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

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

Т.е. фоновый просчёт агрегатов, которым так гордится статья - туфта?..

Posted via ActualForum NNTP Server 1.4

31 авг 11, 18:03    [11208210]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
Gluk (Kazan)
Остается человеческий фактор. Админ решает кто будет сервером. Это плохо :)

Нууу... наверно я-таки с вами соглашусь :) Хотя... для того чтобы сделать по-другому, нужно чтобы все машины сети знали о том, кто еще в нее подключен, - дабы в случае исчезновения сервера перекличку сделать.... Даже если есть, тут встает проблема, что если мы оставим все это совсем на автомат, слишком вилик соблазн оставить все это вообще без сервера. По типу - ну выбрали кого-то сервером, при старте, вот он пусть и пашет. А поскольку мы в этом случае даже толком не знаем, кто сейчас сервер, мы влетаем в регулярную проблему тети Маши, оставшейся накануне вечером что-то доделывать а на следующий день пришедшей позже всех. Т.е. придется автоматизировать процесс сначала отката ее персональных транзакций, которые пошли вразрез с тем, что там другие уже наработали, а потом их обратного наката. А тут конфликты... слишком сложная логика выходит. Пусть уж лучше человек объявляет - это теперь сервер, - его не выключать.
В такой архитектуре это пожалуй второй недостаток выявленный мной именно в ходе обсуждений с разными умными людьми :)
31 авг 11, 18:16    [11208338]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
Shlippenbaranus
Вооот. Достоинство этой системы - ей сисадмина не надо. Все равно сидит и курит. И никуя не делает :).

Ну собсно так и происходит на практике :) В большинстве контор, где это стоит ни о каком админе даже слыхом не слыхивали. Там где побольше народу, - там сидят мальчики, но тоже в основном доработкой отчетов занимаются. А администрированием всего этого хозяйства никто не занимается.
31 авг 11, 18:18    [11208350]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
Dimitry Sibiryakov
интересующаяся_мнением
Сервер почитал все полученное, досчитал все, что можно досчитать только централизованно,
записал все что получилось (включая агрегаты и то что прислал клиент) в базу с новым
номером транзакции, а потом уже всю эту байду кинул бродкастом всем остальным.

Т.е. фоновый просчёт агрегатов, которым так гордится статья - туфта?..

Фоновый, - имеется в виду по ходу поступления изменений, а не потом отдельно ночью. А процедура которая это делает у них называется Фон. Он на сервере работает.
Я так понимаю, если это делать в обычной реляционке, в общем-то можно то же самое и на триггера повесить, - не вижу причин почему нет.
31 авг 11, 18:22    [11208373]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Vladimir Baskakov
Member

Откуда:
Сообщений: 2006
Shlippenbaranus
Vladimir Baskakov
Shlippenbaranus, не вполне понял идею. Поясните? Уникальное имя должен иметь некий 'тип' транзакции?


Нет. Каждая отдельная транзакция. По существу, я сказал то же самое, что и интересующаяся_мнением (11207912). Только у нее вместо имени - время транзакции. Про время транзакции я не подумал, т.к., на мой взгляд, оно недостаточно уникально. В моем личном опыте :).

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

А про конфликты при пересчете агрегатов - соображения будут? Ясно ли я сформулировал вопрос?

Вообще - топик напоминает мне защиту диплома... почему-то...)))) тока не понятно - кто в приемной комиссии, а кто - пять минут позора - и инженер)))))

mumps - не похож ли на представленный движок? Глобали всякие... За что спасибо обсуждению - начинаешь ценить простые вещи... понимаешь - сколько труда было вложено в БД разработчиками.... чтоб оно прозрачно гарантировало все то, к чему так легко привыкаешь...
31 авг 11, 18:33    [11208476]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
mayton
Member

Откуда: loopback
Сообщений: 53027
Сомнения - это ключ к просветлению. Но может быть не стоит выносить на общественный
суд вещь за которую может стать стыдно. Не сегодня. А спустя несколько лет.
31 авг 11, 18:38    [11208520]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Dimitry Sibiryakov
Member

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

mayton
Но может быть не стоит выносить на общественный суд вещь за которую может стать стыдно. Не
сегодня. А спустя несколько лет.

А почему должно быть стыдно за систему, которая делает то, что из классических серверов
умеет мало кто: синхронную master-slave репликацию на сотню slave, которые при этом ещё и
остаются доступными на чтение?
MySQL, MS SQL и Oracle это умеют (хотя до определённой версии slave нельзя было читать),
но я не уверен, что они справятся с таким количеством slave. Firebird такого не умеет вообще.

Posted via ActualForum NNTP Server 1.4

31 авг 11, 19:06    [11208687]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
FinSoft
Member

Откуда:
Сообщений: 66
интересующаяся_мнением
скип...

Я бы предложил немного отвлечься от обсуждения технических подробностей решения и задуматься, а какой смысл сейчас делать подобную архитектуру? Что мы имеем на сегодня. Сильно выросшую производительность компьютеров. Причем продолжает расти с каждым годом. Многопроцессорные системы пришли уже в быт. Ограничения с размера оперативной памяти сняты в 64-разрядных ОС. И все это дешевеет и дешевеет. Уже можно взять ящик за 50 тыр и организовать на нем одновременную работу много больше 30 пользователей. А в качестве станций ставить всякую рухлядь, специальные долгоживущие и эргономичные терминальные станции, или даже переносные устройства. При этом вся переферия будет работать без всякого обслуживания и с любой точки шарика. Один сервер и приложение со встроенной необслуживаемой базой данных. А тут предлагается не только ставить специализированный софт на 30 компов, но еще и копию данных на каждом создавать.
31 авг 11, 19:10    [11208710]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
mayton
Member

Откуда: loopback
Сообщений: 53027
Dimitry Sibiryakov
mayton
Но может быть не стоит выносить на общественный суд вещь за которую может стать стыдно. Не
сегодня. А спустя несколько лет.

А почему должно быть стыдно за систему, которая делает то, что из классических серверов
умеет мало кто: синхронную master-slave репликацию на сотню slave, которые при этом ещё и
остаются доступными на чтение?
MySQL, MS SQL и Oracle это умеют (хотя до определённой версии slave нельзя было читать),
но я не уверен, что они справятся с таким количеством slave. Firebird такого не умеет вообще.

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