Сколько баз данных для поддержки электронной коммерции? - PullRequest
1 голос
/ 03 июня 2010

У меня есть система с двумя базами данных, одна из которых используется веб-сайтом, ориентированным на клиента, вторая - системой выполнения заказов "backroom".Меня попросили выполнить запросы с веб-сайта в подсобную систему.Я бы предпочел этого не делать - кажется рискованным разрешать выполнение веб-запроса без внимания во внутренней системе.Кроме того, это означает открытие маршрутизации в брандмауэре, чтобы разрешить внешние подключения к внутреннему серверу.

Какова лучшая практика для электронной коммерции?Запустить всю компанию из одной базы данных?Или отдельные базы данных для каждой системы и промежуточное программное обеспечение для их подключения?

Иногда веб-приложению может потребоваться получить дату из внутренней системы, но не на основе HTTP-запроса из Интернета.

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

Ответы [ 3 ]

0 голосов
/ 03 июня 2010

Что ж, вы могли бы реплицировать данные из ваших транзакционных баз данных в копии только для чтения, чтобы выполнять запросы отчетов как относительно быстрое решение для исправления. Однако при использовании электронной коммерции вам необходимо знать о PCI и следить за тем, чтобы вы выполняли их требования по защите конфиденциальных данных клиентов / кредитных карт. Руководство по соблюдению PCI

Следующим шагом является создание хранилища данных, которое организовано специально для целей отчетности - упростить написание запросов, а также намного эффективнее их выполнять для нарезки и нарезки данных - видя их с разных точек зрения ). Ральф Кимбалл Хранилище данных Гуру

0 голосов
/ 03 июня 2010

Здесь много вариантов.

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

2) Услуги. Вы можете защитить свою внутреннюю базу данных, используя службу, которая принимает запросы и отправляет данные обратно. Это исключает прямой доступ к вашей внутренней базе данных, но дает вам преимущество данных, которых нет в данных, как это было бы в варианте 1.

3) Сервисный автобус. Если вам это нужно, вы можете поместить промежуточное программное обеспечение между двумя системами, которые занимаются такими вещами, как гарантированная доставка и ETL.

По сути, есть много правильных ответов - и несколько неправильных ответов ...

Неправильные ответы включают прикрепление всего в одной базе данных, предоставление прямого доступа из Интернета к вашей внутренней базе данных и настройку связанного сервера между двумя базами данных!

0 голосов
/ 03 июня 2010

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

Еще менее безопасным было бы использование одной базы данных, к которой клиенты подключаются через HTTP-сервер. Распространено наличие нескольких баз данных в разных зонах безопасности.

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