Automatic Tuning with Azure SQL Database Managed Instance

안녕하세요 저는 여기 SQL Server Engineering 팀의 Bob Ward입니다

자동으로 간단한 데모를 보여 드리겠습니다 Azure SQL 데이터베이스 관리 인스턴스로 이번에는 피처 튜닝 나는 실제로 SQL 서버 youtube 채널에서 몇 가지 다른 데모와 비디오를 만들었습니다 Windows의 SQL 서버 및 Linux의 SQL 서버에 대한 자동 조정 Azure SQL 데이터베이스는 Windows 및 Linux에서 SQL 서버와 거의 100 % 호환됩니다 나는 그 환경에서 데이터베이스 백업을 가져 와서 그것을 하늘빛으로 직접 복원 할 수있다 SQL 데이터베이스 관리 인스턴스

이것은 새로운 Azure 서비스의 호환성 약속 중 하나입니다 당신은 내 앞에서 볼 수 있습니다이 경우에는 백업을 실제로 복원하는 방법에 대한 지침을 웹 페이지에서 얻을 수 있습니다 세계적인 수입업자 표준 백업은 내가 자동 튜닝을위한 데모를 위해 실제로 사용할 것입니다 데모를 위해 사용해온 실제 백업 파일을 시연 해 왔습니다

자동 튜닝을 사용하는 방법은 여기에서 SQL 서버 관리 스튜디오입니다 필자는 하늘 데이터베이스 관리 인스턴스에 연결되어 있다고 썼습니다 웹 페이지의 지시 사항에 따라 복사 내 넓은 세계 가져 오기 백업 파일을 푸른 물방울 컨테이너 컨테이너에서 복원을하고 있는데 성공했습니다 나는 지금 SQL 작업 스튜디오로보고있다 나는 과거에 사용했던 것과 같은 스크립트 세트를 가지고있다

리눅스에서 SQL 서버는 자동 튜닝을 보여줍니다 해당 도구가 Azure Managed Intance에서 direclty를 작동시키지 않기 때문에 Windows 성능 모니터를 사용할 수 없습니다 repos에서 동일한 스크립트 세트를 사용할 수 있으므로 괜찮습니다 우리가 리눅스에서 SQL 서버를 위해 Azure가 관리하는 인스턴스를 보여주기 위해 자동 튜닝을 한 것입니다 스크립트에서 해당 비디오를 본 경우 wideworldimporters 샘플을 가져 와서 저장 프로 시저를 추가하도록 수정했습니다 쿼리 계획 회귀를 나타내는 정수 매개 변수 사용 지금 내가 윈도우 성능 모니터를 가지고 있지 않기 때문에 내가 할 수있는 일은 실제로 SQL 서버 데이터를 수집 할 스크립트를 실행하는 것이다

초당 일괄 요청은 글로벌 임시 임시 다른 쿼리를 실행하여 반복하고 결과를보고 워크로드 처리량을 관찰 할 수 있습니다 실제로 초기화 스크립트를 실행할 것입니다 그리고이 스크립트의 끝에서 어떻게이 스크립트와 github repo를 얻을 수 있는지 보여 드리겠습니다 이제 이걸 실행할거야 먼저 환경을 초기화하고이 보고서 절차 인 작업 부하를 시작합니다

그런 다음이 스크립트를 실행하여이 글로벌 임시 데이터에 대한 일괄 요청 데이터를 수집합니다 표 이제 배치 요청 SQL 스크립트를 사용하여 정상적인 성능을 관찰하고 관찰합니다 시간이 지남에 따라 내 보고서 작업량을보고 클릭하고 시간이 지남에 따라 일련의 데이터를 얻으면 새로운 차트 기능과 SQLOperations Studio를 사용하고 있습니다 시간과 가치의 카운터를보고 나는 여기로 가서 차트 형식으로 볼 수 있습니다

