전용 Exadata 인프라의 자율운영 AI 데이터베이스에 외부 파일 스토리지 연결
데이터베이스와 파일 시스템이 동일한 프라이빗 네트워크에 있는 경우 Oracle Cloud Infrastructure 또는 온프레미스에 배포된 외부 파일 스토리지를 자율운영 AI 데이터베이스에 연결할 수 있습니다. 전용 Exadata 인프라의 자율운영 AI 데이터베이스는 기본적으로 NFSv4를 지원합니다.
이를 통해 VCN(가상 클라우드 네트워크)의 OCI 파일 스토리지 또는 온프레미스 데이터 센터의 다른 네트워크 파일 시스템에서 데이터를 로드할 수 있습니다.
- 레거시 애플리케이션에서 자율운영 AI 데이터베이스 인스턴스에 접속하고 파일 시스템을 사용하여 데이터를 로드 및 언로드합니다.
- 자율운영 AI 데이터베이스에서 다양한 소스의 데이터를 분석합니다.
- 온프레미스 데이터 센터 또는 프라이빗 VCN의 파일 시스템에서 자율운영 AI 데이터베이스의 데이터에 안전하게 액세스할 수 있습니다.
외부 파일 스토리지 요구사항
-
온프레미스 데이터 센터: 온프레미스 데이터 센터에 접속하도록 FastConnect 또는 사이트 간 VPN을 설정합니다. 자세한 내용은 FastConnect 및 Site-to-Site VPN을 참조하십시오.
-
Oracle Cloud Infrastructure
-
OCI FSS(파일 스토리지 서비스) 액세스에 대한 VCN(가상 클라우드 네트워크) 보안 규칙 생성: 파일 스토리지를 마운트하려면 특정 프로토콜 및 포트를 사용하여 마운트 대상의 VNIC에 대한 트래픽을 허용하도록 보안 규칙을 구성해야 합니다. 보안 규칙은 다음에 대한 트래픽을 사용으로 설정합니다.
- Open Network Computing Remote Procedure Call(ONC RPC) rpcbind 유틸리티 프로토콜
- NFS(Network File System) 프로토콜
- MOUNT(Network File System) 프로토콜
- NLM(Network Lock Manager) 프로토콜
자세한 내용은 파일 스토리지의 VCN 보안 규칙 구성을 참조하십시오.
- OCI FSS에서 파일 시스템 생성: OCI 콘솔을 사용하여 파일 시스템을 생성합니다. 파일 시스템에 대한 마운트 대상 세부정보를 구성할 때 데이터베이스가 배치된 VCN의 VCN 및 프라이빗 서브넷을 선택하고 FQDN(전체 도메인 이름)을 자동으로 생성하는 호스트 이름을 제공합니다. 자세한 내용은 Creating File Systems를 참조하십시오.
- 마운트 대상에 대한 FQDN 가져오기: 마운트 대상의 세부정보를 보려면에 설명된 대로 OCI 콘솔에서 파일 시스템의 마운트 대상에 대한 세부정보를 확인하여 FQDN을 가져옵니다.
-
외부 파일 시스템 연결
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
를 사용하여 자율운영 AI 데이터베이스의 디렉토리에 파일 시스템을 연결합니다.
주:
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
프로시저는 프라이빗 끝점에 있는 데이터베이스에만 프라이빗 파일 스토리지 서비스를 연결할 수 있습니다.
-
디렉토리를 생성하거나 기존 디렉토리를 사용하여 자율운영 AI 데이터베이스에 외부 파일 시스템을 연결합니다. 파일 시스템을 데이터베이스의 디렉토리 위치에 연결하려면 자율운영 AI 데이터베이스 인스턴스의 디렉토리 객체에 대한
WRITE
권한이 있어야 합니다.예를 들어, 다음 명령은FSS_DIR
이라는 데이터베이스 디렉토리를 생성하고fss
파일 시스템 디렉토리를 생성합니다.CREATE DIRECTORY FSS_DIR AS ‘fss’;
자세한 내용은 Create a Directory를 참조하십시오.
-
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
를 실행하여 자율운영 AI 데이터베이스의 디렉토리에 파일 시스템을 연결합니다. 이 프로시저를 실행하려면 ADMIN 사용자로 로그인하거나DBMS_CLOUD_ADMIN
에 대해EXECUTE
권한이 있어야 합니다.-
기본적으로
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
는 NFSv3를 사용합니다. 그러나params
매개변수를 명시적으로 사용하고nfs_version
를 값 3과 함께 지정하여 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; /
-
NFSv4를 사용하려면
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
에params
매개변수를 포함하고nfs_version
를 값 4로 지정하여 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; /
이 예에서는
file_system_name
매개변수에 지정된 네트워크 파일 시스템을 자율운영 AI 데이터베이스에 연결합니다.file_system_location
매개변수는 파일 시스템의 위치를 지정합니다.file_system_location
에 제공한 값은 FQDN(전체 도메인 이름) 및 FQDN:
file_path 형식의 파일 경로로 구성됩니다. 예:-
- FQDN:
myhost.sub000445.myvcn.oraclevcn.com
- 파일 경로:
/results
- FQDN:
directory_name
매개변수는 파일 시스템을 연결할 자율운영 AI 데이터베이스의 디렉토리 이름을 지정합니다. 이 디렉토리는 1단계에서 만든 디렉토리이거나 이전에 만든 다른 디렉토리입니다.description
매개변수는 작업에 대한 설명을 지정합니다. -
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
사용에 대한 참고 사항:
-
Oracle Cloud Infrastructure File Storage는 NFS 버전 3을 사용하여 공유합니다. 자세한 내용은 파일 스토리지 개요를 참조하십시오.
- Oracle Cloud Infrastructure가 아닌 파일 스토리지 시스템에 연결하는 경우 이 절차에서는 NFSv3 및 NFSv4를 지원합니다.
-
NFSv3를 사용하는 연결된 NFS 서버가 있고 NFS 버전이 NFS 서버에서 NFSv4로 업데이트된 경우
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
를 실행한 다음DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM
를 실행해야 합니다(nfs_version
가 4로 설정된params
매개변수 사용). 그러면 Autonomous AI Database가 NFSv4 서버에 액세스할 수 있도록 일치하는 프로토콜을 사용하여 NFS가 연결됩니다. 분리 후 다시 연결하지 않으면 NFS 서버에 액세스할 수 없으며"Protocol not supported"
과 같은 오류가 표시될 수 있습니다.
DBA_CLOUD_FILE_SYSTEMS 질의
파일 시스템을 연결한 후 DBA_CLOUD_FILE_SYSTEMS
뷰를 질의하여 연결된 파일 시스템에 대한 정보를 검색할 수 있습니다.
SELECT file_system_name, file_system_location, directory_path
FROM dba_cloud_file_systems
WHERE file_system_name = 'FSS';
이 질의는 FSS
파일 시스템 이름에 대한 세부정보를 반환합니다. 자세한 내용은 DBMS_CLOUD_FILE_SYSTEMS 뷰를 참조하십시오.
연결된 파일 시스템을 사용하면 디렉토리 이름을 허용하는 모든 PL/SQL API를 사용하여 연결된 파일 시스템의 파일을 읽고 쓸 수 있습니다. 예를 들어, 다음 방법 중 하나를 사용하여 연결된 FSS 디렉토리로 작업할 수 있습니다.
-
UTL_FILE
패키지입니다. -
Data Pump 익스포트 및 임포트 유틸리티
-
DBMS_CLOUD.LIST_FILES
및DBMS_CLOUD.PUT_OBJECT
와 같은 디렉토리와 함께 작동하는DBMS_CLOUD
API입니다.
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;
/
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;
/
DBMS_CLOUD.LIST_FILES
를 사용하는 연결된 파일 시스템의 목록 파일을 보여주는 예:SELECT object_name FROM DBMS_CLOUD.LIST_FILES('FSS_DIR');
- Oracle Database 19c PL/SQL Packages and Types Reference 또는 Oracle Database 26ai PL/SQL Packages and Types Reference의 UTL_FILE.
- LIST_FILES 함수
DBMS_CLOUD_FILE_SYSTEMS 보기
DBA_CLOUD_FILE_SYSTEMS
뷰는 데이터베이스의 디렉토리 위치에 연결된 외부 파일 시스템에 대한 정보를 나열합니다.
열 | 데이터 유형 | 설명 |
---|---|---|
FILE_SYSTEM_NAME |
VARCHAR2(128) |
파일 시스템 이름 |
FILE_SYSTEM_LOCATION |
VARCHAR2(4000) |
파일 시스템 위치 |
DIRECTORY_NAME |
VARCHAR2(128) |
첨부된 디렉터리 이름 |
DIRECTORY_PATH |
VARCHAR2(4000) |
연결된 디렉토리 경로 |
NFS_VERSION |
NUMBER |
NFS 버전 |
DESCRIPTION |
VARCHAR2(4000) |
DBMS_CLOUD_ADMIN.ATTACH_FILE_SYSTEM 를 실행할 때 설명 매개변수에 대해 제공된 값 |
CREATION_TIME |
TIMESTAMP(6) WITH TIME ZONE |
생성 시간기록 |
UPDATE_TIME |
TIMESTAMP(6) WITH TIME ZONE |
시간 기록 업데이트 |
외부 파일 시스템 분리
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
프로시저를 사용하여 자율운영 AI 데이터베이스의 디렉토리에서 파일 시스템을 분리합니다.
주:
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
프로시저는 프라이빗 끝점에 있는 데이터베이스에서만 프라이빗 파일 스토리지 서비스를 분리할 수 있습니다.
디렉토리 위치에서 파일 시스템을 분리하려면 디렉토리 객체에 대한 WRITE
권한이 있어야 합니다.
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM
프로시저를 실행하여 자율운영 AI 데이터베이스의 디렉토리 위치에서 파일 시스템을 분리합니다. 이 프로시저를 실행하려면 ADMIN 사용자로 로그인하거나 DBMS_CLOUD_ADMIN
에 대해 EXECUTE
권한이 있어야 합니다.BEGIN
DBMS_CLOUD_ADMIN.DETACH_FILE_SYSTEM (
file_system_name => 'FSS'
);END;
/
이 예에서는 자율운영 AI 데이터베이스에서 file_system_name
매개변수에 지정된 네트워크 파일 시스템을 분리합니다. 이 매개변수에 대한 값을 제공해야 합니다. 이 파일 시스템에 대한 정보는 DBA_CLOUD_FILE_SYSTEMS
뷰에서 제거됩니다.
자세한 내용은 DETACH_FILE_SYSTEM Procedure를 참조하십시오.