powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Ноги... Крылья.... Главное ХВОСТ!!!
11 сообщений из 111, страница 5 из 5
Ноги... Крылья.... Главное ХВОСТ!!!
    #32562669
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ASCRUS
Так что все чем Вы так гордитесь, делается так же стандартными средствами, и тоже без каких либо заморочек.

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

Меня лично интересует только расширение кругозора, а не доказывание преимуществ Оракла. Тем более он сам и без меня как-нить разберется на рынке.
...
Рейтинг: 0 / 0
Ноги... Крылья.... Главное ХВОСТ!!!
    #32581171
Гость_999
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Редкая тема... в которой просто нечего сказать... слишком крутые)))
...
Рейтинг: 0 / 0
Ноги... Крылья.... Главное ХВОСТ!!!
    #32582196
Фотография Сергей Васкецов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadiminfoУ Оракла существуют, (если не обращать внимания на streams, который появился в 9 и позволяет реплицировать не только данные, но и DDL, однако, есть нюансы)
Я тоже ничего в статье не нашел, чтоб бы не умели делать сервера от SYBASE. DDL таже замечательно реплицируется RS-ом, как и truncate table и прочие извращения. Есть одна РЕАЛЬНАЯ ЗАСАДА, это то, что для RS имя definition у процедуры должно совпадать с именем самой процедуры, но в принципе, это обходится.

Ладно, раз пошла такая пьянка...

Чего меня ЖУТКО огорчает в MSSQL (КАК ПРОЕКТИРОВЩИКА/РАЗРАБОЧИКА/...):
1) Невозможность непосредственного использования агрегатной функции либо подзапроса внутри агрегатной (select sum (x + select sum())). Обходится, не всегда красиво, но все же.
2) Отсутствие THRESHOLD-ов. Читал и дико смеялся насчет своевременных backup-ов, агента, счетчиков производительности и автоувеличения размера устройств в документе, описывающем миграцию с SYBASE на MSSQL.
3) Отсутствие partitions - обещают аналог в Yukon-е, но тоже через то самое место.
4) Отсутствие возможности управлять ресурсами сервера, доступными пользователю (процессу/логину/...).
5) Необходимость указывать владельца у скалярной функции (вообще убил бы того, кто это придумал).
6) Если надо select distinct и order by, то приходится указывать все поля из order by в select distinct. На кой?
7) Исполнение rollback не из транзакции приводит к ошибке (обходится if @@trancount > 0, но все равно неприятно).
8) Для получения текущего уровня изоляции транзакций надо такое вытворять с dbcc useroptions, что даже описывать не хочется.
9) Если надо просто поменять default на поле (который просто при создании таблицы как default указывался) либо изменить обязательность поля, надо выполнять/указывать кучу никому не нужных операций.
10) некорректность проверки if object_id(‘#tmpobject’) is not null
11) эвристический алгоритм эскалации уровня блокировки (обуздать его аппетит можно, но тоже только полудокументировано).

Чего не менее жутко напрягает в ASE:
1) отсутствие фукнций (обходится исключенительно изменением логики)
2) отсутствие возможности сжать БД (в смысле, выкинуть девайс либо уменьшить его размер), обходится, но либо переносом данных, либо недокументирвоаными update-ами.
3) dump/load на зачаточном уровне (у MSSQL там своя задница, но менее серьезная).
4) отсутствие поддержки табличек вида ##xxx.
5) отсутствует возможность получения списка доступных серверов (то есть, сканирование сети, а не только тех, что в sql.ini)
6) пользователь (sysusers) может входить только в одну группу (опять же sysusers).

В RS:
1) необходимость совпадения имени procedure и function replication definition (обходится иногда только размножением процедур).
2) отсутствие НАЛГЯДНОГО инструмента для исправления транзакции, которая пытается пропихнуться в принимающую БД, но отвергается по каким-либо причинам.

В oracle/db2:
1) совершенно издевательский синтасис конкатенации строк (палками).