이제 시계열을 보면이 보고서 절차에 대해 가지고있는 워크로드 처리량의 표준 작업 종류를 나타냅니다 쿼리 계획 회귀 문제를 시뮬레이션 할 회귀 스크립트를 실행하십시오 다시 한 번 일괄 요청으로 돌아가서이 작업 부하에서 발생하는 회귀 문제를 관찰했습니다 여기를 몇 번 클릭하여 결과를 얻으십시오 여기에 우리의 시계열로 보일 것입니다

그리고 당신은 성능 저하를 볼 수 있습니다 정상적인 작업량이 좋아졌고 이제 성능 저하 문제가 있습니다 지금은 기본적으로 SQL 서버 창과 쿼리 스토어가 활성화되어있는 경우 리눅스처럼 볼 수있는 권장 DMV를 찾아 볼 수 있습니다 무슨 일이 벌어지고 있는지, 여기서 평균 CPU 시간 실제로 시간이 지남에 따라 증가했습니다 이전보다 4 ~ 5 배 더 하지만 qiery 계획은 동일한 쿼리와 다르므로 이전 계획으로 되돌리기 위해 스크립트 열의 모양을 사용할 수 있습니다 자동 튜닝을 활성화하면 내 작업 부하를 멈추게하는 것처럼 보일 것입니다

내 수집가를 그만둬 라 내가 할 일은 SQL에서 auto tune이라는 스크립트를 실행할 수 있다는 것입니다 쿼리 저장소를 지우는 프로 시저를 복원하여 프로 시저 캐시를 지 웁니다 자동 튜닝을 켜고 그래서 다시 내 작업량을 실사합시다 내 수집가를 걷어 찬다

우리는 시간 경과에 따라 그 성능을 다시 관찰 할 수있다 저장 프로 시저처럼 보인다 그리고 시계열 차트를 클릭하면 다시 볼 수있게됩니다 그래서 이것이 내 작업량 인 것처럼 느껴질 수 있습니다 회귀를 다시 실행 시키십시오

돌아가서 워크로드 변경 사항을 관찰하면 회귀로 인해 감소한 수치를 볼 수도 있습니다 자동 튜닝이 활성화되어 있기 때문에 찾을 수 있습니다 퍼포먼스는 조금 더 빨라진 곳으로 돌아가므로 차트처럼 보이는 것을 보자 여기서 워크로드 성능을 확인할 수 있습니다 그것은 쇠퇴했다

작은 실수가 있었지만 대부분이 파기되었습니다 쿼리 계획 회귀 문제로 인해 성능이 이전 수준으로 돌아 왔습니다 추천을 보면 여기를 클릭 할 수 있습니다 쿼리 계획 회귀 문제가 있음을 발견했습니다 평균 CPU 시간이 더 나 빠졌지 만 상태 전이가 마지막 계획 인 것을 알 수 있습니다

이것은 매우 비슷하다 SQL 서버 윈도우와 SQL 서버 리눅스에서 일종의 행동 그래서 저는 방금 Windows 또는 Linux 환경에서 SQL 서버로부터 백업을 복원 할 수있는 능력을 보여주었습니다 Azure 블로그 데이터베이스에 저장 한 후 Azure SQL 데이터베이스 관리 인스턴스로 직접 복원 그런 다음 과거에 나에게 보여 줬던 동일한 자동 튜닝 데모를 실행합니다 Windows 또는 Linux의 SQL 서버용 방금 전에 보여 줬던 데모 용 스크립트를 얻으려면 SQL 서버의 스크립트를 사용하십시오 Linux 자동 튜닝 데모 여기 내 github bobsql repo에서 사용할 수 있습니다 이 데모를 즐겁게 해주시길 바랍니다

이것은 Windows, Linux 및 Windows 환경에서 SQL 서버의 SQL 서버 자동 조정 기능을 보여줍니다 Azure SQL 데이터베이스 관리 인스턴스는 시간 내 주셔서 감사합니다

Introducing Azure SQL Database Managed Instance

– 새로운 구축 옵션을 살펴 봅니다 Azure SQL 데이터베이스 (Managed Instance)

