Anexar o Armazenamento de Arquivos Externo ao Autonomous AI Database na Infraestrutura Dedicada do Exadata
Você pode anexar um armazenamento de arquivos externo implantado no Oracle Cloud Infrastructure ou on-premises ao Autonomous AI Database, desde que o banco de dados e o sistema de arquivos estejam na mesma rede privada. O Autonomous AI Database na Infraestrutura Dedicada do Exadata suporta NFSv4, por padrão.
Isso permite carregar dados do OCI File Storage em sua VCN (Rede Virtual na Nuvem) ou em qualquer outro Sistema de Arquivos de Rede em data centers locais.
O suporte ao armazenamento de arquivos externos permite que você faça o seguinte:
-
Estabeleça conexão com uma instância do Autonomous AI Database de um aplicativo legado e use o sistema de arquivos para carregar e descarregar dados.
-
Analise dados de diferentes fontes em um Autonomous AI Database.
-
Proteja o acesso aos dados em um Autonomous AI Database dos sistemas de arquivos em um data center on-premises ou VCNs Privadas.
Requisitos de Armazenamento de Arquivos Externo
Para acessar dados em um Autonomous AI Database pelo sistema de arquivos em:
-
Data Center On-premises: Configure o FastConnect ou uma VPN Site a Site para estabelecer conexão com o data center on-premises. Para obter mais informações, consulte FastConnect e VPN Local a Local.
-
Oracle Cloud Infrastructure
-
Criar regras de segurança de VCN (Rede Virtual na Nuvem) para acesso ao FSS (Serviço OCI File Storage): Para poder montar um armazenamento de arquivos, configure regras de segurança para permitir o tráfego para a VNIC do ponto de acesso NFS usando protocolos e portas específicos. As regras de segurança permitem o tráfego para o seguinte:
-
Protocolo do utilitário rpcbind ONC RPC (Open Network Computing Remote Procedure Call)
-
Protocolo Network File System (NFS)
-
Protocolo Network File System (MOUNT)
-
Protocolo Network Lock Manager (NLM)
Consulte Configurando Regras de Segurança de VCN para Serviço File Storage para obter mais detalhes.
-
-
Criar um sistema de arquivos no FSS do OCI: Crie um sistema de arquivos usando a console do OCI. Ao configurar os detalhes do ponto de acesso NFS do sistema de arquivos, selecione a VCN e a sub-rede privada dessa VCN na qual seu banco de dados está implantado e forneça um nome de host para gerar automaticamente um FQDN (Nome de Domínio Totalmente Qualificado). Consulte Criando Sistemas de Arquivos para mais informações.
-
Obtenha o FQDN do ponto de acesso NFS: Exiba os detalhes do ponto de acesso NFS do seu sistema de arquivos na console do OCI conforme descrito em Para exibir detalhes de um ponto de acesso NFS para obter seu FQDN.
-
Anexar Sistema de Arquivos Externo
Use DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM para anexar um sistema de arquivos a um diretório no Autonomous AI Database.
Observação: O procedimento DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM só pode anexar um Serviço de Armazenamento de Arquivos privado a bancos de dados que estejam em pontos finais privados.
-
Crie um diretório ou use um diretório existente para anexar o sistema de arquivos externo ao Autonomous AI Database. Você deve ter o privilégio
WRITEno objeto de diretório da sua instância do Autonomous AI Database para anexar um sistema de arquivos a um local de diretório no banco de dados.Por exemplo, o seguinte comando cria o diretório de banco de dados chamado
FSS_DIRe cria o diretório de sistema de arquivos:fssCREATE DIRECTORY FSS_DIR AS 'fss';Consulte Criar um Diretório para mais informações.
-
Execute
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEMpara anexar um sistema de arquivos a um diretório no Autonomous AI Database. Para executar este procedimento, você deve estar conectado como usuário ADMIN ou ter o privilégioEXECUTEemDBMS_CLOUD_ADMIN.-
Por padrão,
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEMusa NFSv3. No entanto, você pode optar por usar explicitamente o parâmetroparamse especificar onfs_versioncom o valor 3 para especificar NFSv3.BEGIN DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM ( file_system_name => 'FSS', file_system_location => 'myhost.sub000445.myvcn.oraclevcn.com:/results', directory_name => 'FSS_DIR', description => 'Source FSS for sales data' );END; / -
Para usar NFSv4, inclua o parâmetro
paramscomDBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEMe especifique onfs_versioncom o valor 4 para especificar NFSv4.BEGIN DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM ( file_system_name => 'FSS', file_system_location => 'myhost.sub000445.myvcn.oraclevcn.com:/results', directory_name => 'FSS_DIR', description => 'Source FSS for sales data', **params => JSON_OBJECT('nfs_version' value 4)** ); END; /
Este exemplo anexa o sistema de arquivos de rede especificado no parâmetro
file_system_nameao Autonomous AI Database.O parâmetro
file_system_locationespecifica a localização do sistema de arquivos. O valor fornecido comfile_system_locationconsiste em um FQDN (Nome de Domínio Totalmente Qualificado) e um caminho de arquivo no formato: FQDN:file_path. Por exemplo:-
SEQUÊNCIA:
myhost.sub000445.myvcn.oraclevcn.com -
Caminho do arquivo:
/results
O parâmetro
directory_nameespecifica o nome do diretório no Autonomous AI Database em que você deseja anexar o sistema de arquivos. Esse é o diretório criado na Etapa 1 ou outro diretório criado anteriormente.O parâmetro
descriptionespecifica a descrição da tarefa. -
Observações sobre o uso de DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM:
-
O Oracle Cloud Infrastructure File Storage usa o NFS Versão 3 para compartilhamento. Consulte Visão Geral do Serviço File Storage para obter mais informações.
-
Se você anexar a sistemas que não sejam do Oracle Cloud Infrastructure File Storage, o procedimento suportará NFSv3 e NFSv4.
-
Se você tiver um servidor NFS anexado que use o NFSv3 e a versão do NFS for atualizada para NFSv4 no servidor NFS, execute
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEMe, em seguida,DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEMusando o parâmetroparamscomnfs_versiondefinido como 4. Isso anexa o NFS ao protocolo correspondente para que o Autonomous AI Database possa acessar o Servidor NFSv4. Sem desanexar e depois reanexar, o servidor NFS ficará inacessível e você poderá ver um erro como:"Protocol not supported".
Consultar DBA_CLOUD_FILE_SYSTEMS
Depois de anexar um sistema de arquivos, você pode consultar a visualização DBA_CLOUD_FILE_SYSTEMS para recuperar informações sobre o sistema de arquivos anexado.
Por Exemplo:
SELECT file_system_name, file_system_location, directory_path
FROM dba_cloud_file_systems
WHERE file_system_name = 'FSS';
Essa consulta retorna detalhes do nome do sistema de arquivos FSS. Consulte a Visualização DBMS_CLOUD_FILE_SYSTEMS para obter mais informações.
Com um sistema de arquivos anexado, você pode ler e gravar em arquivos em um sistema de arquivos anexado usando qualquer API PL/SQL que aceite um nome de diretório. Por exemplo, você pode usar qualquer um dos seguintes métodos para trabalhar com um diretório FSS anexado:
-
O pacote
UTL_FILE. -
Utilitários de Exportação e Importação do Data Pump.
-
As APIs
DBMS_CLOUDque funcionam com diretórios comoDBMS_CLOUD.LIST_FILESeDBMS_CLOUD.PUT_OBJECT.
Exemplo mostrando um arquivo de gravação em um sistema de arquivos anexado usando UTL_FILE:
DECLARE
l_file UTL_FILE.FILE_TYPE;
l_location VARCHAR2(100) := 'FSS_DIR';
l_filename VARCHAR2(100) := 'test.csv';
BEGIN
-- Open the file.
l_file := UTL_FILE.FOPEN(l_location, l_filename, 'w');
UTL_FILE.PUT(l_file, 'Scott, male, 1000');
-- Close the file.
UTL_FILE.FCLOSE(l_file);
END;
/
Exemplo mostrando uma leitura de um arquivo em um sistema de arquivos anexado usando UTL_FILE:
DECLARE
l_file UTL_FILE.FILE_TYPE;
l_location VARCHAR2(100) := 'FSS_DIR';
l_filename VARCHAR2(100) := 'test.csv';
l_text VARCHAR2(32767);
BEGIN
-- Open the file.
l_file := UTL_FILE.FOPEN(l_location, l_filename, 'r');
UTL_FILE.GET_LINE(l_file, l_text, 32767);
-- Close the file.
UTL_FILE.FCLOSE(l_file);
END;
/
Exemplo mostrando arquivos de lista em um sistema de arquivos anexado usando DBMS_CLOUD.LIST_FILES:
SELECT object_name FROM DBMS_CLOUD.LIST_FILES('FSS_DIR');
DBMS_CLOUD_FILE_SYSTEMS - Exibição
A exibição DBA_CLOUD_FILE_SYSTEMS lista as informações sobre o sistema de arquivos externo anexado a um local de diretório no banco de dados.
| Coluna | Tipo de Dados | Descrição |
|---|---|---|
FILE_SYSTEM_NAME |
VARCHAR2(128) |
Nome do sistema de arquivos |
FILE_SYSTEM_LOCATION |
VARCHAR2(4000) |
Local do sistema de arquivos |
DIRECTORY_NAME |
VARCHAR2(128) |
Nome do diretório anexado |
DIRECTORY_PATH |
VARCHAR2(4000) |
Caminho do diretório anexado |
NFS_VERSION |
NUMBER |
A versão NFS |
DESCRIPTION |
VARCHAR2(4000) |
O valor fornecido para o parâmetro de descrição quando você executa DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM |
CREATION_TIME |
TIMESTAMP(6) WITH TIME ZONE |
Timestamp de criação |
UPDATE_TIME |
TIMESTAMP(6) WITH TIME ZONE |
Atualizar timestamp |
Desanexar Sistema de Arquivos Externo
Use o procedimento DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM para desanexar um sistema de arquivos de um diretório no Autonomous AI Database.
Observação: O procedimento DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM só pode desanexar um Serviço de Armazenamento de Arquivos privado dos bancos de dados que estão em pontos finais privados.
Você deve ter o privilégio WRITE no objeto de diretório para desanexar um sistema de arquivos de um local de diretório.
Execute o procedimento DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM para desanexar um sistema de arquivos de um local de diretório no Autonomous AI Database. Para executar este procedimento, você deve estar conectado como usuário ADMIN ou ter o privilégio EXECUTE em DBMS_CLOUD_ADMIN.
BEGIN
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM (
file_system_name => 'FSS'
);
END;
/
Este exemplo desanexa o sistema de arquivos de rede especificado no parâmetro file_system_name do Autonomous AI Database. É necessário fornecer um valor para este parâmetro. A informação sobre este sistema de arquivos é removida da visualização DBA_CLOUD_FILE_SYSTEMS.
Conteúdo Relacionado
Para obter mais informações, consulte: