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

Очень интересует ваше мнение о строении БД, особенности которой описаны вот здесь

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

При этом сие чудо показывает чудеса производительности именно прикладных задач, а именно: рассчет зарплаты на всю эту толпу в 2000 человек - 2 минуты, оборотная ведомость за год - тоже около 2-х минут. Это самые тяжелые рассчеты. Остальное просто незаметны. При том что остальные бухгалтера продолжают работать и никакой просадки в производительности на себе не ощущают. Те, кто работал с тем же самым 1C могут поделиться своими впечатлениями о работе системы с таким кол-вом пользователей и времени рассчета зарплаты с таким кол-вом человек.
Возникают вопросы: как и почему?

Я провела интервью с разработчиками комплекса и получила информацию о строении БД, которая собственно в статье и описана. Хотелось бы узнать мнение специалистов, особенно тех, кто занимался разработкой или работал с учетными системами с одной стороны, и тех, кто глубоко знает теорию БД и обладает хорошими именно практическими навыками. Как вам вообще такой подход? Есть в нем что-то или как?

Со своей стороны - я постараюсь узнавать у разработчиков и отвечать на любые возникшие вопросы, если в чем-то потребуется детализация.
29 авг 11, 01:15    [11192941]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Dimitry Sibiryakov
Member

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

интересующаяся_мнением
я постараюсь узнавать у разработчиков и отвечать на любые возникшие вопросы

Первый вопрос: каким боком этот топик относится к сравнению СУБД?

Posted via ActualForum NNTP Server 1.4

29 авг 11, 01:46    [11192959]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Yo.!
Guest
интересующаяся_мнением,

не серьезно. десяток клиентов с парой десятков tps вырубит этот "репликатор" гарантированно. в середине 80х индустрия постепенно начала уходить от загрузки клиента и нафигационных языков, перенося нагрузку на сервер и делая ставку на декларативные языки запросов. боюсь концепция этого изделия устарела лет на 25 и оно сильно уступит фокспро начала 90х на многопользовательских нагрузках
29 авг 11, 01:48    [11192961]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
Dimitry Sibiryakov,

В основном потому что в этом топике обсуждаются совершенно разные базы. И еще потому что предлагается сравнить сие творение с другими СУБД, но не конкретными наименованиями, а скорее, классами баз. Я пытаюсь плюсы/минусы понять.
29 авг 11, 02:02    [11192969]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
я бы от решения в тынце держался бы как можно дальше.
даже не так
каааак моооооожно даааааальше.
29 авг 11, 02:17    [11192977]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
Yo.!,

Но вы ведь имеем факт: 30 машин для бухгалтерского прикладного ПО в сети, все это прекрасно себе живет и умирать совершенно не собирается.
Я с вами согласна в контексте того, что если туда к примеру несколько сотен клиентов посадить, оно наверно захлебнется. Я как раз хочу найти возможность провести эксперимент именно на эту тему - посмотреть какое максимальное кол-во одновременных пользователей такая штука сможет выдержать.

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

К примеру, насколько я понимаю ситуацию, за счет того, что у них нет жесткого описания структуры атрибутов в таблице, они создают одну таблицу, к примеру, для каталога товаров, и пихают в нее все что только душе заблогарассудится: колбаса, значит колбаса, автомобиль, значит автомобиль. И никих вам EAV и наследуемых таблиц... В итоге, максимальное кол-во таблиц которое им приходилось решать для конкретной учетной задачи - 200. Обычно гораздо меньше. В других подобных системах, как я понимаю, они считаются тысячами.
29 авг 11, 02:18    [11192978]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся _мнением
Guest
locky,
А можно аргументированно? Хотя бы ключевые пункты? Мне действительно важно это понимать.
29 авг 11, 02:22    [11192981]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
интересующаяся _мнением
locky,
А можно аргументированно? Хотя бы ключевые пункты? Мне действительно важно это понимать.

У того же файрбёрда - сотни тысяч юзеров. читай - сотни тысяч тестеров.
читай - сотни тысяч спецов (того или иного уровня), которых, потенциально, можно нанять для разработки/сопровождения.

А брать "наколенное поделие" (пусть даже и интересное с т.з. внутренних идей) и строить на его основе систему... нафиг надо.
29 авг 11, 02:24    [11192982]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
locky,

Это довольно очевидный аргумент :) Понятно что дыр в ней потенциально должно быть больше, чем у других СУБД именно по тем причинам, которые вы описали. Но я сейчас не рассматриваю возможность построения системы на ней, - я пытаюсь понять перспективность такого подхода к организации хранения и обработки данных в принципе. Может я ее развивать хочу :) ну или не я :)
29 авг 11, 02:30    [11192984]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
locky
Member

Откуда: Харьков, Украина
Сообщений: 62034
если найдёте какого-нито "жирного" ускоспециализированного заказчика, которому нужна будет совершенно своя, уникальная, сильно-сильно под конкретного него заточенная системка - то это, м.б., будет перспективно
хотя вот лично меня крайне смущает "write-only" система, которая только дописывает, а не удаляет/изменяет.
что-то тут не так.
29 авг 11, 02:34    [11192989]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Yo.!
Guest
интересующаяся_мнением,

бухгалтерия - не показатель. эти 30 бухгалтеров мурыжат свой кусочек не пересекаясь с другими и делают запросы на "закрытый" период. плюс бухгалтера не фигачат по 10 tps. десяток клиентов на задачке tpc-e просто получат 90% отмененных транзакций. концепция гнилая совершенно.
всякие альтернативы SQL появились на волне моды на ООП и уже практически все загнулись. если они загнулись то скорее потому, что реально никому не нужны. в SQL базах сейчас есть тип XML, который избавит "жесткого описания структуры атрибутов", но при этом предоставляет декларативный язык запросов к этому делу. реально же oracle xmldb даже в бесплатной версии будет на порядок более разумно использовать.
29 авг 11, 02:46    [11192992]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Yo.!
Guest
кстати, есть вопрос. если "централь" рассылает в широковещательном режиме, как она убеждается, что все клиенты получили обновление ? в сети может быть кратковременный сбой и некоторые клиенты могут не получить обновление.
29 авг 11, 02:53    [11192996]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
.ЛП
Guest
Непонятно, зачем это творение вообще называть СУБД?
Очередная бесконечно унылая вариация на тему "массив данных в памяти, сериализованный на жесткий диск". С прикрученными сбоку бродкастовыми нотификациями и какими-то псевдо-серверными "фонами".
От того, что выбран нестандартный способ сериализации (стрим на толькозапись) - особо ничего не меняется.

То, что подаётся как архитектурные особенности и плюсы - вызывает тихое шевеление волос на голове.
В базе хранится вся история, от ишачьей пасхи до сегодняшнего дня. Вся эта база в полном объёме находится у всех клиентов. Все клиенты на каждый чих и пук бродкастят уведомления. И наверное как-то их обрабатывают. Для всего набора данных. Все изменения. Нужно, не нужно, пофигу.
База данных на клиенте вся, изменения бродкастятся все, радуйся клиент, гуляй рванина.

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

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

То, что жопорукие адынэсовцы сумели сделать долго и медленно - это ещё не повод, чтоб вот такое вот изобретать.

BTW, для таких нагрузок и экселя хватило бы :)
Прикрутить к нему только многопользователя.
29 авг 11, 03:31    [11193003]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
.ЛП
Guest
Yo.!
кстати, есть вопрос. если "централь" рассылает в широковещательном режиме, как она убеждается, что все клиенты получили обновление ? в сети может быть кратковременный сбой и некоторые клиенты могут не получить обновление.

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

как это вообще - "потеря сервера"?
шел по улице, никого не трогал, пиво пил, и тут - ВНЕЗАПНО - сервер где-то потерял...
бида, бида, огорчение...
29 авг 11, 03:46    [11193007]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Edd.Dragon
Member

Откуда: Украина
Сообщений: 6963
интересующаяся_мнением,

"Изюминка" этой системы в том, что когда вы добавляете или меняете запись, то служба "Фон" тут же пересчитывает всякие там суммы и сохраняет так же их. Т.е. фактически почти все агрегаты, которые в последствии понадобятся для злых отчетов/расчетов готовятся в процессе ввода данных.

Вы думаете, что аналогичный подход никому раньше в голову не приходил и не реализован? ;)
Это можно реализовать триггерами в любой БД, если захочется. Можно же использовать отдельный сервис, автоматизирующий агрегацию данных и дающий гораздо больше возможностей и гибкости. Как тот же Microsoft Analisys.

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

