Logotipo do Nilo

Postgres multi-inquilino fala PostgreSQL

Conectar Nilo para Excel, Planilhas Google, IA e REST

Nile — Postgres para aplicativos B2B multi-tenant. Os relatórios aqui abrangem todos os tenants, que geralmente é o objetivo.

Uma conexão, todas as superfícies

Para onde seus dados do Nilo podem ir.

O Query Streams lê dados do Nile a partir do Microsoft Excel, Google Sheets, Power BI, assistentes de IA via MCP e um endpoint REST através de uma única conexão somente leitura. O Nile virtualiza os tenants dentro de um único banco de dados Postgres, em vez de fornecer um banco de dados próprio para cada cliente. Assim, as tabelas com reconhecimento de tenant possuem uma coluna `tenant_id`, e uma única conexão pode visualizar todos os tenants. Seu aplicativo se limita a um tenant por vez; uma conexão de relatório não, e para análises entre clientes, esse é exatamente o comportamento desejado.

Nile é PostgreSQL na rede — o driver padrão, portanto, todas as orientações abaixo se aplicam sem alterações. A única parte específica do Nile é a string de conexão, abordada em detalhes de conexão.

  1. Para sua equipe, fornecedores e parceiros.
  2. Do Nilo à Excelência Microsoft Excel · Suplemento do Excel

    Importe os resultados do Nilo em tempo real diretamente para uma planilha e atualize-os sob demanda — Excel para desktop, Excel Online, Microsoft 365.

    Guia do PostgreSQL
  3. Do Nilo ao Google Sheets Suplemento de planilhas

    Execute uma consulta Nile salva na barra lateral e arraste as linhas para a planilha. Os colaboradores que compartilharam a planilha podem atualizá-la por conta própria.

    Guia do PostgreSQL
  4. Pergunte a Nova sobre o Nilo Nova AI · texto para SQL

    Faça uma pergunta em linguagem simples. O Nova já conhece suas tabelas do Nile, escreve e executa o SQL, explica a resposta e a exibe em gráficos — sem necessidade de escrever consultas ou fornecer credenciais.

    Como funciona o Nova
  5. Visualizador de Dados do Nilo Compartilhamento de resultados · equipe, fornecedores, parceiros · celular, tablet, computador

    Compartilhe os resultados do Nile em tempo real com qualquer pessoa — um colega, um fornecedor, um parceiro — como uma tabela que pode ser adicionada aos favoritos e que é atualizada automaticamente ao ser aberta em um celular, tablet ou computador. Eles veem os resultados, nunca o SQL ou as credenciais.

    Como funciona o Visualizador de Dados
  6. Para aplicativos e sistemas
  7. API REST do Nilo endpoint HTTP

    Publique uma consulta Nile como um endpoint JSON autenticado que qualquer aplicativo pode chamar, com uma especificação OpenAPI 3.1 e coleções prontas para Postman, Insomnia e Hoppscotch. Nenhuma porta de banco de dados é aberta.

    Guia do PostgreSQL
  8. Do Nilo ao Power BI Power Query M

    Cole o arquivo M do Power Query gerado no Editor Avançado do Power BI e o relatório exibirá os resultados do Nile em tempo real via HTTPS — sem driver ODBC, sem porta de banco de dados aberta.

    Como funciona o Power BI
  9. Do Nilo ao Airtable Plataforma de automação

    Sincronize as linhas do Nile com uma base do Airtable de acordo com uma programação ou busque-as dentro de um script de automação do Airtable.

    Guia do PostgreSQL
  10. Nilo até Baserow Plataforma de automação

    Alimente uma tabela do Baserow a partir do Nile através do endpoint REST — hospedado localmente ou na nuvem do Baserow.

    Guia do PostgreSQL
  11. Do Nilo à Mesa Marinha Plataforma de automação

    Mantenha uma base de dados do SeaTable atualizada com dados do Nilo sem exportar um arquivo ou expor o banco de dados.

    Guia do PostgreSQL
  12. Do Nilo ao Smartsheet Plataforma de automação

    Integre os resultados do Nile a uma grade do Smartsheet para que os planos e relatórios sejam lidos do sistema de origem, e não da exportação da semana passada.

    Guia do PostgreSQL
  13. Do Nilo à Bigorna Anvil Works · Plataforma de aplicativos

    Faça backup de um aplicativo Anvil Python com Nile por meio do endpoint REST, em vez de incorporar as credenciais do banco de dados no aplicativo.

    Guia do PostgreSQL
  14. Para ferramentas de IA
  15. Servidor MCP do Nilo Clientes Claude, Cursor e MCP

    Conceda a um assistente de IA acesso somente leitura ao Nile com o esquema necessário para escrever SQL corretamente — sem credenciais no chat.

    Guia do PostgreSQL
  16. Entregue às pessoas
  17. Alertas e relatórios sobre o Nilo Slack · Discord · E-mail · Webhook

    Programe uma consulta Nile para que os resultados sejam entregues no Slack, Discord, por e-mail ou por um webhook assinado — ou retenha a mensagem até que a contagem de linhas, um limite ou uma variação percentual ultrapasse o valor definido.

    Como funcionam os alertas e relatórios

