Configure o Openflow Connector for Box¶
Nota
O conector está sujeito aos termos do conector.
Este tópico descreve as etapas para configurar o Openflow Connector for Box.
Pré-requisitos¶
Certifique-se de ter revisado Sobre a Openflow Connector for Box.
Certifique-se de ter configurado o Openflow.
Obtenha as credenciais¶
Como desenvolvedor Box ou administrador Box, crie um aplicativo da plataforma Box da seguinte forma:
Navegue até o Console de desenvolvedor Box.
Selecione Create Platform App.
Selecione Custom App como o tipo de aplicativo.
Forneça um nome e uma descrição para o aplicativo e selecione uma finalidade na lista suspensa.
Selecione Server Authentication (with JWT) como o método de autenticação.
Selecione Create App.
Para configurar o aplicativo, navegue até a guia Configuration.
Na seção App Access Level, selecione App + Enterprise Access.
Na seção Application Scopes, selecione as seguintes opções:
Read all files and folders stored in Box.
Write all files and folders stored in Box: para fazer download de arquivos e pastas. Observe que o conector não pode carregar nenhum arquivo. A Snowflake recomenda conceder à conta de serviço apenas a função de visualizador. Para conceder ao aplicativo acesso aos arquivos no Box, selecione a pasta que deseja sincronizar. Compartilhe-o com a conta de serviço do aplicativo usando o e-mail da conta de serviço da etapa n. O Openflow Connector for Box é capaz de descobrir e baixar os arquivos da pasta especificada e de todas as suas subpastas, mas não pode modificar os arquivos.
Manage users: para ler os usuários na empresa.
Manage groups: para ler grupos e seus membros na empresa.
Manage enterprise properties: para ler eventos corporativos.
Na seção Add and Manage Public Keys, gere um par de chaves públicas/privadas. O Box faz o download de um arquivo de configuração JSON com uma chave privada.
Salve as alterações.
Navegue até a guia Authorization e envie o aplicativo para autorização de acesso à empresa.
Solicite ao administrador da empresa a aprovação do aplicativo.
Depois que a aprovação for concedida, vá para a guia General Settings e salve o endereço de e-mail da conta de serviço do aplicativo.
Para obter mais informações, consulte Configuração com JWT.
Configure a conta Snowflake¶
Como administrador de conta Snowflake, execute as seguintes tarefas manualmente ou usando o script incluído abaixo:
Crie uma nova função ou use uma função existente e conceda a Privilégios de banco de dados.
Crie um novo usuário de serviço Snowflake com o tipo SERVICE.
Conceda ao usuário do serviço Snowflake a função que você criou nas etapas anteriores.
Configure com a autenticação de pares de chaves para o usuário do Snowflake SERVICE da etapa 2.
A Snowflake recomenda enfaticamente essa etapa. Configure um gerenciador de segredos compatível com o Openflow, por exemplo, AWS, Azure e Hashicorp, e armazene as chaves públicas e privadas no armazenamento de segredos.
Nota
Se, por algum motivo, você não quiser usar um gerenciador de segredos, será responsável por proteger os arquivos de chave pública e chave privada usados para autenticação de pares de chaves de acordo com as políticas de segurança de sua organização.
Depois que o gerenciador de segredos estiver configurado, determine como você se autenticará nele. No AWS, é recomendável que você use a função de instância EC2 associada ao Openflow, pois dessa forma nenhum outro segredo precisa ser mantido.
No Openflow, configure um provedor de parâmetros associado a esse gerenciador de segredos, no menu de três traços no canto superior direito. Navegue até Controller Settings » Parameter Provider e, em seguida, busque os valores dos parâmetros.
Nesse momento, todas as credenciais podem ser referenciadas com os caminhos de parâmetros associados e nenhum valor sensível precisa ser mantido no Openflow.
Se qualquer outro usuário Snowflake precisar de acesso aos documentos e tabelas brutos ingeridos pelo conector (por exemplo, para processamento personalizado no Snowflake), conceda a esses usuários a função criada na etapa 1.
Designar um warehouse para o conector usar. Comece com o menor tamanho de warehouse e, em seguida, experimente o tamanho, dependendo do número de tabelas sendo replicadas e da quantidade de dados transferidos. Os números de tabelas grandes normalmente são mais bem dimensionados com warehouses multicluster, em vez de warehouses maiores.
Exemplo de configuração¶
--The following script assumes you'll need to create all required roles, users, and objects. --However, you may want to reuse some that are already in existence. --Create a Snowflake service user to manage the connector USE ROLE USERADMIN; CREATE USER <openflow_service_user> TYPE=SERVICE COMMENT='Service user for Openflow automation'; --Create a pair of secure keys (public and private). For more information, see --key-pair authentication. Store the private key for the user in a file to supply --to the connector’s configuration. Assign the public key to the Snowflake service user: ALTER USER <openflow_service_user> SET RSA_PUBLIC_KEY = '<pubkey>'; --Create a role to manage the connector and the associated data and --grant it to that user USE ROLE SECURITYADMIN; CREATE ROLE <openflow_connector_admin_role>; GRANT ROLE <openflow_connector_admin_role> TO USER <openflow_service_user>; --The following block is for the use case: Ingest files and perform processing with Cortex --Create a role for read access to the cortex search service created by this connector. --This role should be granted to any role that will use the service CREATE ROLE <cortex_search_service_read_only_role>; GRANT ROLE <cortex_search_service_read_only_role> TO ROLE <whatever_roles_will_access_search_service>; --Create the database the data will be stored in and grant usage to the roles created USE ROLE ACCOUNTADMIN; --use whatever role you want to own your DB CREATE DATABASE IF NOT EXISTS <destination_database>; GRANT USAGE ON DATABASE <destination_database> TO ROLE <openflow_connector_admin_role>; --Create the schema the data will be stored in and grant the necessary privileges --on that schema to the connector admin role: USE DATABASE <destination_database>; CREATE SCHEMA IF NOT EXISTS <destination_schema>; GRANT USAGE ON SCHEMA <destination_schema> TO ROLE <openflow_connector_admin_role>; GRANT CREATE TABLE, CREATE DYNAMIC TABLE, CREATE STAGE, CREATE SEQUENCE, CREATE CORTEX SEARCH SERVICE ON SCHEMA <destination_schema> TO ROLE <openflow_connector_admin_role>; --The following block is for use case: Ingest files and perform processing with Cortex --Grant the Cortex read-only role access to the database and schema GRANT USAGE ON DATABASE <destination_database> TO ROLE <cortex_search_service_read_only_role>; GRANT USAGE ON SCHEMA <destination_schema> TO ROLE <cortex_search_service_read_only_role>; --Create the warehouse this connector will use if it doesn't already exist. Grant the --appropriate privileges to the connector admin role. Adjust the size according to your needs. CREATE WAREHOUSE <openflow_warehouse> WITH WAREHOUSE_SIZE = 'MEDIUM' AUTO_SUSPEND = 300 AUTO_RESUME = TRUE; GRANT USAGE, OPERATE ON WAREHOUSE <openflow_warehouse> TO ROLE <openflow_connector_admin_role>;
Casos de uso¶
Você pode configurar o conector para os seguintes casos de uso:
Extrair os metadados do Box usando a Box AI e realize ingestão deles em uma tabela Snowflake
Sincronizar as instâncias de metadados de arquivos Box com uma tabela Snowflake
Ingerir apenas arquivos¶
Use a definição do conector para:
Processe os arquivos ingeridos com Document AI.
Execute o processamento personalizado nos arquivos ingeridos.
Configuração do conector¶
Como engenheiro de dados, execute as seguintes tarefas para instalar e configurar o conector:
Instalação do conector¶
Navegue até a página Visão geral do Openflow. Na seção Featured connectors, selecione View more connectors.
Na página de conectores do Openflow, localize o conector e selecione Add to runtime.
Na caixa de diálogo Select runtime, selecione seu tempo de execução na lista suspensa Available runtimes.
Selecione Add.
Nota
Antes de instalar o conector, verifique se você criou um banco de dados e um esquema no Snowflake para que o conector armazene os dados ingeridos.
Autentique-se na implementação com as credenciais de sua conta Snowflake e selecione Allow quando solicitado para permitir que o aplicativo de tempo de execução acesse sua conta Snowflake. O processo de instalação do conector leva alguns minutos para ser concluído.
Autentique-se no tempo de execução com as credenciais de sua conta Snowflake.
A tela do Openflow é exibida com o grupo de processos do conector adicionado a ela.
Configuração do conector¶
Clique com o botão direito do mouse no grupo de processos importado e selecione Parameters.
Digite os valores dos parâmetros necessários, conforme descrito nos Parâmetros de ingestão do Box, Parâmetros de destino do Box e Parâmetros de origem do Box.
Parâmetros de origem Box¶
Parâmetro |
Descrição |
---|---|
Arquivo JSON de configuração do aplicativo Box |
Um arquivo configuração JSON do aplicativo baixado durante a criação do aplicativo. |
Arquivo de configuração do aplicativo Box |
Um arquivo JSON do aplicativo baixado durante a criação do aplicativo. É necessário definir “Arquivo de configuração do aplicativo Box” ou “JSON de configuração do aplicativo Box”. Marque a caixa de seleção Reference asset para carregar o arquivo de configuração. |
Parâmetros de destino do Box¶
Parâmetro |
Descrição |
---|---|
Banco de dados de destino |
O banco de dados onde os dados serão mantidos. Ele já deve existir no Snowflake. |
Esquema de destino |
O esquema em que os dados serão mantidos. Ele já deve existir no Snowflake. |
Identificador de conta Snowflake |
Nome da conta Snowflake formatado como [organization-name]-[account-name] onde os dados serão mantidos |
Estratégia de autenticação Snowflake |
Estratégia de autenticação para o Snowflake. Valores possíveis: |
Chave privada Snowflake |
A chave privada RSA utilizada para autenticação. A chave RSA deve ser formatada de acordo com os padrões PKCS8 e ter cabeçalhos e rodapés no padrão PEM. Observe que o arquivo de chave privada Snowflake ou a chave privada Snowflake devem ser definidos. |
Arquivo de chave privada Snowflake |
O arquivo que contém a chave privada RSA usada para autenticação no Snowflake, formatado de acordo com os padrões PKCS8 e com cabeçalhos e rodapés no padrão PEM. A linha do cabeçalho começa com |
Senha de chave privada Snowflake |
A senha associada ao arquivo de chave privada Snowflake |
Função Snowflake |
Função Snowflake usada durante a execução da consulta |
Nome de usuário do Snowflake |
Nome de usuário usado para se conectar à instância Snowflake |
Warehouse Snowflake |
Warehouse Snowflake usado para executar consultas |
Parâmetros de ingestão do Box¶
Parâmetro |
Descrição |
---|---|
ID da pasta do Box |
O ID da pasta da qual os arquivos serão lidos. Defina isso como |
Extensões de arquivo para ingestão |
Uma lista de itens separados por vírgulas que especifica as extensões de arquivo a serem ingeridas. O conector tenta converter os arquivos para o formato PDF primeiro, se possível. No entanto, a verificação da extensão é realizada na extensão original do arquivo. Se algumas das extensões de arquivo especificadas não forem compatíveis com o Cortex Parse Document, o conector ignorará esses arquivos, registrará uma mensagem de aviso em um log de eventos e continuará processando outros arquivos. |
Nome da tabela de hashes do arquivo Snowflake |
Nome da tabela para armazenar hashes de arquivo e determinar se o conteúdo foi alterado. Em geral, esse parâmetro não deve ser alterado. |
Execute o fluxo¶
Clique com o botão direito do mouse no plano e selecione Enable all Controller Services.
Clique com o botão direito do mouse no grupo de processos importado e selecione Start. O conector inicia a ingestão de dados.
Depois de iniciar o conector, ele recupera todos os arquivos da pasta especificada e, em seguida, consome os eventos do admin_logs_streaming
nos últimos 14 dias. Isso é feito para capturar dados que, de outra forma, poderiam ter sido perdidos durante o processo de inicialização. Durante esse período, podem ocorrer erros not found
, causados por arquivos que aparecem nos eventos, mas que não estão mais presentes.
Ingerir arquivos e realizar processamento com o Cortex¶
Use a definição do conector para:
Crie assistentes de AI para documentos públicos dentro da empresa Box de sua organização
Permita que os assistentes de AI sigam os controles de acesso especificados na empresa Box de sua organização
Configuração do conector¶
Como engenheiro de dados, execute as seguintes tarefas para instalar e configurar o conector:
Instalação do conector¶
Navegue até a página Visão geral do Openflow. Na seção Featured connectors, selecione View more connectors.
Na página de conectores do Openflow, localize o conector e selecione Add to runtime.
Na caixa de diálogo Select runtime, selecione seu tempo de execução na lista suspensa Available runtimes.
Selecione Add.
Nota
Antes de instalar o conector, verifique se você criou um banco de dados e um esquema no Snowflake para que o conector armazene os dados ingeridos.
Autentique-se na implementação com as credenciais de sua conta Snowflake e selecione Allow quando solicitado para permitir que o aplicativo de tempo de execução acesse sua conta Snowflake. O processo de instalação do conector leva alguns minutos para ser concluído.
Autentique-se no tempo de execução com as credenciais de sua conta Snowflake.
A tela do Openflow é exibida com o grupo de processos do conector adicionado a ela.
Configuração do conector¶
Clique com o botão direito do mouse no grupo de processos importado e selecione Parameters.
Preencha os valores dos parâmetros necessários conforme descrito em Parâmetros de ingestão do Box Cortex Connect, Parâmetros de destino do Box Cortex Connect e Parâmetros de origem do Box Cortex Connect.
Parâmetros de origem do Box Cortex Connect¶
Parâmetro |
Descrição |
---|---|
Arquivo JSON de configuração do aplicativo Box |
Um arquivo configuração JSON do aplicativo baixado durante a criação do aplicativo. |
Arquivo de configuração do aplicativo Box |
Um arquivo JSON do aplicativo baixado durante a criação do aplicativo. É necessário definir “Arquivo de configuração do aplicativo Box” ou “JSON de configuração do aplicativo Box”. Marque a caixa de seleção Reference asset para carregar o arquivo de configuração. |
Parâmetros de destino do Box Cortex Connect¶
Parâmetro |
Descrição |
---|---|
Banco de dados de destino |
O banco de dados onde os dados serão mantidos. Ele já deve existir no Snowflake. |
Esquema de destino |
O esquema em que os dados serão mantidos. Ele já deve existir no Snowflake |
Identificador de conta Snowflake |
Nome da conta Snowflake formatado como [organization-name]-[account-name] onde os dados serão mantidos |
Estratégia de autenticação Snowflake |
Estratégia de autenticação para o Snowflake. Valores possíveis: |
Chave privada Snowflake |
A chave privada RSA utilizada para autenticação. A chave RSA deve ser formatada de acordo com os padrões PKCS8 e ter cabeçalhos e rodapés no padrão PEM. Observe que o arquivo de chave privada Snowflake ou a chave privada Snowflake devem ser definidos. |
Arquivo de chave privada Snowflake |
O arquivo que contém a chave privada RSA usada para autenticação no Snowflake, formatado de acordo com os padrões PKCS8 e com cabeçalhos e rodapés no padrão PEM. A linha do cabeçalho começa com |
Senha de chave privada Snowflake |
A senha associada ao arquivo de chave privada Snowflake |
Função Snowflake |
Função Snowflake usada durante a execução da consulta |
Nome de usuário do Snowflake |
Nome de usuário usado para se conectar à instância Snowflake |
Warehouse Snowflake |
Warehouse Snowflake usado para executar consultas |
Parâmetros de ingestão do Box Cortex Connect¶
Parâmetro |
Descrição |
---|---|
ID da pasta do Box |
O ID da pasta da qual os arquivos serão lidos. Defina isso como |
Extensões de arquivo para ingestão |
Uma lista de itens separados por vírgulas que especifica as extensões de arquivo a serem ingeridas. O conector tenta converter os arquivos para o formato PDF primeiro, se possível. No entanto, a verificação da extensão é realizada na extensão original do arquivo. Se algumas das extensões de arquivo especificadas não forem compatíveis com o Cortex Parse Document, o conector ignorará esses arquivos, registrará uma mensagem de aviso em um log de eventos e continuará processando outros arquivos. |
Nome da tabela de hashes do arquivo Snowflake |
Nome da tabela para armazenar hashes de arquivo e determinar se o conteúdo foi alterado. Em geral, esse parâmetro não deve ser alterado. |
Modo OCR |
O modo OCR a ser usado ao analisar arquivos com a função Cortex PARSE_DOCUMENT. O valor pode ser |
Função do usuário Snowflake Cortex Search Service |
Um identificador de uma função à qual são atribuídas permissões de uso no serviço Cortex Search. |
Nome da tabela de hashes do arquivo Snowflake |
Nome da tabela para armazenar hashes de arquivo e determinar se o conteúdo foi alterado. Em geral, esse parâmetro não deve ser alterado. |
Execute o fluxo¶
Clique com o botão direito do mouse no plano e selecione Enable all Controller Services.
Clique com o botão direito do mouse no grupo de processos importado e selecione Start. O conector inicia a ingestão de dados.
Depois de iniciar o conector, ele recupera todos os arquivos da pasta especificada e, em seguida, consome os eventos do admin_logs_streaming
nos últimos 14 dias. Isso é feito para capturar quaisquer dados que possam ter sido perdidos durante o processo de inicialização. Durante esse período, podem ocorrer erros not found
, causados pelos arquivos que aparecem nos eventos, mas que não estão mais presentes.
Consultar o Cortex Search Service¶
Você pode usar o serviço Cortex Search para criar aplicativos de bate-papo e pesquisa para conversar ou consultar seus documentos no Box.
Após instalar e configurar o conector e ele começar a ingerir conteúdo do Box, você poderá consultar o serviço Cortex Search. Para obter mais informações sobre como usar o Cortex Search, consulte Consulta a um Cortex Search Service.
Respostas do filtro
Para restringir as respostas do serviço Cortex Search aos documentos aos quais um usuário específico tem acesso no Box, você pode especificar um filtro que contenha o ID de usuário ou endereço de e-mail do usuário ao consultar o Cortex Search. Por exemplo, filter.@contains.user_ids
ou filter.@contains.user_emails
. O nome do Cortex Search Service criado pelo conector é search_service
no esquema Cortex
.
Execute o seguinte código SQL em uma planilha SQL para consultar o serviço Cortex Search com arquivos ingeridos do site de seu Box.
Substitua o seguinte:
application_instance_name
: nome de seu banco de dados e da instância do aplicativo do conector.user_emailID
: ID de e-mail do usuário para o qual você deseja filtrar as respostas.your_question
: a pergunta para a qual deseja obter respostas.number_of_results
: número máximo de resultados a serem retornados na resposta. O valor máximo é 1.000 e o valor padrão é 10.
SELECT PARSE_JSON(
SNOWFLAKE.CORTEX.SEARCH_PREVIEW(
'<application_instance_name>.cortex.search_service',
'{
"query": "<your_question>",
"columns": ["chunk", "web_url"],
"filter": {"@contains": {"user_emails": "<user_emailID>"} },
"limit": <number_of_results>
}'
)
)['results'] AS results
Aqui está uma lista completa de valores que você pode inserir em columns
:
Nome da coluna |
Tipo |
Descrição |
---|---|---|
|
Cadeia de caracteres |
Um caminho completo para o arquivo na raiz de documentos do site do Box. Exemplo: |
|
Cadeia de caracteres |
Um URL que exibe um arquivo Box original em um navegador. |
|
Cadeia de caracteres |
Data e hora em que o item foi modificado mais recentemente. |
|
Cadeia de caracteres |
Um trecho de texto do documento que corresponde à consulta do Cortex Search. |
|
Matriz |
Uma matriz de IDs de usuário que têm acesso ao documento. |
|
Matriz |
Uma matriz de IDs de e-mail de usuário que têm acesso ao documento. Também inclui os IDs de e-mail do usuário de todos os grupos do Microsoft 365 atribuídos ao documento. |
Exemplo: consulte um assistente de AI para obter informações sobre recursos humanos (HR)
Você pode usar o Cortex Search para consultar um assistente de AI para que os funcionários conversem com as versões mais recentes das informações de HR, como integração, código de conduta, processos de equipe e políticas da organização. Usando filtros de resposta, você também pode permitir que os membros da equipe de HR consultem os contratos dos funcionários, respeitando os controles de acesso configurados no Box.
Execute o seguinte em uma planilha SQL para consultar o serviço Cortex Search com arquivos ingeridos do Box. Selecione o banco de dados como o nome da instância do aplicativo e esquema como Cortex.
Substitua o seguinte:
application_instance_name
: nome de seu banco de dados e da instância do aplicativo do conector.user_emailID
: ID de e-mail do usuário para o qual você deseja filtrar as respostas.
SELECT PARSE_JSON(
SNOWFLAKE.CORTEX.SEARCH_PREVIEW(
'<application_instance_name>.cortex.search_service',
'{
"query": "What is my vacation carryover policy?",
"columns": ["chunk", "web_url"],
"filter": {"@contains": {"user_emails": "<user_emailID>"} },
"limit": 1
}'
)
)['results'] AS results
Execute o seguinte código em uma planilha Python para consultar o serviço Cortex Search com arquivos ingeridos do Box. Certifique-se de adicionar o pacote snowflake.core
ao seu banco de dados.
Substitua o seguinte:
application_instance_name
: nome de seu banco de dados e da instância do aplicativo do conector.user_emailID
: ID de e-mail do usuário para o qual você deseja filtrar as respostas.
import snowflake.snowpark as snowpark
from snowflake.snowpark import Session
from snowflake.core import Root
def main(session: snowpark.Session):
root = Root(session)
# fetch service
my_service = (root
.databases["<application_instance_name>"]
.schemas["cortex"]
.cortex_search_services["search_service"]
)
# query service
resp = my_service.search(
query="What is my vacation carryover policy?",
columns = ["chunk", "web_url"],
filter = {"@contains": {"user_emails": "<user_emailID>"} },
limit=1
)
return (resp.to_json())
Execute o código a seguir em uma interface de linha de comando para consultar o serviço Cortex Search com os arquivos ingeridos de seu Box. O acesso às REST APIs da Snowflake requer autenticação por meio de autenticação de par de chaves e OAuth. Para obter mais informações, consulte Rest API e Autenticando o Snowflake REST APIs com Snowflake.
Substitua o seguinte:
application_instance_name
: nome de seu banco de dados e da instância do aplicativo do conector.account_url
: o URL de sua conta Snowflake. Para obter instruções sobre como localizar seu URL de conta, consulte Como encontrar o nome da conta e organização de uma conta.
curl --location "https://<account_url>/api/v2/databases/<application_instance_name>/schemas/cortex/cortex-search-services/search_service" \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header "Authorization: Bearer <CORTEX_SEARCH_JWT>" \
--data '{
"query": "What is my vacation carryover policy?",
"columns": ["chunk", "web_url"],
"limit": 1
}'
Exemplo de resposta:
{
"results" : [ {
"web_url" : "https://<domain>.box.com/sites/<site_name>/<path_to_file>",
"chunk" : "Answer to the question asked."
} ]
}
Extrair os metadados do Box usando a Box AI e realize ingestão deles em uma tabela Snowflake¶
Use a definição do conector para:
Extraia metadados sobre seus arquivos Box e faça a ingestão deles em uma tabela Snowflake
Realize operações nos metadados de seus arquivos armazenados no Box
Criar uma tabela Snowflake para armazenar os metadados do Box¶
Certifique-se de que a Box AI esteja ativada para que a extração de metadados ocorra. Para obter mais informações, consulte Configurando a Box AI.
Crie uma tabela Snowflake para onde os metadados serão enviados
Para que o conector saiba que tipo de metadados extrair, você deve criar uma tabela Snowflake em seu banco de dados e esquema com os nomes de coluna dos campos que gostaria de extrair. Adicione descrições a cada coluna para melhorar o desempenho do modelo usado para extrair os metadados dos arquivos.
Na tabela criada na etapa anterior, verifique se há uma coluna para armazenar o ID do arquivo Box e se ela é do tipo VARCHAR.
O nome dessa coluna deve ser inserido como o parâmetro Coluna do identificador do arquivo Box em etapas posteriores. A lista de tipos de coluna compatíveis com a tabela de metadados é VARCHAR, STRING, TEXT, FLOAT, DOUBLE e DATE.
Aqui está um exemplo da tabela que você pode criar para esse conector:
CREATE OR REPLACE TABLE OPENFLOW.BOX_METADATA_SCHEMA.LOAN_AGREEMENT_METADATA (
BOX_FILE_ID VARCHAR COMMENT 'Box file identifier column',
LOAN_ID STRING COMMENT 'Unique loan agreement identifier (e.g. L-2025-0001)',
BORROWER_NAME STRING COMMENT 'Name of the borrower entity or individual',
LENDER_NAME STRING COMMENT 'Name of the lending institution',
LOAN_AMOUNT DOUBLE COMMENT 'Principal amount of the loan (in USD)',
INTEREST_RATE FLOAT COMMENT 'Annual interest rate (%)',
EFFECTIVE_DATE DATE COMMENT 'Date on which the loan becomes effective',
MATURITY_DATE DATE COMMENT 'Scheduled loan maturity date',
LOAN_TERM_MONTHS FLOAT COMMENT 'Original term length in months',
COLLATERAL_DESCRIPTION TEXT COMMENT 'Description of collateral securing the loan',
CREDIT_SCORE FLOAT COMMENT 'Borrower credit score',
JURISDICTION STRING COMMENT 'Governing law jurisdiction (e.g. NY, CA)'
);
Configuração do conector¶
Como engenheiro de dados, execute as seguintes tarefas para instalar e configurar o conector:
Instalação do conector¶
Navegue até a página Visão geral do Openflow. Na seção Featured connectors, selecione View more connectors.
Na página de conectores do Openflow, localize o conector e selecione Add to runtime.
Na caixa de diálogo Select runtime, selecione seu tempo de execução na lista suspensa Available runtimes.
Selecione Add.
Nota
Antes de instalar o conector, verifique se você criou um banco de dados e um esquema no Snowflake para que o conector armazene os dados ingeridos.
Autentique-se na implementação com as credenciais de sua conta Snowflake e selecione Allow quando solicitado para permitir que o aplicativo de tempo de execução acesse sua conta Snowflake. O processo de instalação do conector leva alguns minutos para ser concluído.
Autentique-se no tempo de execução com as credenciais de sua conta Snowflake.
A tela do Openflow é exibida com o grupo de processos do conector adicionado a ela.
Configuração do conector¶
Clique com o botão direito do mouse no grupo de processos importado e selecione Parameters.
Preencha os valores de parâmetros necessários conforme descrito em Parâmetros de origem de metadados de ingestão do Box, Parâmetros de destino de metadados de ingestão do Box e Parâmetros de ingestão de metadados de ingestão do Box.
Parâmetros de origem de metadados de ingestão do Box¶
Parâmetro |
Descrição |
---|---|
Arquivo JSON de configuração do aplicativo Box |
Um arquivo configuração JSON do aplicativo baixado durante a criação do aplicativo. |
Arquivo de configuração do aplicativo Box |
Um arquivo JSON do aplicativo baixado durante a criação do aplicativo. É necessário definir “Arquivo de configuração do aplicativo Box” ou “JSON de configuração do aplicativo Box”. Marque a caixa de seleção Reference asset para carregar o arquivo de configuração. |
Parâmetros de destino de metadados de ingestão do Box¶
Parâmetro |
Descrição |
---|---|
Banco de dados de destino |
O banco de dados onde os dados serão mantidos. Ele já deve existir no Snowflake |
Esquema de destino |
O esquema em que os dados serão mantidos. Ele já deve existir no Snowflake |
Identificador de conta Snowflake |
Nome da conta Snowflake formatado como [organization-name]-[account-name] onde os dados serão mantidos |
Estratégia de autenticação Snowflake |
Estratégia de autenticação para o Snowflake. Valores possíveis: SNOWFLAKE_SESSION_TOKEN quando estivermos executando o fluxo em SPCS, e KEY_PAIR quando quisermos definir o acesso usando a chave privada |
Chave privada Snowflake |
A chave privada RSA utilizada para autenticação. A chave RSA deve ser formatada de acordo com os padrões PKCS8 e ter cabeçalhos e rodapés no padrão PEM. Observe que o arquivo de chave privada do Snowflake ou a chave privada do Snowflake devem ser definidos |
Arquivo de chave privada Snowflake |
O arquivo que contém a chave privada RSA usada para autenticação no Snowflake, formatado de acordo com os padrões PKCS8 e com cabeçalhos e rodapés no padrão PEM. A linha do cabeçalho começa com |
Senha de chave privada Snowflake |
A senha associada ao arquivo de chave privada Snowflake |
Função Snowflake |
Função Snowflake usada durante a execução da consulta |
Nome de usuário do Snowflake |
Nome de usuário usado para se conectar à instância Snowflake |
Warehouse Snowflake |
Warehouse Snowflake usado para executar consultas |
Parâmetros de ingestão de metadados de ingestão do Box¶
Parâmetro |
Descrição |
---|---|
ID da pasta do Box |
O ID da pasta da qual os arquivos serão lidos. Defina isso como |
Coluna de identificador de arquivo do Box |
A coluna da tabela de metadados que armazenará o ID do arquivo Box para associar os metadados fornecidos a um arquivo. Essa coluna deve ser do tipo VARCHAR e fazer parte da tabela criada em Crie uma tabela Snowflake para armazenar os metadados do Box. |
Tabela de metadados de destino |
A tabela Snowflake que você criou em Crie uma tabela Snowflake para armazenar os metadados Box, que tem as colunas dos metadados que deseja coletar. |
Execute o fluxo¶
Clique com o botão direito do mouse no plano e selecione Enable all Controller Services.
Clique com o botão direito do mouse no grupo de processos importado e selecione Start. O conector inicia a ingestão de dados.
Após iniciar o conector, ele recupera todos os arquivos da pasta especificada e, em seguida, consome os eventos admin_logs_streaming
dos últimos 14 dias. Isso é feito para capturar quaisquer dados que possam ter sido perdidos durante o processo de inicialização. Durante esse período, podem ocorrer erros not found
, causados pelos arquivos que aparecem nos eventos, mas que não estão mais presentes.
Sincronizar as instâncias de metadados de arquivos Box com uma tabela Snowflake¶
Use a definição do conector para realizar uma transformação de dados em metadados do Box em uma tabela Snowflake e adicione as alterações de volta a uma instância de metadados do Box.
Crie um fluxo Snowflake para armazenar os metadados do Box¶
Crie um fluxo Snowflake para a tabela de metadados que deseja usar. O fluxo é usado para monitorar quaisquer alterações que ocorram na tabela com a qual deseja sincronizar seus arquivos Box. Para saber como criar uma tabela para armazenar os metadados do Box, consulte Crie uma tabela Snowflake para armazenar os metadados Box. Se o conector for interrompido além do tempo de retenção de dados e o fluxo se tornar obsoleto, você deverá recriar um fluxo e substituir o anterior. Para saber mais sobre o gerenciamento de fluxos, consulte Gerenciamento de fluxos.
Aqui está o exemplo de um fluxo que você pode criar para esse conector:
CREATE OR REPLACE STREAM OPENFLOW.BOX_METADATA_SCHEMA.LOAN_AGREEMENT_METADATA_STREAM ON TABLE OPENFLOW.BOX_METADATA_SCHEMA.LOAN_AGREEMENT_METADATA
Na tabela de metadados, verifique se há uma coluna para armazenar o ID do arquivo Box e se ele é do tipo VARCHAR.
O nome dessa coluna deve ser inserido como o parâmetro Coluna do identificador do arquivo Box em etapas posteriores. A lista de tipos de coluna compatíveis com a tabela de metadados é VARCHAR, STRING, TEXT, FLOAT, DOUBLE e DATE.
Configuração do conector¶
Como engenheiro de dados, execute as seguintes tarefas para instalar e configurar o conector:
Instalação do conector¶
Navegue até a página Visão geral do Openflow. Na seção Featured connectors, selecione View more connectors.
Na página de conectores do Openflow, localize o conector e selecione Add to runtime.
Na caixa de diálogo Select runtime, selecione seu tempo de execução na lista suspensa Available runtimes.
Selecione Add.
Nota
Antes de instalar o conector, verifique se você criou um banco de dados e um esquema no Snowflake para que o conector armazene os dados ingeridos.
Autentique-se na implementação com as credenciais de sua conta Snowflake e selecione Allow quando solicitado para permitir que o aplicativo de tempo de execução acesse sua conta Snowflake. O processo de instalação do conector leva alguns minutos para ser concluído.
Autentique-se no tempo de execução com as credenciais de sua conta Snowflake.
A tela do Openflow é exibida com o grupo de processos do conector adicionado a ela.
Configuração do conector¶
Clique com o botão direito do mouse no grupo de processos importado e selecione Parameters.
Preencha os valores dos parâmetros necessários, conforme descrito em Parâmetros de origem da publicação de metadados do Box, Parâmetros de destino da publicação de metadados do Box e Parâmetros de ingestão da publicação de metadados do Box.
Parâmetros de origem dos metadados de publicação do Box¶
Parâmetro |
Descrição |
---|---|
Banco de dados de origem |
Banco de dados Snowflake que contém o esquema com o Snowflake Stream que ingere as alterações |
Esquema de origem |
Esquema que contém o Snowflake Stream que ingere as alterações |
Identificador de conta Snowflake |
Nome da conta Snowflake formatado como [organization-name]-[account-name] onde os dados serão mantidos |
Estratégia de autenticação Snowflake |
Estratégia de autenticação para o Snowflake. Valores possíveis: SNOWFLAKE_SESSION_TOKEN quando estivermos executando o fluxo em SPCS, e KEY_PAIR quando quisermos definir o acesso usando a chave privada |
Chave privada Snowflake |
A chave privada RSA utilizada para autenticação. A chave RSA deve ser formatada de acordo com os padrões PKCS8 e ter cabeçalhos e rodapés no padrão PEM. Observe que o arquivo de chave privada do Snowflake ou a chave privada do Snowflake devem ser definidos |
Arquivo de chave privada Snowflake |
O arquivo que contém a chave privada RSA usada para autenticação no Snowflake, formatado de acordo com os padrões PKCS8 e com cabeçalhos e rodapés no padrão PEM. A linha do cabeçalho começa com |
Senha de chave privada Snowflake |
A senha associada ao arquivo de chave privada Snowflake |
Função Snowflake |
Função Snowflake usada durante a execução da consulta |
Nome de usuário do Snowflake |
Nome de usuário usado para se conectar à instância Snowflake |
Warehouse Snowflake |
Warehouse Snowflake usado para executar consultas |
Nome do Snowflake Stream |
Nome do fluxo Snowflake usado para a ingestão de alterações da tabela de origem Snowflake. Você deve criá-lo antes de iniciar o conector e vinculá-lo à tabela. |
Parâmetros de destino dos metadados de publicação do Box¶
Parâmetro |
Descrição |
---|---|
Arquivo JSON de configuração do aplicativo Box |
Um arquivo configuração JSON do aplicativo baixado durante a criação do aplicativo. |
Arquivo de configuração do aplicativo Box |
Um arquivo JSON do aplicativo baixado durante a criação do aplicativo. É necessário definir “Arquivo de configuração do aplicativo Box” ou “JSON de configuração do aplicativo Box”. Marque a caixa de seleção Reference asset para carregar o arquivo de configuração. |
Parâmetros de ingestão dos metadados de publicação do Box¶
Parâmetro |
Descrição |
---|---|
Coluna de identificador de arquivo do Box |
A coluna da tabela de metadados que armazenará o ID do arquivo Box para associar os metadados fornecidos a um arquivo. Essa coluna deve ser do tipo VARCHAR e fazer parte da tabela criada em Crie uma tabela Snowflake para armazenar os metadados do Box. |
Nome do modelo de metadados do Box |
Nome de modelo do modelo de metadados do Box que será adicionado aos arquivos Box. Você não precisa criar manualmente um modelo antes de iniciar o conector. Se você inserir um valor nesse parâmetro, um modelo será criado automaticamente com esse nome de modelo. O nome fornecido não deve se sobrepor a nenhum modelo que você já tenha criado em seu ambiente Box. |
Chave do modelo de metadados do Box |
A chave do modelo do Box do modelo de metadados do Box que será adicionada aos arquivos do Box. Essa é a chave que será usada para fazer referência ao modelo na Box API. Você não precisa criar manualmente um modelo antes de iniciar o conector. Se você inserir um valor nesse parâmetro, um modelo será criado automaticamente com essa chave de modelo. A chave fornecida não deve se sobrepor a nenhum modelo que você já tenha criado em seu ambiente Box. |
Execute o fluxo¶
Clique com o botão direito do mouse no plano e selecione Enable all Controller Services.
Clique com o botão direito do mouse no grupo de processos importado e selecione Start. O conector inicia a ingestão de dados.
Após executar o fluxo, você pode consultar o serviço Cortex Search. Para obter informações sobre como consultar o serviço Cortex Search, consulte Consulta ao serviço Cortex Search.