Подключение внешних таблиц данных (FDW)
Коллекция: подключение к внешним данным (FDW)Community Edition+Введение
Плагин для подключения удалённых таблиц данных на основе технологии foreign data wrapper базы данных. В настоящее время поддерживаются базы данных MySQL и PostgreSQL.
- Подключение источника данных означает установление соединения с определённой базой данных или API-сервисом, что позволяет использовать все возможности базы данных или сервисы, предоставляемые API;
- Подключение внешних таблиц данных означает получение данных из внешнего источника и их отображение для использования локально. В базах данных это называется FDW(Foreign Data Wrapper)— технология баз данных, предназначенная для использования удалённых таблиц как локальных. Подключение выполняется только по одной таблице за раз. Поскольку доступ осущест вляется удалённо, при использовании существуют различные ограничения и особенности.
Эти два подхода также можно использовать совместно: первый — для установления соединения с источником данных, второй — для доступа к данным из разных источников. Например, можно подключиться к источнику данных PostgreSQL, в котором определённая таблица создана на основе FDW и является внешней таблицей данных.
MySQL
MySQL использует движок federated, который необходимо активировать. Он поддерживает подключение к удалённым MySQL и совместимым с его протоколом базам данных, например MariaDB. Подробнее см. в документации Federated Storage Engine.
PostgreSQL
В PostgreSQL для поддержки различных типов удалённых данных можно использовать расширения fdw разных типов. В настоящее время поддерживаются следующие расширения:
- postgres_fdw:подключение в PostgreSQL к удалённой базе данных PostgreSQL.
- mysql_fdw(в разработке):подключение в PostgreSQL к удалённой базе данных MySQL.
- Для расширений fdw других типов см. PostgreSQL Foreign Data Wrappers. Для подключения к NocoBase необходимо реализовать соответствующий адаптационный интерфейс в коде.
Установка
Предварительные условия
- Если основной базой данных NocoBase является MySQL, необходимо активировать
federated. См. Как включить движок federated в MySQL.
Затем установите и активируйте плагин через менеджер плагинов.

Руководство пользователя
В раскрывающемся списке «Управление таблицами данных > Создать таблицу данных» выберите «Подключить внешние данные».

В раскрывающемся списке «Служба базы данных» выберите существующую службу базы данных или «Создать службу базы данных».

Создание службы базы данных

После выбора службы базы данных в раскрывающемся списке «Удалённая таблица» выберите таблицу данных, которую необходимо подключить.

Настройка информации о полях

Если структура удалённой таблицы изменилась, можно также выбрать «Синхронизировать с удалённой таблицей».

Синхронизация удалённой таблицы

В конце таблица будет отображаться в интерфейсе.