С oracle/db2/informix/asa последние 2-4 года не работал вообще, что то могло и поменяться, так что все в некоторой степени ИМХО.
...
Рейтинг: 0 / 0
Ноги... Крылья.... Главное ХВОСТ!!!
    #32582197
Фотография Сергей Васкецов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadiminfoКуда более важно выяснить, например, про равноправную репликацию. Когда юзера работают локально с копиями данных распределенной БД. Или хотя бы не про равноправную, но, которая обеспечивается только средствами СУБД.
"Мир кожи и меха" у нас на полной двунаправленной репликации (RS+ASE) работает (за очень небольшим исключением, оно не технического плана). Есть клиенты, где одна центральная БД и куча филиалов, кое что во все строны, кое что не полностью, не все поля и только куда надо.
...
Рейтинг: 0 / 0
Ноги... Крылья.... Главное ХВОСТ!!!
    #32582200
Фотография Сергей Васкецов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей Васкецовна полной двунаправленной репликации
естественно, там во все стороны, "двунаправленной" - это просто жаргон, "дву" не при чем.
...
Рейтинг: 0 / 0
Ноги... Крылья.... Главное ХВОСТ!!!
    #32584325
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я тоже в знак объективности, следуя примеру Сергея Васкецова
приведу недостатки Оракла в равноправной репликации (мультимастер репликация в терминах Оракла).
Мультимастер репликация реализует идею равноправной репликации и позволяет сделать прозрачным размещение копий таблицы. Пользователи работают локально с разными серваками, где есть копии, а механизмы репликации обеспечивают актуальность копий. Т.е. как будто юзера работают с одними и теми же таблами в централизованной БД. Недостатки выявлены на 8 версии, но, скорее всего, они сохранились и в 9 версии. Это только те недостатки, которые мешают мне реализовать то, что очень хотелось бы.
1. Проблемы отложенных транзакций с ограничениями ссылочной целостности.
Приходится отключать внешние ключи на втором сервере.
Суть проблемы. Если во время добавления новой записи триггер создает новые записи в дочерней таблице с ключами, новой записи родительской таблицы, то формируется отложенная транзакция, которая не может выполниться на втором сервере из-за ограничений внешних ключей на втором сервере. Преодолеть это никак не удалось. Конференции не помогли.
2. Проблемы отложенных транзакций с триггерами.
Приходится отключать триггера на втором сервере или их модифицировать так, чтобы они не выполняли ничего, если изменения вносит отложенная транзакция. А у нас много проектов и править это море триггеров не здорово. Если бы можно было как-то задать для всех триггеров было бы проще.
3. Проблемы с каскадным удалением. Оракл рекомендует заменить декларативное каскадное удаление на триггерную реализацию. Но декларативное всегда считается лучшим решением.
Т.е. есть нежелательные ограничения, на которые приходится обращать внимание.
Надеюсь, что и другие будут говорить о недостатках своих систем. А они наверняка есть: система обязана иметь недостатки.
...
Рейтинг: 0 / 0
Ноги... Крылья.... Главное ХВОСТ!!!
    #32584331
Фотография Сергей Васкецов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vadiminfoПриходится отключать триггера на втором сервере или их модифицировать так, чтобы они не выполняли ничего, если изменения вносит отложенная транзакция. А у нас много проектов и править это море триггеров не здорово. Если бы можно было как-то задать для всех триггеров было бы проще.
На RS, кстати, можно указать, что триггеры на ASE вообще для RS (DSI) не будут работать.
...
Рейтинг: 0 / 0
Ноги... Крылья.... Главное ХВОСТ!!!
    #32584365
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Также на Sybase ASA можно делать на таблицы специальные триггеры, срабатывающие только при репликации, через которые можно разруливать различные конфликтные ситуации репликации и хранимую процедуру, для централизованной обрабатки всех ошибок репликации.
...
Рейтинг: 0 / 0
Ноги... Крылья.... Главное ХВОСТ!!!
    #32584385
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ASCRUS
Также на Sybase ASA можно делать на таблицы специальные триггеры, срабатывающие только при репликации, через которые можно разруливать различные конфликтные ситуации репликации и хранимую процедуру, для централизованной обрабатки всех ошибок репликации.

