* [room] совет нужен @ 2005-08-24 13:24 Genix 2005-08-24 13:28 ` Vasya Makarov ` (3 more replies) 0 siblings, 4 replies; 9+ messages in thread From: Genix @ 2005-08-24 13:24 UTC (permalink / raw) To: культурный офтопик Приветствую! Подскажите пожалуйста, как лучше реализовать следующую схему: Имеется центральный сервер СУБД и несколько филиальских. В каждом филиале запущено несколько программ, работающих с базой данных. Хочется добиться такого, чтобы при потере соединения, филиальские программы продолжали работать с базой, а при появлении база синхронизировалась с основной. Работа в основном ведется по введению/созданию документов (т.е. insert'ы в какую-то таблицу и может чтение из каких-то справочных таблиц). Можно ли сделать это средствами СУБД? Или есть уже готовые решения? Что посоветуете, куда смотреть? Или может придется писать приложение, которое будет производить синхронизацию? -- У каждого в башке свои тараканы... ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [room] совет нужен 2005-08-24 13:24 [room] совет нужен Genix @ 2005-08-24 13:28 ` Vasya Makarov 2005-08-24 13:32 ` Genix 2005-08-25 2:34 ` Беляев В. Н. ` (2 subsequent siblings) 3 siblings, 1 reply; 9+ messages in thread From: Vasya Makarov @ 2005-08-24 13:28 UTC (permalink / raw) To: культурный офтопик Genix пишет: > Приветствую! > > Подскажите пожалуйста, как лучше реализовать следующую схему: > > Имеется центральный сервер СУБД и несколько филиальских. > В каждом филиале запущено несколько программ, работающих с базой данных. > Хочется добиться такого, чтобы при потере соединения, филиальские > программы продолжали работать с базой, а при появлении база > синхронизировалась с основной. > > Работа в основном ведется по введению/созданию документов (т.е. insert'ы > в какую-то таблицу и может чтение из каких-то справочных таблиц). > > Можно ли сделать это средствами СУБД? Или есть уже готовые решения? > Что посоветуете, куда смотреть? > > Или может придется писать приложение, которое будет производить > синхронизацию? > Если клиентские приложения самописные, можно в них буфер вставить. Или завести в каждом филиале локальную БД, которую и синхронизировать. -- Regards, Vasya ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [room] совет нужен 2005-08-24 13:28 ` Vasya Makarov @ 2005-08-24 13:32 ` Genix 2005-08-25 10:50 ` Gennadiy Redko 0 siblings, 1 reply; 9+ messages in thread From: Genix @ 2005-08-24 13:32 UTC (permalink / raw) To: drmoriarty, культурный офтопик Vasya Makarov wrote: >> Можно ли сделать это средствами СУБД? Или есть уже готовые решения? >> Что посоветуете, куда смотреть? >> >> Или может придется писать приложение, которое будет производить >> синхронизацию? >> > Если клиентские приложения самописные, можно в них буфер вставить. Или > завести в каждом филиале локальную БД, которую и синхронизировать. я сейчас тоже смотрю на вариант с синхронизацией. остановиться хочу на PostgreSQL, а кто что посоветует в качестве решения для репликации? slony не подходит по причине r/o slave'ов %( -- У каждого в башке свои тараканы... ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [room] совет нужен 2005-08-24 13:32 ` Genix @ 2005-08-25 10:50 ` Gennadiy Redko 0 siblings, 0 replies; 9+ messages in thread From: Gennadiy Redko @ 2005-08-25 10:50 UTC (permalink / raw) To: культурный офтопик > Vasya Makarov wrote: > >>> Можно ли сделать это средствами СУБД? Или есть уже готовые решения? >>> Что посоветуете, куда смотреть? http://www-rohan.sdsu.edu/doc/oracle/server803/A54653_01/toc.htm Не оно ? ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [room] совет нужен 2005-08-24 13:24 [room] совет нужен Genix 2005-08-24 13:28 ` Vasya Makarov @ 2005-08-25 2:34 ` Беляев В. Н. 2005-08-25 5:29 ` Genix 2005-08-25 9:49 ` Michael Shigorin 2005-08-25 20:31 ` Arioch 3 siblings, 1 reply; 9+ messages in thread From: Беляев В. Н. @ 2005-08-25 2:34 UTC (permalink / raw) To: культурный офтопик Hello Genix, Wednesday, August 24, 2005, 7:24:16 PM, you wrote: G> Имеется центральный сервер СУБД и несколько филиальских. G> В каждом филиале запущено несколько программ, работающих с базой данных. Это уже работает или еще только планируется? Если работает, то на чем? -- С уважением, Беляев ICQ: 119181289 ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [room] совет нужен 2005-08-25 2:34 ` Беляев В. Н. @ 2005-08-25 5:29 ` Genix 0 siblings, 0 replies; 9+ messages in thread From: Genix @ 2005-08-25 5:29 UTC (permalink / raw) To: "Беляев В.Н.", культурный офтопик Беляев В. Н. wrote: > G> Имеется центральный сервер СУБД и несколько филиальских. > G> В каждом филиале запущено несколько программ, работающих с базой данных. > > Это уже работает или еще только планируется? пока только планируется > Если работает, то на чем? в процессе выбора, ибо тащить informix в филиалы нет никакого желания -- У каждого в башке свои тараканы... ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [room] совет нужен 2005-08-24 13:24 [room] совет нужен Genix 2005-08-24 13:28 ` Vasya Makarov 2005-08-25 2:34 ` Беляев В. Н. @ 2005-08-25 9:49 ` Michael Shigorin 2005-08-25 20:31 ` Arioch 3 siblings, 0 replies; 9+ messages in thread From: Michael Shigorin @ 2005-08-25 9:49 UTC (permalink / raw) To: культурный офтопик On Wed, Aug 24, 2005 at 05:24:16PM +0400, Genix wrote: > Можно ли сделать это средствами СУБД? Или есть уже готовые решения? > Что посоветуете, куда смотреть? Могу поспрошать mysql'щиков знакомых. Сам туда не смотрел, но устроить распределённый typo3-хостинг немного интересно. :) -- ---- WBR, Michael Shigorin <mike@altlinux.ru> ------ Linux.Kiev http://www.linux.kiev.ua/ ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [room] совет нужен 2005-08-24 13:24 [room] совет нужен Genix ` (2 preceding siblings ...) 2005-08-25 9:49 ` Michael Shigorin @ 2005-08-25 20:31 ` Arioch 2005-08-26 7:00 ` Genix 3 siblings, 1 reply; 9+ messages in thread From: Arioch @ 2005-08-25 20:31 UTC (permalink / raw) To: smoke-room Genix пишет: > Приветствую! > > Подскажите пожалуйста, как лучше реализовать следующую схему: > > Имеется центральный сервер СУБД и несколько филиальских. > В каждом филиале запущено несколько программ, работающих с базой данных. > Хочется добиться такого, чтобы при потере соединения, филиальские > программы продолжали работать с базой, а при появлении база > синхронизировалась с основной. Много ли филиальских программ? нужна ли им промежуточная база, или проще каждую переводить в offline-режим, как почтовый киент ? > Работа в основном ведется по введению/созданию документов (т.е. insert'ы > в какую-то таблицу и может чтение из каких-то справочных таблиц). Справочные таблицы кэшируются-реплицируются на филиальный сервер, оттуда на клиентов и хранятся у них на винте в DBF. insert'ы оормляются как e-mail, и могут сидеть Исходящих сколько угодно, пока сеть не появится. Еще лучше - оформлять их как nws (форумный NNTP-протокол - вот вам и способ доступа к БД. В том же ibexpert.com на базе писем с доп. заголовками сделан встроенный в прогу багтрэкер - похожа его модель на то, что нужно? ) Я правда не верю, что этим действительно ограничивается работа программы, просто описать в двух строках ее вряд ли возможно :-) > > Можно ли сделать это средствами СУБД? Или есть уже готовые решения? > Что посоветуете, куда смотреть? в конфе по файрберду на ibase.ru года два назад было перечисленно три схенмы репликации (одна из них встроенна в ibexpert.com) и резюмированно что выбор и допилка сильно зависят от задачи. Простой такой вопрос - что делать у идентификаторами записей в таблицах? :-) Спроси, м.б. у кого в архивах ты втека найдется ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [room] совет нужен 2005-08-25 20:31 ` Arioch @ 2005-08-26 7:00 ` Genix 0 siblings, 0 replies; 9+ messages in thread From: Genix @ 2005-08-26 7:00 UTC (permalink / raw) To: культурный офтопик Arioch wrote: >> Подскажите пожалуйста, как лучше реализовать следующую схему: >> >> Имеется центральный сервер СУБД и несколько филиальских. >> В каждом филиале запущено несколько программ, работающих с базой данных. >> Хочется добиться такого, чтобы при потере соединения, филиальские >> программы продолжали работать с базой, а при появлении база >> синхронизировалась с основной. > > > Много ли филиальских программ? нужна ли им промежуточная база, или проще > каждую переводить в offline-режим, как почтовый киент ? первоначально хотелось наименьщими усилиями перевести готовую программу в режим работы без связи. и показалось, что репликация одно из самых быстрых решений, тем самым избежав внесения изменений в работу/код программы. а если так, то можно сделать либо репликацию на автомате, либо самописным сервисом (тут у программиста больше свободы но и реализовывать это тоже кому-то надо) > >> Работа в основном ведется по введению/созданию документов (т.е. >> insert'ы в какую-то таблицу и может чтение из каких-то справочных >> таблиц). > > > Справочные таблицы кэшируются-реплицируются на филиальный сервер, оттуда > на клиентов и хранятся у них на винте в DBF. ну зачем dbf? есть же hsqldb, sqlite -- вполне себе sql решение. от этих dbf уже одни только проблемы в распределенной сети (у нас еще осталась гетерогенная схема, SQL + DBF и куча софта который таскает данные туда/обратно) > insert'ы оормляются как e-mail, и могут сидеть Исходящих сколько > угодно, пока сеть не появится. Еще лучше - оформлять их как nws > (форумный NNTP-протокол - вот вам и способ доступа к БД. В том же > ibexpert.com на базе писем с доп. заголовками сделан встроенный в прогу > багтрэкер - похожа его модель на то, что нужно? ) что-то мне это напоминает изобретение велосипеда... или даже самоката а как быть если письмо (insert == email) потеряется? > Я правда не верю, что этим действительно ограничивается работа > программы, просто описать в двух строках ее вряд ли возможно :-) > >> >> Можно ли сделать это средствами СУБД? Или есть уже готовые решения? >> Что посоветуете, куда смотреть? > > > в конфе по файрберду на ibase.ru года два назад было перечисленно три > схенмы репликации (одна из них встроенна в ibexpert.com) и резюмированно > что выбор и допилка сильно зависят от задачи. а про interbase я и забыл ;) посмотрю, что у них есть > > Простой такой вопрос - что делать у идентификаторами записей в таблицах? > :-) делать их уникальными, т.е. привязанными к каждому филиальскому серверу. ну, раздать например всем номера В любом случае спасибо за свежую мысль!!!! -- У каждого в башке свои тараканы... ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2005-08-26 7:00 UTC | newest] Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2005-08-24 13:24 [room] совет нужен Genix 2005-08-24 13:28 ` Vasya Makarov 2005-08-24 13:32 ` Genix 2005-08-25 10:50 ` Gennadiy Redko 2005-08-25 2:34 ` Беляев В. Н. 2005-08-25 5:29 ` Genix 2005-08-25 9:49 ` Michael Shigorin 2005-08-25 20:31 ` Arioch 2005-08-26 7:00 ` Genix
Культурный офтопик This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/smoke-room/0 smoke-room/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 smoke-room smoke-room/ http://lore.altlinux.org/smoke-room \ smoke-room@lists.altlinux.org smoke-room@lists.altlinux.ru smoke-room@lists.altlinux.com smoke-room@altlinux.ru smoke-room@altlinux.org smoke-room@altlinux.com public-inbox-index smoke-room Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.smoke-room AGPL code for this site: git clone https://public-inbox.org/public-inbox.git