Conectar tabelas de dados externas (FDW)
Collection: Connect to foreign data (FDW)Community Edition+Introdução
Plugin de conexão a tabelas de dados remotas baseado na implementação de foreign data wrapper do banco de dados. Atualmente, oferece suporte aos bancos de dados MySQL e PostgreSQL.
- Conectar uma fonte de dados significa estabelecer uma conexão com um banco de dados específico ou serviço de API, podendo utilizar integralmente os recursos do banco de dados ou os serviços fornecidos pela API;
- Conectar uma tabela de dados externa significa obter dados de uma fonte externa e mapeá-los para uso local. Nos bancos de dados, isso é chamado de FDW (Foreign Data Wrapper), uma tecnologia de banco de dados que permite usar tabelas remotas como tabelas locais, conectando apenas uma tabela por vez. Como o acesso é remoto, há várias restrições e limitações durante o uso.
As duas abordagens também podem ser usadas em conjunto: a primeira é usada para estabelecer a conexão com a fonte de dados, e a segunda, para acessar dados entre diferentes fontes. Por exemplo, depois de conectar uma determinada fonte de dados PostgreSQL, uma das tabelas dessa fonte pode ser uma tabela de dados externa criada com base em FDW.
MySQL
O MySQL usa o mecanismo federated, que precisa ser ativado, e oferece suporte à conexão com MySQL remoto e bancos de dados compatíveis com seu protocolo, como o MariaDB. Para mais informações, consulte a documentação Federated Storage Engine.
PostgreSQL
No PostgreSQL, diferentes tipos de extensões fdw podem ser usados para oferecer suporte a diferentes tipos de dados remotos. Atualmente, há suporte para as seguintes extensões:
- postgres_fdw: conecta-se a bancos de dados PostgreSQL remotos no PostgreSQL.
- mysql_fdw (em desenvolvimento): conecta-se a bancos de dados MySQL remotos no PostgreSQL.
- Para outros tipos de extensões fdw, consulte PostgreSQL Foreign Data Wrappers. Para integrá-las ao NocoBase, é necessário implementar a interface de adaptação correspondente no código.
Instalação
Pré-requisitos
- Se o banco de dados principal do NocoBase for MySQL, será necessário ativar
federated. Consulte Como ativar o mecanismo federated no MySQL
Em seguida, instale e ative o plugin por meio do gerenciador de plugins

Manual do usuário
No menu suspenso「Gerenciamento de tabelas de dados > Criar tabela de dados」, selecione「Conectar dados externos」

No menu suspenso「Serviço de banco de dados」, selecione um serviço de banco de dados existente ou「Criar serviço de banco de dados」

Criar serviço de banco de dados

Depois de selecionar o serviço de banco de dados, no menu suspenso「Tabela remota」, selecione a tabela de dados à qual deseja se conectar.

Configurar informações dos campos

Se a tabela remota tiver alterações em sua estrutura, você também poderá「Sincronizar a partir da tabela remota」

Sincronização da tabela remota

Por fim, ela será exibida na interface