а по поводу факта, что у них годовой отчет за 2 минуты, а у других гораздо больше - так проблема в том, что другим жалко денег внедрить realtime-агрегацию и получить, возможно, еще более быстрые результаты. Суть то в чем? Сервер работает целый день. Нагружен он все время не на 100%. Можно же ему поручить при изменении данных в БД пересчитывать всяки суммы? Можно. В итоге когда кому-то понадобится отчет - суммы уже готовы. Это просто, чтобы догадаться до этого еще в прошлом веке. Но не всегда используется.
29 авг 11, 03:59    [11193009]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Edd.Dragon
Member

Откуда: Украина
Сообщений: 6963
интересующаяся_мнением
При этом сие чудо показывает чудеса производительности

В общем не показывает. Т.е. 1С может и делает своей ужасностью эту поделку чудом. Но есть ведь мир без 1С )))
29 авг 11, 04:05    [11193012]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Dimitry Sibiryakov
Member

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

интересующаяся_мнением
(30 бухгалтеров - это и правда много)

Не льстите себе. 30 бухгалтеров чисто технически могут создать только исчезающе малую
нагрузку. Просто потому, что имеют привычку набирать буквы одним пальцем. То, что 1С не
справляется даже с такой малой нагрузкой, это её недостаток, а то, что Ваша система
справляется - может считаться достоинством только на фоне той же 1С.

ЗЫ: В кои-то веки я согласен с Ё...

Posted via ActualForum NNTP Server 1.4

29 авг 11, 12:13    [11194139]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
.ЛП
Yo.!
кстати, есть вопрос. если "централь" рассылает в широковещательном режиме, как она убеждается, что все клиенты получили обновление ? в сети может быть кратковременный сбой и некоторые клиенты могут не получить обновление.

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

как это вообще - "потеря сервера"?
шел по улице, никого не трогал, пиво пил, и тут - ВНЕЗАПНО - сервер где-то потерял...
бида, бида, огорчение...

По номеру транзакции. Если станция получила обновление с пропуском, она запрашивает у сервера недостающее и тогда он уже ей персонально пересылает.
29 авг 11, 12:14    [11194146]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
.ЛП
как это вообще - "потеря сервера"?

Здесь имеется в виду - вышел из строя. Сгорел например, или что-то еще такое произошло...
Тогда просто выбирается какая-нибудь станция (ручками, не автоматом) и у нее взводится флажек, - что она теперь сервер. И можно жить дальше.
29 авг 11, 12:17    [11194165]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Cane Cat Fisher
Member

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

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

По поводу аргумента "все работает". Вообще, задача хранения и доступа к данным решается уже давно, начиная от файл-серверных систем, они тоже до сих пор "успешно работают" в некоторых местах, где требования к задачам не меняются десятки лет.

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

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

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

Вообще, я бы посоветовал, сейчас не прикручивать к этому делу SQL, а срочно перевести этот фреймворк (за который авторам честь и хвала), на работу с нормальным SQL - сервером.
29 авг 11, 12:28    [11194252]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
интересующаяся_мнением
Guest
.ЛП
В базе хранится вся история, от ишачьей пасхи до сегодняшнего дня. Вся эта база в полном объёме находится у всех клиентов.

На самом деле, не совсем так. У них там есть механизм - называется компрессирование. Он как раз и предназначен для того, чтобы "схлопнуть" историю. Я так понимаю, что время от времени они этим пользуются. У всех клиентов хранится - да. Но объемы-то смешные получаются. Прирост на самых больших внедрениях около 200MB в год... Кстати тоже не понимаю за счет чего. По идее - при полной записи истории она пухнуть должна быстрее, но этого не происходит.

.ЛП
Все клиенты на каждый чих и пук бродкастят уведомления. И наверное как-то их обрабатывают. Для всего набора данных. Все изменения. Нужно, не нужно, пофигу.

Не клиент бродкастит, а сервер. Клиент передает данные на сервер уже не бродкастом а конкретно ему. И не на каждый чих. Данные передаются только об изменениях.
А что вы имеете в виду под "нужно, не нужно, пофигу?"

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

Ммм.. да. Скорее всего. Так и не позиционируется это для больших нагрузок на запись.