Como funciona

5 etapas, sem alteração no firewall de entrada

01

Instale o Agente de Rede em uma máquina que tenha acesso à internet. Ele abre uma conexão de saída e nunca fica em modo de escuta, portanto, não é necessária nenhuma regra de firewall de entrada.

02

No console do Nile, abra o banco de dados, depois Configurações e Conexão e escolha a opção PostgreSQL.

03

Gere uma credencial caso ainda não possua uma. O Nile exibe a senha apenas uma vez, naquele momento, portanto, copie-a antes de sair da página.

04

Cole a string de conexão no primeiro campo. O host, a porta, o banco de dados, o nome de usuário e a senha serão lidos automaticamente.

05

Deixe a opção "Usar SSL" ativada, teste e salve. Leia os dados do Microsoft Excel, Google Sheets, Power BI, MCP ou REST através dessa única conexão.

Análise detalhada do recurso

O que o Nilo te dá

Um banco de dados, cada inquilino, uma consulta.

O modelo do Nilo é a parte interessante deste conector, e muda a finalidade de uma conexão de relatório.

  • A Nile mantém todos os inquilinos em um único banco de dados Postgres e os separa com uma coluna tenant_id em tabelas específicas para cada inquilino, em vez de fornecer a cada cliente um banco de dados ou esquema separado.
  • Seu aplicativo define um contexto de locatário por conexão e, portanto, vê um cliente por vez. Uma conexão do Query Streams não define esse contexto, então ela vê todos os clientes.
  • Isso faz com que a geração de relatórios entre locatários seja uma simples operação de GROUP BY, em vez de um projeto de integração. O uso por cliente, a receita por plano ou quais contas não fizeram login neste mês são todos apresentados em um único relatório.
  • Isso também significa que o controle de acesso fica a seu critério. Uma conexão aqui não está limitada a um locatário, portanto, se você precisar de relatórios por cliente, filtre por tenant_id na consulta salva e compartilhe essa consulta em vez da conexão.
  • Tudo o que o agente executa é somente leitura, portanto, nada aqui pode modificar os dados do locatário, independentemente do que a consulta retorne.
-- O relatório entre locatários é um GROUP BY comum SELECT t.name AS tenant, COUNT(o.id) AS orders, SUM(o.amount) AS revenue FROM public.tenants AS t JOIN public.orders AS o ON o.tenant_id = t.id WHERE o.placed_at >= now() - interval '30 days' GROUP BY t.name ORDER BY revenue DESC;

As credenciais são exibidas uma única vez e os endpoints regionais são Postgres comuns.

Duas notas práticas que abrangem a maior parte do processo de configuração.

  • O Nile gera um ID de credencial como nome de usuário e exibe a senha apenas uma vez. Se você a perder, gere outra em vez de tentar recuperar a antiga.
  • Os endpoints são regionais e terminam em .db.thenile.dev, na porta padrão 5432. Não há pool de servidores neste caminho e o agente não aplica nenhuma adaptação de pool de servidores.
  • O TLS é obrigatório e o agente o impõe para nomes de host do Nile; portanto, desmarcar a caixa de seleção SSL não gera uma conexão não criptografada. A cadeia de certificados não é verificada. — interprete isso como uma proteção contra qualquer pessoa que esteja lendo o tráfego, e não como uma prova de qual servidor respondeu.
  • A sequência de conexão colada é descartada assim que os campos são preenchidos, de forma que a senha seja armazenada em um único local, em vez de dois.

Compartilhado por todos os conectores de banco de dados