많은 사람들이 SQL Server에 의해 구동되는 응용 프로그램을 가지고 있습니다 클라우드로 마이그레이션하고 현대화하려고합니다 응용 프로그램 클래스가 있습니다 복잡한 데이터베이스 환경이있는 SQL CLR, SQL Server 에이전트 및 데이터베이스 간 쿼리를 지원합니다 과거에는 이러한 의존성으로 인해 관리되는 PaaS 서비스로 마이그레이션하지 못하도록합니다

글쎄요, 좋은 소식은이 모든 것 이상이, 이제 지원됩니다 새로운 Azure SQL DB 관리 인스턴스를 사용합니다 그건 네가 접근 할 수 있음을 의미한다 가장 지능적인 데이터베이스 서비스로 제로 코드가 변경되고 100 % 가깝게 호환됩니다 어떻게 작동하는지 보여 드리죠

우리는 Azure에서 새로운 Managed Instance를 만드는 것으로 시작하겠습니다 포털에서 관리되는 인스턴스를 검색합니다 평상시처럼 서비스 이름을 지정하십시오 구독, 지역, 성능 수준, 모든 공통 매개 변수 데이터베이스 서비스를 만들 때 만들기, 몇 분 안에 새로운 서비스를 사용할 수 있습니다

이미 새로운 Managed Instance를 만들었습니다 내 응용 프로그램 데이터베이스를 Azure로 마이그레이션 해보자 내 스택 오버플로 엔터 프라이즈가 응용 프로그램은 로컬로 배포됩니다 이것은 호스팅 된 두 데이터베이스에 연결됩니다 내 데이터 센터의 SQL Server 2008 R2, 응용 프로그램간에 데이터베이스 조인이 필요합니다

이러한 뷰를 렌더링합니다 우리의 데이터베이스를 마이그레이션합시다 Azure SQL DB 관리 인스턴스 데이터베이스 마이그레이션 서비스를 사용할 것입니다 나는 그것에게 이름을 부여함으로써 시작한다

내 데이터 센터에서 내 SQL Server 2008 R2 환경 서비스는 또한 마이 그 레이션 할 수 있습니다 오라클, MySQL, 및 지원되는 모든 SQL Server 버전이 포함됩니다 Azure SQL DB 관리 인스턴스를 가리 킵니다 나는 이전에 만들었습니다 마이그레이션 할 두 데이터베이스를 선택합니다 마지막으로 임시 저장 위치를 ​​가리 킵니다

서비스는 이것을 사용하여 객체를 저장합니다 마이그레이션 중 그리고 그게 다야 우리는 우리의 서비스에 이름을 붙일 것이며, 우리는 클라우드를 떠난다 서비스가 데이터베이스 마이그레이션을 시작합니다

새로운 Azure SQL DB 관리 인스턴스에 추가합니다 데이터베이스 및 모든 종속 오브젝트를 복원합니다 데이터베이스 마이그레이션 서비스 다중 축척 모델 지원 메가 바이트에서 테라 바이트 크기의 시스템 다운 타임을 최소화했다 우리는 데이터베이스를 클릭하고 진행 상황을 볼 수 있습니다 당신은 몇 초 만에 그것을 볼 수 있습니다

우리의 데이터베이스는 이미 마이그레이션을 완료했습니다 이제 우리의 응용 프로그램으로 돌아 갑시다 다른 어떤 변화도없이, 신청서를 알려 드리겠습니다 내 Azure SQL DB 관리 인스턴스, 우리의 응용 프로그램을 다시 실행 해 봅시다 불과 몇 초 만에 우리는 이전했습니다

우리의 응용 프로그램이 작동합니다 코드를 변경하지 않아도됩니다 그리고 당신이 볼 수 있듯이, 우리의 응용 프로그램이 이제 연결되었습니다 전적으로 지원되는 Azure SQL DB 관리 인스턴스 내 교차 데이터베이스 조인 및 기타 모든 SQL Server 종속성 아니요, 이것은 가상 머신이 아닙니다

