powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Выбор "решения"
11 сообщений из 11, страница 1 из 1
Выбор "решения"
    #33007094
maximator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приветствую Вас. Для меня этот форум новый, но решил спросит тут.

Задача следующая:

1. Есть 4-10 "под серверов" (под этим названием я подразумеваю компьютер с установленным Apache, MySQL).
2. Каждый из них имеет диалапное подключение к интернету (допустим раза 2-4 в сутки)
3. Есть "главный" сервер (полноценный сервер, постоянный канал и т.д.)
4. На каждом из "под серверов" накапливаются изменения, дополнения или другие команды для базы
5. 2-4 раза в сутки, эти под сервера подцепляются к инету, активируется "синхронизация" с главным сервером.

Суть задачи: иметь на всех машинах (сервере, под сервере) свежую базу.
Проблема:

есть несколько вариантов проблем:

1. Кодга данные на одном из подсерверов удаляются, в тоже время на другом подсервере они изменяются (конфликт, данные нет, но их надо изменить) - решение: паралельные версии, нет понятия "удалить", есть понятие "поставить на удаление"

2. Одновременное изменение данных на разных подсерверах. Ренешие- паралельные версии, лочить данные если их кто то берет на "изменение"

это я описал задачу, недеюсь суть более менее ясна. теперь вопрос:

Возможно ли решение такой задачи средствами не MySQL с накомплением изменении, может есть другой путь, на другой ДБ ?
...
Рейтинг: 0 / 0
Выбор "решения"
    #33007489
Yo!!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
это как :)
у тебя ноды воходят на связь раз в несколько часов, а ты требуешь лочить данные на всех нодах при изменении.

если "Суть задачи: иметь на всех машинах (сервере, под сервере) свежую базу." то смотри репликацию, незнаю есть ли она в mysql.
...
Рейтинг: 0 / 0
Выбор "решения"
    #33008408
maximator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вопрос поставлен не в том как это зделать именно средствами MySQL, вопрос поставлен как зделать ;) варианты других баз приветствуются
...
Рейтинг: 0 / 0
Выбор "решения"
    #33008727
Yo!!
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
у тебя требования неральны. ты похоже хочешь иметь полностью синхронизированые ноды при этом делать синхронизацию только пару раз в день. стандартное решение - репликация, но кто из бесплатных умеет оффлайн репликацию не знаю, глянь тут:

http://replication.chat.ru/
...
Рейтинг: 0 / 0
Выбор "решения"
    #33010845
CruelGenius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как то похоже была организована ( и сейчас наверное ) сеть FIDO.
...
Рейтинг: 0 / 0
Выбор "решения"
    #33010922
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CruelGeniusКак то похоже была организована ( и сейчас наверное ) сеть FIDO.
Пожалуй, затруднюсь назвать более далекое от реальности высказывание.
...
Рейтинг: 0 / 0
Выбор "решения"
    #33012827
CruelGenius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer CruelGeniusКак то похоже была организована ( и сейчас наверное ) сеть FIDO.
Пожалуй, затруднюсь назвать более далекое от реальности высказывание.

Почему?
...
Рейтинг: 0 / 0
Выбор "решения"
    #33016926
Yuraz.com
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. На каждую таблицу повесить триггер, и в зависимости от Update, Insert, Delete генерить (расширенной ХП я бы воспользовался в MSSQL, в MySQL не знаю как) файлик (TXT, XML...) на операции. Формат примерно такой
IDМашины, Время, Операция Подробно (в своем формате).
Ну и по диалапу когда выходим, файл отсылаем куда следует. Сервер принимает, обрабатывает в хронологическом порядке, заносит к себе в "мастер таблицы".
2. На клиентах я бы делал только UPDATE и INSERT. DELETE любое там не надо делать. Если это про справочники. А если надо прописать какую нибудь еденицу в справочник (Товаров, Покупателей...) Делаем "заявку" на сервер, сливаем ее по диалапу, сервер вам отправляет файлик (TXT, XML...) с инструкцией.

Короче место для творчества огромное, стандартной репликацией, даже если она и есть в БД я бы не пользовался. Ну или ограничился только "сливом" файликов (TXT, XML...). Обработку все равно вручную надо делать.
Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Выбор "решения"
    #33017054
Фотография Александр Гoлдун
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maximator пишет:

> 1. Есть 4-10 "под серверов" (под этим названием я подразумеваю компьютер
> с установленным Apache, MySQL).
> 2. Каждый из них имеет диалапное подключение к интернету (допустим раза
> 2-4 в сутки)
> 3. Есть "главный" сервер (полноценный сервер, постоянный канал и т.д.)
> 4. На каждом из "под серверов" накапливаются изменения, дополнения или
> другие команды для базы
> 5. 2-4 раза в сутки, эти под сервера подцепляются к инету, активируется
> "синхронизация" с главным сервером.
>
> Суть задачи: иметь на всех машинах (сервере, под сервере) свежую базу.

Достаточно типовая задача, решаемая штатными средствами Sybase ASA

> Проблема:
>
> есть несколько вариантов проблем:
>
> 1. Кодга данные на одном из подсерверов удаляются, в тоже время на
> другом подсервере они изменяются (конфликт, данные нет, но их надо
> изменить) - решение: паралельные версии, нет понятия "удалить", есть
> понятие "поставить на удаление"

Такие конфликты лучше исключать на этапе проектирования. Например
запретить удаление.

> 2. Одновременное изменение данных на разных подсерверах. Ренешие-
> паралельные версии, лочить данные если их кто то берет на "изменение"

Такие ситуации разруливаются специальными триггерами, срабатывающими на
подобные конфликты

> Возможно ли решение такой задачи средствами не MySQL с накомплением
> изменении, может есть другой путь, на другой ДБ ?

Документация по репликации в Sybase ASA доступна на русском языке.

http://www.sql.ru/faq/faq_topic.aspx?fid=286
Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Выбор "решения"
    #33017061
Фотография Александр Гoлдун
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В догонку - темы немного пересекаются.
...
Рейтинг: 0 / 0
Выбор "решения"
    #33020596
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CruelGenius softwarer CruelGeniusКак то похоже была организована ( и сейчас наверное ) сеть FIDO.
Пожалуй, затруднюсь назвать более далекое от реальности высказывание.Почему?
По той причине, что сеть FIDO была и остается синхронизирующей исключительно insert-ы, если пользоваться БД-шными аналогиями.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Выбор "решения"
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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