Verdadeiro para todos os conectores de banco de dados.

  • Apenas envio — o agente abre uma conexão criptografada para o Query Streams. Nenhuma porta de entrada para encaminhar, nenhuma VPN, nenhuma lista de permissões de IP, nada sobre seu banco de dados exposto à internet.
  • As credenciais permanecem no mesmo lugar. — O nome de usuário e a senha do banco de dados ficam armazenados na máquina onde você instalou o agente. O Query Streams nunca os recebe e não consegue acessar seu banco de dados por conta própria.
  • Somente leitura, obrigatório — uma instrução por vez, apenas SELECT e similares. Uma operação de escrita é rejeitada em sua própria máquina antes mesmo de ser enviada ao servidor, em vez de depender de uma permissão que alguém se lembrou de definir.
  • Implante quantos agentes desejar. — uma por site, região ou nuvem. Todas as fontes de dados que eles podem visualizar aparecem em um único menu suspenso, para que ninguém precise saber qual agente hospeda o quê.

O que você obtém depois de salvar uma consulta.

  • Compartilhe a capacidade, não o SQL. — um colega ou um parceiro externo pode executar sua consulta e alterar seus filtros sem nunca ver a declaração por trás dela.
  • Filtros de ambas as direções — declare-as você mesmo como @variáveis ou deixe o conector identificar os valores literais já presentes na sua cláusula WHERE e oferecê-los como listas suspensas.
  • Leia de qualquer lugar — Microsoft Excel, Google Sheets, Power BI, a API REST, assistentes de IA via MCP, o Construtor de Consultas e o Nova leem a mesma consulta salva.
  • Execute várias ao mesmo tempo — cinco consultas salvas em cinco abas de planilha, transmitidas simultaneamente, independentemente do tamanho dos resultados.
  • Conecte-o a qualquer outro dispositivo que você já tenha utilizado. — outro banco de dados, uma API de negócios ou uma pasta de arquivos, em uma única instrução somente leitura.

SQL entre fontes diferentes

Integre o Nilo ao restante dos seus dados.

Uma única instrução pode abranger o Nile e suas outras conexões simultaneamente. Cada fonte executa apenas a parte que consegue, transmite o resultado de volta e a junção ocorre centralmente — as fontes nunca se comunicam entre si e nada é copiado para nenhum lugar.

3 conexões · 3 agentes

Nilo Postgres multi-inquilino
Microsoft SQL Server Motor relacional
Listrado Pagamentos e faturamento

Uma declaração

-- nada copiado, nada mesclado, nada agendado
SELECIONAR   c.região, COUNT(*) AS pedidos, SUM(i.valor_devido) AS faturado
DE     aplicativo do Nilo.ordens.públicas1  f
JUNTAR     erp_sql.dbo.clientes2   c LIGADO c.id = f.id_do_cliente
JUNTAR     cobrança.stripe.faturas3 i LIGADO i.cliente = c.stripe_id
GRUPO POR c.região
ORDER BY faturado DESC;

As três partes são conexão, esquema e tabela — e o nome da conexão é o que você escolheu. Colunas ilustrativas; suas tabelas serão suas tabelas. O acesso somente leitura se aplica a cada componente: apenas SELECT, WITH e EXPLAIN, com um limite máximo de dados que uma única fonte pode fornecer para uma consulta. Como funcionam as consultas federadas

Detalhes da conexão

Do que o Nilo precisa

Hospedar
<region>.db.thenile.dev
Porto
5432
Motorista
Npgsql, incluído no agente — nada a instalar no lado do Nile.
Colar formato
A string de Banco de Dados, Configurações, Conexão, PostgreSQL — como um URI postgres://
Nome de usuário
O ID da credencial gerado no console, não um endereço de e-mail.
TLS
Obrigatório e obrigatório para nomes de host do Nile. Criptografado; a cadeia de certificados não é verificada.
Agrupamento
Nenhuma. O agente não aplica nenhuma adaptação de pooler para o Nilo.
Escopo do inquilino
Nenhum contexto de locatário está definido, portanto a conexão vê todos os locatários. Filtre por tenant_id na consulta quando precisar de um.
Salvo como
PostgreSQL, com o Nilo mantido como um emblema.
Esquema padrão
público, que é o que uma referência federada carrega.

