다음을 통해 공유


Databricks JDBC 드라이버에 대한 드라이버 기능 설정

이 문서에서는 Databricks JDBC 드라이버에 대한 특수 및 고급 드라이버 기능 설정을 구성하는 방법을 설명합니다.

Databricks JDBC 드라이버는 다음과 같은 특수 및 고급 드라이버 기능 설정을 제공합니다.

JDBC의 ANSI SQL-92 쿼리 지원

레거시 Spark JDBC 드라이버는 ANSI SQL-92 언어로 SQL 쿼리를 수락하고 쿼리를 서버로 보내기 전에 Databricks SQL 언어로 변환합니다. 그러나 애플리케이션이 직접 Databricks SQL을 생성하거나 애플리케이션이 Azure Databricks와 관련된 비 ANSI SQL-92 표준 SQL 구문을 사용하는 경우, Databricks는 UseNativeQuery=1를 연결 구성으로 설정하는 것이 좋습니다. 이 설정으로 드라이버는 SQL 쿼리를 Azure Databricks에 그대로 전달합니다.

기본 카탈로그 및 스키마

기본 카탈로그 및 스키마를 지정하려면 JDBC 연결 URL에 추가 ConnCatalog=<catalog-name>;ConnSchema=<schema-name> 합니다.

JDBC에서 대규모 쿼리 결과 추출

대규모 쿼리 결과를 추출할 때 최상의 성능을 얻으려면 다음 최적화 옵션이 포함된 최신 버전의 JDBC 드라이버를 사용합니다.

JDBC의 화살표 serialization

JDBC 드라이버 버전 2.6.16 이상에서는 Apache Arrow를 사용하는 최적화된 쿼리 결과 serialization 형식을 지원합니다.

JDBC의 Cloud Fetch

JDBC 드라이버 버전 2.6.19 이상에서는 Azure Databricks 배포에 설정된 클라우드 스토리지를 통해 쿼리 결과를 가져오는 기능인 Cloud Fetch를 지원합니다.

쿼리 결과는 화살표 직렬화된 파일로 내부 DBFS 스토리지 위치에 최대 20MB까지 업로드됩니다. 쿼리 완료 후 드라이버에서 가져오기 요청을 보내면 Azure Databricks는 업로드된 파일에 공유 액세스 서명을 생성하고 반환합니다. 그런 다음 JDBC 드라이버는 URL을 사용하여 DBFS에서 직접 결과를 다운로드합니다.

Cloud Fetch는 1MB보다 큰 쿼리 결과에만 사용됩니다. 더 작은 결과는 Azure Databricks에서 직접 검색됩니다.

Azure Databricks는 24시간 후에 삭제되도록 표시된 누적 파일을 자동으로 수집합니다. 이렇게 표시된 파일은 24시간 후에 완전히 삭제됩니다.

Cloud Fetch 아키텍처에 대한 자세한 내용은 BI Tools를 사용하여 높은 대역폭 연결을 달성한 방법을 참조하세요.

로깅 사용

JDBC 드라이버에서 로깅을 사용하도록 설정하려면 모든 드라이버 활동을 기록하기 위해 심각한 이벤트 6 만 기록하도록 속성을 1 설정합니다LogLevel. LogPath 로그 파일을 저장할 폴더의 전체 경로로 속성을 설정합니다.

자세한 내용은 Databricks JDBC 드라이버 가이드의 섹션을 참조 Configuring Logging 하세요.