.ЛП
Ей богу, уж лучше взять обычное файл-серверное нечто. Фокспро. Аксес.

У Аксес я так понимаю все-таки проблемы с многопользовательностью? Или нет?

.ЛП
На обычном файл-серверном нечте сваять этот несчастный расчёт зарплаты.
Для тридцати пользователей, обрабатывающих по чуть-чуть данных аж о двух тысячах каких-то там зарплат - оно будет летать ничуть не хуже.

Эххх... узнать бы у кого кто на этом самом файл-серверном нечте уже нечто такое сваял и сравнить результаты... :) Это и правда интересно. Кстати фреймворк в целом у меня вызывает ощущение чего-то похожего на Access именно, интерфейс только более топорный, но это поправимо имхо. А так, - тоже рисуются таблички и формочки для ввода + встроенный язык для обработки. По словам разработчиков очень развитый, поддерживающий ООП в полном объеме, и еще много чего.

.ЛП
Даже на де-факто умершем файл-серверном нечте.

А вот с этим я кстати не согласна. Тот же Access используется очень широко. И как раз для случаев когда в офисе нужно быстро сваять что-то учетное очень малыми силами и при почти полном отсутствии знаний/образования/ресурсов

.ЛП
Хотя обратно непонятно, чего бы не сделать и на любой нормальной СУБД. Коих как грязи.

.... Вот поэтому и "не сделать на нормальной СУБД".

.ЛП
То, что жопорукие адынэсовцы сумели сделать долго и медленно - это ещё не повод, чтоб вот такое вот изобретать.

Ну я так понимаю не только "адынэсовцы" :) На другие системы бухгалтера еще больше плюются, тот же Парус к примеру. Какие бы жопорукие они не были, но они - лучшее что есть на рынке из массовых продуктов именно для нашей бухгалтерии, как я понимаю.
29 авг 11, 12:43    [11194352]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Edd.Dragon
Member

Откуда: Украина
Сообщений: 6963
интересующаяся_мнением,

А вы не обратили внимание на то, что в начале топика вы были больше похожи на "интересующуюся мнением", а сейчас вы на нее совсем не похожи, а грубо смахиваете на "разработчика"?
29 авг 11, 12:51    [11194410]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Vladimir Baskakov
Member

Откуда:
Сообщений: 2006
автор
Ну я так понимаю не только "адынэсовцы" :) На другие системы бухгалтера еще больше плюются, тот же Парус к примеру. Какие бы жопорукие они не были, но они - лучшее что есть на рынке из массовых продуктов именно для нашей бухгалтерии, как я понимаю.

- угу. Когда на этой новой базе взлетит что-то, столь же универсальное как и - Парус, 1С, аксапта, САП, или ОЕБС - (не к ночи будь помянут) - тогда и поговорим о преимуществах архитектуры такого рода хранилища данных для управленческих задач или бухгалтерских, или складских задач...
(шепотом, почти неслышно) фвмас... чур меня, чур меня...
29 авг 11, 13:06    [11194525]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Yo.!
Guest
интересующаяся_мнением
По номеру транзакции. Если станция получила обновление с пропуском, она запрашивает у сервера недостающее и тогда он уже ей персонально пересылает.


не понял идеи. вот клиент шлет транзакцию, как централь отгадает, что транзакция была по устаревшим данным проведена, потому как не получила последние обновления ? на мой взгляд у централи в никаких возможностей отследить такие проблемы физически нет.
29 авг 11, 13:08    [11194534]     Ответить | Цитировать Сообщить модератору
 Re: Ни на что не похожая БД  [new]
Vladimir Baskakov
Member

Откуда:
Сообщений: 2006
и да - 200 внедрений для небольшого стартапчика - немало. С договорами на доработку, консалт, поддержку... Это, я бы сказал, много. Очень много... Без разветвленной сети интеграторов, которые тюнят решение под заказчика... Если это правда - то я удивлен. Очень. Грандиозно! это ж сколько внедрений в год делалось? 10 внедрений в год - за месяц - предприятие? За 10 лет - 100 контор... Феноменально! А заявлено около 200...
29 авг 11, 13:13    [11194573]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3 4 5 6 7 8 9 10 .. 13   вперед  Ctrl
Все форумы / Сравнение СУБД Ответить