이것은 관리되는 데이터베이스 서비스입니다 내 운영체제를 패치 할 필요가 없다 내 SQL 환경 업그레이드, 또는 모든 컴퓨터 구성에 대해 걱정할 필요가 없습니다 Azure는이 모든 것을 관리합니다 내구성이 높고 가용성이 높으며 안전하며, 지금 나는 접근 할 수있다

내가 얻을 수있는 모든 지능형 기능에 Azure에서 SQL을 실행합니다 예를 들어, 여기 포털에서 바로, 성능에 대한 통찰력을 최대한 활용할 수 있습니다 Azure는 데이터베이스 원격 측정의 기록을 유지하고 있습니다 그 쿼리를 찾아 쉽게 드릴 할 수 있습니다 대부분의 리소스를 소모합니다

실제로, Azure는 지속적으로 모니터합니다 모든 쿼리가 실행됩니다 우리는 기계 학습을 사용하고 있습니다 데이터베이스 워크로드를 이해합니다 그리고 우리는 추천을 생산합니다

성능 향상 방법 Azure가 제공하는 스크립트를 사용할 수 있습니다 이것을 직접 시스템에 적용하십시오 또는, 내가 선택한 경우, Azure가 자동으로 업데이트를 적용하도록 할 수 있습니다 Azure는 데이터베이스를 자동으로 조정할 수 있습니다

우리는 이러한 혁신을 제공하는 유일한 클라우드입니다 우리는 또한 보안을 혁신 해 왔습니다 지난 수년간 감사, 위협 탐지, 이제 우리는 취약성 평가 (Vulnerability Assessment)를 도입 할 것입니다 취약성 평가는 내 데이터베이스를 검사합니다 일련의 모범 사례를 사용하여, 그래서 안전하고 호환되는 데이터베이스를 유지 관리 할 수 ​​있습니다

예를 들어, 많은 사람들이 준수해야합니다 GDPR 및 PCI와 같은 규제 요건이 있습니다 많은 것들 중에서, 취약성 평가는 탐지 할 수있다 여기서 데이터베이스에 중요한 데이터가 저장되어 있습니다 권장 단계도 포함됩니다

데이터를 보호하기 위해, 여기에 즉각적인 조치를 취할 수 있습니다 포털에서 동적 데이터 마스크 적용 민감한 데이터의 노출을 제한 할 수 있도록 최종 사용자 및 응용 프로그램 그래서 빠른 개요였습니다 Azure SQL DB 관리 인스턴스 표시된 링크를 따라 더 많은 정보를 얻을 수 있습니다 직접 해보십시오 당신이 생각하는 것을 저희에게 알려주십시오

지켜봐 줘서 고마워 (활기찬 전자 음악)

Migrate SQL Server data by using Azure SQL Database Managed Instance | T142

안녕하세요 저는 데이터 플랫폼 팀에서 작업하여 하나의 문제 관리자입니다 이 비디오에서 나는 푸른 속편이 인스턴스를 관리 무엇인지 보여 드리겠습니다

첫째, 우리가 볼 수 왜 우리는 우리의 속편 인스턴스를 관리 한 다음에 인스턴스를 관리하는 것을 볼 필요합니까? 어떻게 당신은 그것을 사용할 수 있습니까? 속편이 인스턴스를 관리 우리가 그것을 해결하고자하는 문제는 무엇인가? 우리는 푸른 클라우드로 애플리케이션 및 데이터베이스를 이동하려는 많은 고객을 가지고있다 그들은 또 다른 우리에게 작업을 유지 패치 백업을 위임 할 수 있기 때문에 플랫폼은 서비스입니다 선호합니다 그러나 클라우드로 여행이 어려울 수 있습니다 같은 SQL 에이전트와 같은 인스턴스 레벨 기능의 부재 우리는 표면적의 lation 간격이 응용 프로그램 재 작성을 많이 필요할 수있다 필요합니다

