연결된 데이터베이스 기능이 있는 원격 테이블 또는 뷰 사용
ODBC 어댑터 기반의 SAP HANA 스마트 데이터 액세스 연결에는 가상 테이블을 생성할 필요가 없는 원격 테이블과 뷰를 사용할 수 있는 방법이 있습니다. 이를 연결된 데이터베이스라고 합니다.
연결된 데이터베이스 기능의 장점은 로컬 시스템에서 데이터베이스 오브젝트의 유지보수를 줄일 수 있다는 것입니다. 각 테이블에 대한 가상 테이블을 생성하지 않고 원격 테이블 또는 뷰(예: SQL 쿼리)를 직접 사용할 수 있습니다.
연결된 데이터베이스는 데이터 가상화 시나리오에서만 작동합니다. 데이터 복제를 구현해야 하는 구성에서는 기존의 방식으로 가상 테이블을 생성해야 합니다.
주의
- REST API 어댑터를 통한 스마트 데이터 액세스 원격 소스(예: Amazon Athena 및 Google BigQuery)
- 스마트 데이터 통합 원격 소스
특히, 그림과 같이 두 개의 SAP HANA 시스템(클라우드 또는 온프레미스) 간에 연결된 데이터베이스 기능을 사용할 수 있습니다.

연결된 데이터베이스의 개념은 원격 시스템의 오브젝트(테이블 또는 뷰)를 SQL 문에서 직접 참조하여 액세스하는 것입니다.
그림에 나와 있는 것처럼 이 SQL 문에서 기존 "<schema_name>"."<object_name>" 표기법은 세 부분으로 구성된 표기법("remote_source"."remote_schema"."remote_object")으로 대체됩니다.
노트
연결된 데이터베이스 기능을 사용하여 원격 테이블 또는 뷰에 액세스하면 SAP HANA에서 _SYS_LDB 스키마에 숨겨진 가상 테이블을 생성합니다.
이 숨겨진 가상 테이블은 원격 오브젝트의 메타데이터를 저장하는 데 사용되며 쿼리되지 않습니다.
노트
하지만 두 SAP HANA 시스템 간에 배포될 때 연결된 데이터베이스 기능에 최적화된 모드를 사용할 수 있습니다. 이 모드에는 숨겨진 가상 테이블이 필요하지 않습니다.
연결된 데이터베이스 기능 사용 방법
연결된 데이터베이스 기능을 사용하려면 원격 소스에 대한 특정 권한(LINKED DATABASE)을 원격 오브젝트의 사용자에게 부여해야 합니다.
노트
연결된 데이터베이스 기능을 사용하여 원격 테이블과 뷰에 액세스하는 방법을 알아보려면 이 비디오를 실행하십시오.
연결된 데이터베이스 - 최적화된 모드
소스 시스템과 대상 시스템이 모두 SAP HANA 데이터베이스이고 SAP HANA 스마트 데이터 액세스 원격 소스를 통해 연결된 시나리오에서는 연결된 데이터베이스 기능의 최적화된 버전을 사용할 수 있습니다.
연결된 표준 데이터베이스 기능과 비교할 때, 숨겨진 가상 테이블은 생성되지 않지만 데이터를 선택한 원격 오브젝트의 메타데이터를 로컬에서 캐싱합니다. 따라서 정리 작업이 필요하지 않으며(숨겨진 가상 테이블 없음) 원격 오브젝트에 대한 통계를 새로 고칠 필요가 없습니다. 필요한 경우 자동으로 가져옵니다.
연결된 데이터베이스를 사용하는 SAP HANA 기능에는 몇 가지 제한사항이 있습니다(최적화된 모드). SAP Note 2605574를 참조하십시오.
연결된 데이터베이스를 활성화하는 방법 - 최적화된 모드
최적화된 모드는 기본적으로 비활성화되어 있습니다. 활성화하려면 원격 소스의 구성 문자열에 추가 설정을 추가합니다(linkeddatabase_mode=optimized).
다음은 원격 소스 정의의 예입니다.
1234CREATE REMOTE SOURCE MY_HANA1
ADAPTER "hanaodbc"
CONFIGURATION 'Driver=libodbcHDB.so;ServerNode=myserver:30115;linkeddatabase_mode=optimized'
WITH CREDENTIAL TYPE 'PASSWORD' USING 'user=user1;password=Test1234';연결된 데이터베이스 아티팩트 유지보수
최적화된 모드를 사용하지 않는 원격 소스에서는 숨겨진 가상 테이블을 SQL 문으로 관리할 수 있습니다. 메타데이터와 원격 오브젝트의 상태를 동기화하기 위해 새로 고치거나, 더 이상 필요하지 않은 메타데이터를 삭제하는 것이 목표입니다.
메타데이터를 새로 고치려면 다음 ALTER REMOTE SOURCE 문 중 하나를 실행할 수 있습니다.
- 연결된 모든 개체의 메타데이터를 새로 고치려면 다음과 같이 하십시오.Code Snippet1ALTER REMOTE SOURCE <remote_source> REFRESH LINKED OBJECTS;
- 단일 오브젝트의 메타데이터를 새로 고치려면 다음과 같이 하십시오.Code Snippet12ALTER REMOTE SOURCE <remote_source> REFRESH LINKED TABLE <remote_source>.<remote_schema>.<table_name>;
노트
연결된 데이터베이스 액세스와 관련하여 내부에서 생성된 오브젝트를 삭제하려면 다음과 같이 ALTER REMOTE SOURCE 문을 실행합니다.
12ALTER REMOTE SOURCE <remote_source_name>
DROP LINKED OBJECTS [CASCADE | RESTRICT];- 옵션이 없는 명령문은 다른 데이터베이스 오브젝트가 종속되지 않는 연결된 오브젝트를 삭제하지만 종속성이 있는 연결된 오브젝트는 유지합니다.
- CASCADE 옵션을 사용하면 연결된 모든 개체와 해당 개체에 종속된 모든 데이터베이스 개체가 삭제됩니다.
- RESTRICT 옵션을 사용하면 데이터베이스 오브젝트가 종속되지 않는 경우에만 연결된 모든 오브젝트가 삭제됩니다. 연결된 단일 오브젝트에 대한 단일 종속성도 있는 경우 연결된 오브젝트가 전혀 삭제되지 않습니다.