Распределенные БД или нет? - PullRequest
1 голос
/ 30 июня 2010

INFORMIX-SQL 7.32 (SE) Linux Pawnshop App.

У меня есть пользователи, которым принадлежит несколько ломбардов в радиусе 100 миль.Каждое приложение ломбарда работает с SE.Единственная функциональность, в которой нуждаются эти владельцы: возможность удаленного входа в любой магазин для просмотра транзакций, выполнения итогов и консолидации ежедневных итогов в конце рабочего дня.Это может быть достигнуто с помощью модемов удаленного доступа, поскольку приложение не нуждается в отображении BLOB.В конце дня итоги каждого магазина выгружаются в плоский файл и передаются в систему владельца.

Что получат мои владельцы, конвертировав их в распределенные базы данных? .. Способность выяснить, ведет ли клиент магазина в другом магазине или есть ли в другом магазине желаемый товар для продажи?(не важно, редко бывает).Большинство покупателей обычно ведут дела с одним и тем же магазином, и если у них нет желаемого товара для продажи, они посещают ломбард ближайших конкурентов.Какая выгода распространила бы предложение БД для выполнения тех же функций, что описаны в первом параграфе? .. Владельцы ломбардов абсолютно отказываются подключать свои производственные системы через Интернет!Они не доверяют его безопасности, даже используя VPN, Cisco и т. Д., Или его надежности!В этой части мира у провайдеров плохой послужной список для бесперебойной работы.Я знаю несколько приложений, которые были преобразованы из Интернета в коммутируемый доступ из-за проблем со связью!

Ответы [ 4 ]

2 голосов
/ 30 июня 2010

Распределенные БД, точнее Informix XPS и IDS, не имеют только одного преимущества.Если вы заботитесь только о получении данных из разных мест, вы можете сделать это с помощью только стратегии проектирования.Если вы добавите «branch_id» или что-то в этом роде, все готово.

Распределенные БД имеют много преимуществ, от доступности до масштабируемости.Сначала вы должны просмотреть все эти вещи.

Извините за такой ответ, но очень сложно дать вам прямой ответ по этой теме.

1 голос
/ 01 июля 2010

CouchDB - это система распределенных баз данных, основанная на одноранговых сетях.Любое количество хостов CouchDB (серверы и оффлайн-клиенты) могут иметь независимые «копии» одной и той же базы данных, где приложения имеют полную интерактивность базы данных (запрос, добавление, редактирование, удаление).Когда он снова подключен к сети или по расписанию, изменения в базе данных реплицируются в двух направлениях.

CouchDB имеет встроенное обнаружение конфликтов и управление ими, а процесс репликации происходит постепенно и быстро, копируя только документы и отдельные поля, измененные с момента предыдущегорепликация.Большинству приложений не требуется никакого специального планирования, чтобы воспользоваться преимуществами распределенных обновлений и репликации.

В отличие от громоздких попыток объединить распределенные функции с теми же устаревшими моделями и базами данных, это результат тщательного предварительного проектирования, проектированияи интеграция.Модели документов, представлений, безопасности и репликации, язык запросов специального назначения, эффективная и надежная структура дисков тщательно интегрированы для обеспечения надежной и эффективной системы.

0 голосов
/ 01 июля 2010

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

Если бы вы занялись распределенной операцией, я бы, вероятно, подумал о том, чтобы использовать простую топологию ER, где главным офисом является корневой офис, а остальными магазинами - конечные узлы. После этого вы внесете изменения в отдельные базы данных хранилища, реплицированные на узел HQ; Вы можете или не можете распространять данные обратно в другие магазины. Особенно с двумя магазинами, вы можете просто скопировать всю информацию в оба магазина; это дает вам автоматическое резервное копирование базы данных. (В этом случае вы, вероятно, настроили бы все узлы как корневые узлы - по крайней мере, пока цепочка не выросла, скажем, до пяти или шести узлов.)

Это даст вам некоторую устойчивость к аварийному восстановлению. Это также позволило бы штаб-квартире (в частности) видеть, что происходит в каждом магазине.

У меня сложилось впечатление, что вы, вероятно, в среднем не обсуждаете «транзакций в секунду»; скорость транзакций в одном магазине, вероятно, составляет несколько транзакций в минуту, при этом «несколько», возможно, составляют менее одного TPM. Следовательно, пропускная способность сети вряд ли будет узким местом в любой точке, даже при скорости набора номера (хотя это может быть пограничным).

0 голосов
/ 01 июля 2010

Если у вас не будет общего 90% + бесперебойной работы между базами данных, то распределенные базы данных не принесут никакой пользы.

Одним из основных преимуществ является предоставление отказоустойчивым крупным предприятиям, когдаодна машина выходит из строя или недоступна.Если у них база данных распределена по трем или четырем компьютерам, то потеря одного из них не влияет на их способность вести бизнес.

Вторым важным преимуществом является то, что база данных слишком велика для одного сервера, чтобы справитьсяс.Базы данных «Интернет-масштаба» (Amazon, Twitter и т. Д.) Имеют такой уровень трафика.У Walmart будет такой уровень трафика.Пара операций на витрине не будет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...