Azure SQL에 데이터 로드
데이터베이스 또는 인스턴스를 배포, 확인 및 구성한 후 다음 논리적 단계에서는 데이터를 가져옵니다.
옵션
Azure SQL에 데이터를 로드하는 데 많은 옵션을 사용할 수 있습니다. 일부는 온-프레미스에서 사용할 수 있는 옵션과 겹칩니다. 이 단원에서 몇 가지 옵션을 살펴봅니다.
대량 복사 프로그램
BCP(대량 복사 프로그램)는 온-프레미스에서 Azure SQL에 연결하고 Azure 가상 머신에서 Azure SQL에 연결하는 데 사용되는 일반적인 도구입니다. 그런 다음, 해당 도구를 사용하여 데이터를 Azure SQL로 이동할 수 있습니다.
대량 삽입
대량 삽입 작업은 SQL Server 온-프레미스에서 사용할 수 있는 작업과 유사하지만 머신의 한 파일 또는 여러 파일에서 데이터를 로드하는 대신 Azure Blob Storage에서 데이터를 로드합니다. 다음 연습에서는 예를 통해 방법을 안내합니다.
SSIS 패키지
Azure SQL에서 패키지를 사용하여 온-프레미스 SSIS(SQL Server Integration Services)에 연결할 수 있습니다. Azure SQL Database 또는 Azure SQL Managed Instance에서 SSIS 데이터베이스를 호스트할 수 있습니다. 또한 Azure Data Factory와 같은 도구를 통해 Azure-SSIS Integration Runtime for SSIS 패키지를 사용할 수 있습니다.
기타 옵션
다른 흥미로운 옵션으로는 Spark 또는 Azure Data Factory와 같은 기술을 사용하여 Azure SQL Database 또는 Azure SQL Managed Instance에 데이터를 로드하는 방법이 있습니다. 로드와 직접적인 관련은 없지만 복사에 기존 데이터베이스를 사용하거나 BACPAC 파일 가져오기를 수행하여 데이터베이스를 만들 수 있습니다. Azure SQL Managed Instance에서는 URL에서 기본적으로 데이터베이스를 복원하는 데 T-SQL 명령을 사용할 수 있습니다.
데이터 로드에 관한 고려 사항
온-프레미스에서 데이터를 로드하는 것과 Azure SQL로 데이터를 로드하는 경우의 가장 큰 차이점은 로드하려는 데이터를 Azure에서 호스트해야 한다는 것입니다. 온-프레미스의 파일에서 데이터를 호스트할 수 없습니다. 대안으로 온-프레미스 파일 및 파일 시스템을 Azure Blob Storage에 저장할 수 있습니다. 또한 해당 전략은 파일을 로드하고 ETL 작업을 설정할 때 효율성을 높입니다.
최소 로깅은 지원되지 않으므로 항상 전체 복구 모드로 실행됩니다. 전체 복구 모드 및 로그 처리량에 대한 제한으로 인해 데이터를 로드할 때 로그 거버넌스가 영향을 미칠 수 있습니다. 일괄 처리를 사용하고 적절하게 크기를 조정하는 것과 같은 기술은 대량 로드 중에 중요합니다. 다음 연습에서 더 많은 팁을 얻을 수 있습니다. 클러스터형 columnstore 인덱스로 로드하면 시나리오에 따라 트랜잭션 로그 제한을 방지하는 데 도움될 수 있습니다.