Распределенная база данных — это база данных , в которой данные хранятся в разных физических местах. [1] Он может храниться на нескольких компьютерах , расположенных в одном физическом месте (например, в центре обработки данных); или, возможно, рассредоточены по сети взаимосвязанных компьютеров. В отличие от параллельных систем , в которых процессоры тесно связаны и составляют единую систему баз данных, распределенная система баз данных состоит из слабосвязанных сайтов, не имеющих общих физических компонентов.
Системные администраторы могут распределять наборы данных (например, в базе данных) по нескольким физическим местам. Распределенная база данных может располагаться на организованных сетевых серверах или децентрализованных независимых компьютерах в Интернете , в корпоративных интрасетях или экстрасетях или в сетях других организаций . Поскольку распределенные базы данных хранят данные на нескольких компьютерах, распределенные базы данных могут повысить производительность на рабочих местах конечных пользователей , позволяя обрабатывать транзакции на многих машинах, а не ограничиваться одной. [2]
Два процесса гарантируют актуальность и актуальность распределенных баз данных: репликация [3] и дублирование .
Как репликация, так и дублирование могут поддерживать актуальность данных во всех местах распространения. [2]
Помимо репликации и фрагментации распределенных баз данных, существует множество других технологий проектирования распределенных баз данных. Например, технологии локальной автономии, синхронных и асинхронных распределенных баз данных. Реализация этих технологий может зависеть и действительно зависит от потребностей бизнеса, а также от чувствительности/ конфиденциальности данных, хранящихся в базе данных, а также от цены, которую бизнес готов потратить на обеспечение безопасности , согласованности и целостности данных .
При обсуждении доступа к распределенным базам данных Microsoft предпочитает термин « распределенный запрос» , который определяется в зависимости от протокола как «любой оператор SELECT, INSERT, UPDATE или DELETE, который ссылается на таблицы и наборы строк из одного или нескольких внешних данных OLE DB. источники». [4] Oracle предоставляет более ориентированное на язык представление, в котором распределенные запросы и распределенные транзакции являются частью распределенного SQL . [5]
распределенный запрос[:] Любой оператор SELECT, INSERT, UPDATE или DELETE, который ссылается на таблицы и наборы строк из одного или нескольких внешних источников данных OLE DB.
Распределенный SQL синхронно получает доступ и обновляет данные, распределенные по нескольким базам данных. [...] Распределенный SQL включает распределенные запросы и распределенные транзакции.