В этом плане у Оракла есть не триггерные механизмы разрешения конфликтов. Централизованное управление разрешением конфликтов в репликационной среде осуществляется специальными средствами. Может настраиваться на разрешение по приоритетам, по времени. Вообще у нас в разработческой фирме, например, имеет значение, чтобы решения по репликации и по проектированию БД как можно меньше пересекались вообще. За разработку БД отвечают одни, а за репликацию другие. Кроме того, чтобы репликация легко приспосабливалась к разным проектам и версиям. Типа перечислил схемы и объекты, подлежащие репликации, из любого проекта или версии в специальной табле, запустил скрипты, проверил ошибки и вся настройка репликации. А написание триггеров на таблицы уже выглядит как шаг в сторону модификации объектов БД. Но в принципе есть механизм, позволяющий триггеру отличить свою транзакцию от отложенной, пришедшей с другого сервера. Я это имел в виду во второй проблеме. К тому же я думаю, что особенно перегружать систему триггерной активностью не лучшее из лучшего. Хотя у нас парни не долго раздумывают, перед тем как наворачивать триггера.
С ошибками тоже не плохо. У Оракла есть специальный механизм сравнения реплицируемых табл и их исправления (конечно, можно и самодельное сравнение запустить, но это медленно, и менее надежно, и большие напряги для системы). Хотя тоже с ограничениями. LOB с помощью процедур этого механизма не сравнить, хотя они реплицируются. Но сравнивает быстро, если отличий мало. И исправляет тоже достаточно быстро, если отличий мало. Но если много, то скорость сравнения резко падает. Видно он сначала сравнивает по каким-то алгоритмам что-то типа контрольных сумм записей. А если есть отличия, то начинает детально поля записи сравнивать. Но можно проанализировать и понять, откуда нарисовались отличия. И админы, не склонные искать причины ошибок, просто исправляют отличия, если таковые появятся. Вообще достаточно информации в словаре БД, чтобы контролировать работу реп. среды. Но можно отметить, что управление репликацией кажется по началу сложноватым. Особенно, если все делать в командной строке.
...
Рейтинг: 0 / 0
Ноги... Крылья.... Главное ХВОСТ!!!
    #32584780
DimaR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я например сторонник Оракла,
но
то vadiminfo
Раскажи пожалуста про мултимастер в контексте медленных каналов, e-mail...
...
Рейтинг: 0 / 0
Ноги... Крылья.... Главное ХВОСТ!!!
    #32585469
Фотография vadiminfo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор
Я например сторонник Оракла,
но
то vadiminfo
Раскажи пожалуста про мултимастер в контексте медленных каналов, e-mail...

Я пользователь Оракла. Мультимастер и вообще равноправная репликация врядли подходят для медленных каналов. Ведь они призваны обеспечить актуальность копий в оперативном режиме. У нас в проектах допустимо 10 - 30 сек. Мультимастер в основном используется в асинхронном варианте. Но есть и синхронный вариант. Тогда к каналам и системе в целом предъявляются повышенные требования. Иначе транзакция в случае не успеха на одном из серверов, откатится и на остальных. В основном мультимастер предназначена для распространения частых, но относително небольших по объемам изменений. Есть средства поодержки распространения больших, но разовых изменений procedural replication. Но я не пробовал. Есть и другие виды репликаций. Можно создать и пользовательскую, т.е. написать свои процедуры реализующие репликацию.
e-mail, с моей точки зрения, никак не связан с мультимастер репликацией, там все решения в пределах програмнного обеспечения Оракла. Для медленных каналов применение этого вида репликации мне не ясно. Возникнут проблемы массового обслуживания очередей отложенных транзакций. Они могут начать прибывать быстрей, чем распространяться. Не пробовал. Но с трудностями забивания очередей сталкивался.
...
Рейтинг: 0 / 0
11 сообщений из 111, страница 5 из 5
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Ноги... Крылья.... Главное ХВОСТ!!!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]