그러므로 우리는 쉽게 클라우드 데이터베이스를 마이그레이션 할 수 있도록하는 새로운 속편 데이터 서비스를 설계했다 당신은 속편 있습니까? 관리 인스턴스는 기존의 단일 데이터베이스 비탄성 풀처럼 제공하는 과거의 다른 속편 데이터베이스의 또 다른 맛이다? 나는 동일한 측정 인스턴스가 제몫입니다 볼 수 있습니다 행성에 SQL 서버와 거의 100 %의 호환성 SQL 인스턴스입니다 그것은 당신이 쉽게 들어 올려 다른 클라우드로 속편 서버 데이터베이스를 이동 할 수 있습니다 관리 인스턴스는 다른 속편 데이터베이스와 동일한 인프라를 구축하고, 같은 시간에 자동으로 배치 포인트가 복원 자동 백업으로 모든 파스코 능력을 제공한다

데이터베이스의 성능을 향상 지능 내장 당신이 할당 된 개인 IPEA 주소로 venet에 배치에이는 의기 양양하고 최선을 다하고 있습니다 우리는 클라우드하는 마찰 마이그레이션입니다 수 있도록 산스크리트어 비즈니스 모델에서 경쟁력이있다 관리되는 인스턴스로, 당신은 우리가 다른 속편 데이터베이스를 제공하는 최신 성능의 보안 언어 향상을 받고 있습니다 다른 속편 매너는, 인스턴스는 과거의 데이터베이스 인스턴스가 주최하고 푸른 구름에 의해 관리되고 있습니다

아이거는 데이터베이스 인스턴스 인의 백업 상태 및 가용성에 대한 돌봐 당신은 링크 서버로 모든 속편 서버 기능을 사용할 수 있습니다 SQL 에이전트 또는 시리즈 브로커는 다른 속편 관리 인스턴스를 연결합니다 조치 인스턴스는 완전히 다른 다른 자원으로부터 절연되어있다 스토리지 및 컴퓨팅은 완전히 전념하고 있습니다

그리고 쉽게 다른 모든 클라이언트에 당신은 네트워크 보안 그룹을 사용하여 인스턴스에 대한 액세스를 제어 할 수있는 팔의 ravinet에이 배치됩니다 당신이 개인 IPEA을 할당 중 하나를 그녀 야 수있는 서브넷에이 배치됩니다 당신은 당신의 기존 데이터 센터의 확장으로 다른 속편 관리 인스턴스를 사용할 수 있습니다 당신은 우리가 표준 VPN 급행 노선 게이트웨이를 사용하여 인스턴스를 호스팅하는 푸른 Venet, 연결을 설정할 수 있습니다

당신은 당신의 인프라에서 기존 데이터베이스 나 응용 프로그램이있는 경우 당신은 인터넷에 액세스 할 수 있도록 할 수있다, 당신은 당신의 다른 속편 관리 인스턴스를 배치하고 다른 속편을 사용했다 네트워크에있는 다른 데이터베이스 자원 등의 매너 인스턴스 액세스 할 수있는 응용 프로그램이 표준 차를 사용하여 인스턴스를 관리 할 수 ​​있습니다 SQL 언어와 인스턴스는 표준 링크 서버를 사용하여 연결할 수 있습니다

당신은 또한 다른 클라우드 애플리케이션에서 데이터베이스를 마이그레이션하고 다른 속편을 사용할 수 있습니다 기타 다른 자원으로 인스턴스를 관리 할 수 ​​있습니다 우리는 다른 속편 관리 인스턴스가 귀하의 속편 워크로드에 가장 적합한 경로를이 나라 믿습니다 그것은 쉽게 리프트를 가능하게하고 그녀는 다른 클라우드로 마이그레이션합니다 그것은 전체에 푸른에서 제공하는 SQL 서버 전체 관리 기능과 높은 호환성 그물에 의기 양양하다 있습니다

나는 곧 미리보기에있을 것입니다 관리 인스턴스를 속편하지 않습니다 그래서 우리는 그들을 시도 당신을 초대합니다 당신은 우리의 SQL 데이터베이스의 숙박 시설에 대한 자세한 정보를 찾을 수 있습니다 또는 다른 속편 데이터베이스를 사용하여 트위터에 우리를 따라, 그리고 인스턴스를 관리 할 수 ​​있습니다 시청 해주셔서 감사합니다