Vale a pena entender o Nile como um alvo de relatórios especificamente por causa do que ele não faz aqui. O isolamento de locatário que o torna útil para desenvolvimento é aplicado por conexão, pelo aplicativo, quando ele define um contexto de locatário. Uma conexão de relatório que nunca define um contexto de locatário não está ignorando um controle — está usando o banco de dados da maneira que o modelo prevê para um operador que precisa visualizar todo o ambiente.

Na prática, a consequência é que a decisão sobre o escopo passa a ser tomada na consulta, e não na conexão. Adicionar um filtro `tenant_id` a uma consulta salva e compartilhá-la fornece uma visão com escopo para o cliente, sem conceder a conexão a ninguém. Esse é o mesmo padrão que o Query Streams utiliza em todos os outros casos: compartilhar a capacidade de executar algo, não as credenciais por trás disso.

Para uma consulta entre fontes diferentes, o Nile usa o Postgres padrão. Uma conexão chamada `nile_app` é escrita como `nile_app.public.orders` e realiza um JOIN com uma pasta de arquivos CSV, um sistema de registro local ou uma API de faturamento em uma única instrução somente leitura — sem nenhuma cópia ou agendamento.

Documentação do fornecedor: www.thenile.dev

Perguntas frequentes

Perguntas sobre o Nilo

Quais ferramentas conseguem ler dados do Nile por meio de fluxos de consulta?

Tudo isso, a partir de uma única conexão: Excel, Planilhas Google, MCP, API REST, Airtable, Baserow, SeaTable, Smartsheet, Anvil, Power BI, alertas e relatórios agendados. Conecte o banco de dados uma única vez e todas as plataformas lerão a mesma conexão somente leitura — não há configuração por ferramenta nem necessidade de uma segunda cópia dos dados.

Preciso abrir uma porta no firewall para meu banco de dados Nile?

Não. O Agente de Rede do Query Streams é executado dentro da sua rede e abre uma única conexão criptografada de saída. Nada fica à escuta do tráfego de entrada, nenhuma VPN é necessária e o banco de dados mantém suas regras de firewall existentes.

É possível alterar dados em fluxos de consulta no Nile?

Não. O agente impõe o modo somente leitura no ponto de execução — uma instrução por vez, apenas SELECT e similares. As credenciais permanecem no agente e nunca são enviadas para o Query Streams.

O que o Query Streams precisa para se conectar ao Nile?

Um host acessível, uma função e sua senha — o agente carrega o driver, portanto nada é instalado no banco de dados. Host: <região>.db.thenile.dev. Porta: 5432. Driver: Npgsql, carregado pelo agente — nada para instalar no lado do Nile. Formato de colagem: A string de Banco de Dados, Configurações, Conexão, PostgreSQL — como um URI postgres://.

Posso unir o Nile a outro banco de dados na mesma consulta?

Sim, trata-se de uma consulta federada. Uma única instrução pode referenciar o Nile e suas outras conexões simultaneamente, escritas como conexão.esquema.tabela. Cada origem executa apenas a parte que consegue e transmite o resultado de volta; a junção ocorre centralmente, portanto as origens nunca se conectam entre si e nada é copiado ou agendado. O modo somente leitura se aplica a cada parte — apenas SELECT, WITH e EXPLAIN — e há um limite para a quantidade de dados que uma origem pode fornecer para uma única consulta. Consultas federadas são um recurso do plano; a página de consultas federadas contém os limites atuais de origem e tamanho.

Conectar-se ao Nile é diferente de conectar-se ao PostgreSQL?

Apenas a string de conexão. O Nile utiliza o protocolo de comunicação do PostgreSQL, portanto, filtros, agendamento, compartilhamento, os complementos do Excel e do Google Sheets e o servidor MCP funcionam de maneira idêntica. O cartão Nile preenche automaticamente as configurações de host, porta e SSL que o provedor espera.

Existe algum guia do Nilo ao Excel?

Sim, é o guia do PostgreSQL e está correto para o Nile, conforme descrito. O Nile utiliza o protocolo de comunicação do PostgreSQL, portanto, a comunicação entre Nile e Excel, Nile e Planilhas Google e qualquer outro destino segue os mesmos passos. A única parte específica do Nile é a string de conexão, e o guia do Nile a preenche automaticamente.

Coloque o Nilo onde o trabalho acontece.

Instale o agente, aponte-o para seu banco de dados e escolha um destino.

Somente leitura Apenas envio As credenciais permanecem com o agente.