R 패키지 사용 팁
적용 대상: SQL Server 2016(13.x) 이상 Azure SQL Managed Instance
이 문서에서는 SQL Server에서 R 패키지를 사용하는 방법에 대한 유용한 팁을 제공합니다. 이러한 팁은 R에 익숙하지 않은 DBA와 SQL Server 인스턴스의 패키지 액세스에 익숙하지 않은 숙련된 R 개발자를 위한 것입니다.
R을 처음 사용하는 경우
R 패키지를 처음으로 설치하는 관리자는 R 패키지 관리에 대한 몇 가지 기본 사항을 알고 있으면 시작하는 데 도움이 될 수 있습니다.
패키지 종속성
R 패키지는 다른 여러 패키지에 자주 의존하며, 그 중 일부는 인스턴스에서 사용하는 기본 R 라이브러리에서 사용할 수 없습니다. 패키지에 이미 설치된 것과 다른 버전의 종속성 패키지가 필요한 경우도 있습니다. 패키지 종속성은 패키지에 포함된 설명 파일에 명시되어 있지만 때로는 불완전합니다. iGraph라는 패키지를 사용하여 종속성 그래프를 완전히 구체화할 수 있습니다.
여러 패키지를 설치해야 하거나 조직의 모든 사용자가 올바른 패키지 유형 및 버전을 가져오도록 하려면 miniCRAN 패키지를 사용하여 전체 종속성 체인을 분석하는 것이 좋습니다. miniCRAN은 여러 사용자 또는 컴퓨터 간에 공유할 수 있는 로컬 리포지토리를 만듭니다.
패키지 원본, 버전 및 형식
CRAN 및 Bioconductor와 같은 R 패키지에 대한 여러 소스가 있습니다. R 언어(https://www.r-project.org/)의 공식 사이트에는 이러한 리소스가 많이 나열되어 있습니다. 대부분의 패키지는 개발자가 소스 코드를 가져올 수 있는 GitHub에 게시됩니다.
R 패키지는 여러 컴퓨팅 플랫폼에서 실행됩니다. 설치한 버전은 Windows 이진 파일이어야 합니다.
R 패키지는 여러 컴퓨팅 플랫폼에서 실행됩니다. 설치한 버전은 Linux 이진 파일이어야 합니다.
설치 중인 라이브러리 및 이미 설치된 패키지 파악
이전에 컴퓨터에서 R 환경을 수정한 경우 무엇이 설치하기 전에 R 환경 변수 .libPath
가 하나의 경로만 사용하는지 확인합니다.
이 경로는 인스턴스의 R_SERVICES 폴더를 가리킵니다. 이미 설치된 패키지를 확인하는 방법을 비롯한 자세한 내용은 R 패키지 정보 가져오기를 참조하세요.
SQL Server를 새로 사용하는 경우
SQL Server에서 실행되는 코드 작업을 수행하는 R 개발자는 서버를 보호하는 보안 정책 때문에 R 환경을 제어하는 기능이 제한됩니다. 다음 팁은 일반적인 상황을 설명하고 이 환경에서 작업하기 위한 제안을 제공합니다.
R 사용자 라이브러리: SQL Server에서 지원되지 않음
새로운 R 패키지를 설치해야 하는 R 개발자는 기본 라이브러리를 사용할 수 없을 때마다 또는 개발자가 컴퓨터의 관리자가 아닐 때 프라이빗 사용자 라이브러리를 사용하여 마음대로 패키지를 설치하는 데 익숙합니다. 예를 들어, 일반적인 R 개발 환경의 경우 사용자는 R 환경 변수 libPath
에 패키지의 위치를 추가하거나 다음과 같이 전체 패키지 경로를 참조합니다.
library("c:/Users/<username>/R/win-library/packagename")
R 패키지는 인스턴스와 연결된 특정 기본 라이브러리에 설치해야 하므로 SQL Server에서 R 솔루션을 실행할 때는 작동하지 않습니다. 기본 라이브러리에서 패키지를 사용할 수 없는 경우 패키지를 호출하려고 하면 이 오류가 발생합니다.
library(xxx)의 오류: 'package-name'이라는 패키지가 없습니다.
SQL Server에서 R 패키지를 설치하는 방법에 대한 내용은 SQL Server Machine Learning Services 또는 SQL Server R Services에서 새 R 패키지 설치를 참조하세요.
"패키지를 찾을 수 없음" 오류를 방지하는 방법
다음 지침을 사용하면 "패키지를 찾을 수 없음" 오류를 방지하는 데 도움이 됩니다.
사용자 라이브러리에 대한 종속성을 제거합니다.
필요한 R 패키지를 사용자 지정 사용자 라이브러리에 설치하는 것은 잘못된 개발 사례입니다. 이렇게 하면 라이브러리 위치에 액세스할 수 없는 다른 사용자가 솔루션을 실행하는 경우 오류가 발생할 수 있습니다.
또한 패키지가 기본 라이브러리에 설치된 경우 R 코드에서 다른 버전을 지정하더라도 R 런타임은 기본 라이브러리에서 패키지를 로드합니다.
공유 환경에서 코드를 실행할 수 있는지 확인합니다.
솔루션의 일부로 패키지를 설치하지 않습니다. 패키지를 설치할 수 있는 권한이 없으면 코드가 실패합니다. 패키지를 설치할 수 있는 권한이 있더라도 실행하려는 다른 코드와 별도로 실행해야 합니다.
코드를 확인하여 제거된 패키지에 대한 호출이 없는지 확인합니다.
R 패키지 또는 R 라이브러리의 경로에 대한 직접 참조를 제거하도록 코드를 업데이트합니다.
인스턴스와 연결된 패키지 라이브러리를 확인합니다. 자세한 내용은 R 패키지 정보 가져오기를 참조하세요.