How to run an Oracle Database instance in a Docker container? Yes, I Know IT! Ep 18

훌륭한 오픈 소스 대안에도 불구하고, 오라클 데이터베이스 기술은 높은 수요에 남아 인력 시장 하지만 당신의 집에있는 컴퓨터에 처음부터 오라클을 설치하는 지루한 작업입니다

특히 당신은 오라클을 사용하는 방법을 학습하는 과정에있을 때 바라건대, 당신은 최소의 노력으로 오라클 데이터베이스 인스턴스를 설치하는 부두 노동자를 활용할 수 있습니다, 그리고, 당신의 컴퓨터에 너무 많은 자원을 필요로하지 않고 잘 최소한의 노력 -과 인내의 좋은 주 이 동영상에서는 이미 도커의 최신 버전을 가지고 가정 컴퓨터에 설치되어 있어야합니다 그렇지 않은 경우, 도커 설치를 설명 내 이전 비디오에서보세요 훌륭한 세부의 리눅스 박스에 어쨌든, 당신은 부두 노동자 허브에서 오라클의 사전 설치된 이미지를 다운로드 할 수 있습니다 자신의, 나는 설치 고통스러운 오라클에서 제공하는 공식 이미지를 발견, 그래서 내가 대신 Maksym Bilenko에서 이미지를 사용합니다 : 2 개 이상의 기가 바이트 다운로드하고, 인터넷 연결 속도에 따라, 이 단계를 완료하는 데 매우 looooong 시간이 필요할 수 있습니다

적어도 한 시간 후, 오라클 고정 표시기 이미지가 드디어 도착했습니다 그리고 우리는 지금 그 이미지에서 컨테이너를 만들 수 있습니다 오라클 컨테이너 처음 시작하면, 당신은 조금 더 인내심이 필요합니다 시간은 그 초기 설정을 수행합니다 몇 분 후 마지막으로,이 시간 바로 사용할 수 있습니다

그래서 그 컨테이너의 맥락에서 유서 깊은 오라클 SQLPLUS 명령 행 도구를 시작하자 우리의 첫 번째 명령을 실행합니다 : 그것은 어쩌면 정말 인상적 아니지만, 당신이 멀리 사라 한 경우, 그 오라클은 최대 및 의미 달리는 그리고 당신은 당신이 데이터베이스를 조회하는 데 사용할 수있는 연결을 설립했습니다 물론, 당신은 당신의 일상 업무에 대한 데이터베이스 관리자로 작동하지 않습니다 그것은 당신의 리눅스 박스에 기본적으로 루트로 작업 같은 것입니다 확실히하는 것이 가장 좋습니다

그래서 우리는 즉시 새 사용자를 작성합니다 상황이 전에 조금 간단하기 위해 사용하지만, 오라클은 CONNECT 및 RESOURCE 사용되지 않는 역할 – 그들도 대단위했기 때문 당신은 여전히 ​​그들을 사용하여 많은 자습서를 볼 수 있습니다 그러나 일반적으로 지금 인정 그들은 사용자에게 너무 많은 권한을 부여한다 그러나의 지금은 그 괄호를 닫습니다 수 있도록하고, 오라클 인스턴스에 자신을 연결 테스트를 위해 새로운 더미 테이블을 생성하기 위하여 사용자 이름

그리고 그것을 증명 : 당신은 당신을 위해 오라클 데이터베이스의 작업 인스턴스가 준비가 지금 가지고있는 는 SQL 플러스 명령 줄 인터페이스를 사용하여 연습 하지만이 그 재미 없어, 동의합니다 Maye 당신은 그렇게 멋진 GUI 도구를 사용하여 선호? 좋은 소식은 이러한 도구는 컨테이너에 이미 사용할 수 있습니다 나쁜 소식은 그 설치 및 구성의 조금에서 사용할 수있을 필요하다 그곳에 그리고 그 다음 비디오의 대상이 될 것입니다

그래서, 곧 당신을보고!