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

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

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

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

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

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

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

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

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

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

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

Почему?
...
Рейтинг: 0 / 0
14.04.2005, 18:59
    #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
14.04.2005, 20:35
    #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
14.04.2005, 20:47
    #33017061
Александр Гoлдун
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Выбор "решения"
В догонку - темы немного пересекаются.
...
Рейтинг: 0 / 0
18.04.2005, 11:33
    #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]