Redash의 Azure Data Explorer에서 데이터 시각화
Redash는 데이터 원본을 연결 및 쿼리하고 대시보드를 구축하여 데이터를 시각화하고 동료와 공유합니다. 이 문서에서는 Azure Data Explorer를 Redash에 대한 데이터 원본으로 설정한 다음 데이터를 시각화하는 방법을 알아봅니다.
사전 요구 사항
- Azure 구독 평가판 Azure 계정을 만듭니다.
- Azure Data Explorer 클러스터 및 데이터베이스. 클러스터 및 데이터베이스를 만듭니다.
- 샘플 데이터를 Azure Data Explorer로 수집에 설명된 대로 데이터를 수집합니다. 수집 옵션에 대한 자세한 내용은 수집 개요를 참조하세요.
데이터 원본 구성
다음 단계를 수행하여 Azure Data Explorer를 대시보드 도구의 데이터 원본으로 구성합니다. 이 섹션에서 이 단계를 더 자세히 다룹니다.
Microsoft Entra 서비스 주체를 만듭니다. 서비스 주체는 대시보드 도구에서 Azure Data Explorer 서비스에 액세스하는 데 사용됩니다.
Azure Data Explorer 데이터베이스의 뷰어 역할에 Microsoft Entra 서비스 주체를 추가합니다.
Microsoft Entra 서비스 주체의 정보를 기반으로 대시보드 도구 연결 속성을 지정한 다음 연결을 테스트합니다.
서비스 주체 만들기
Azure CLI 명령줄 환경을 사용하여 또는 Azure Portal에 서비스 주체를 만들 수 있습니다. 어떤 방법을 사용하든 서비스 주체를 만든 후 이후 단계에서 사용하는 네 가지 연결 속성에 대한 값을 가져옵니다.
Azure portal
서비스 주체를 만들려면 Azure Portal 설명서의 지침을 따릅니다.
역할에 애플리케이션 할당 섹션에서 Reader 역할 유형을 Azure Data Explorer 클러스터에 할당합니다.
로그인을 위한 값 가져오기 섹션에서 이 단계에서 설명하는 세 가지 속성 값인 디렉터리 ID(테넌트 ID), 애플리케이션 ID, 암호를 복사합니다.
Azure Portal에서 구독을 선택한 다음, 서비스 주체를 만든 구독에 대한 ID를 복사합니다.
Azure CLI
서비스 주체를 생성합니다.
reader
의 해당 범위 및 역할 유형을 설정합니다.az ad sp create-for-rbac --name "https://{UrlToYourDashboard}:{PortNumber}" --role "reader" \ --scopes /subscriptions/{SubID}/resourceGroups/{ResourceGroupName}
자세한 내용은 Azure CLI을 사용하여 Azure 서비스 주체 만들기를 참조하세요.
명령은 다음과 같이 결과 집합을 반환합니다. 세 가지 속성 값 appID, 암호 및 테넌트를 복사합니다.
{ "appId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "displayName": "{UrlToYourDashboard}:{PortNumber}", "name": "https://{UrlToYourDashboard}:{PortNumber}", "password": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "tenant": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" }
구독 목록을 가져옵니다.
az account list --output table
해당 구독 ID를 복사합니다.
뷰어 역할에 서비스 주체 추가
서비스 주체를 만들었으므로, 이제 Azure Data Explorer 데이터베이스에서 뷰어 역할에 추가합니다. 관리 명령을 사용하여 Azure Portal의 사용 권한 또는 쿼리에서 이 작업을 수행할 수 있습니다.
Azure Portal - 사용 권한
Azure Portal에서 Azure Data Explorer 클러스터로 이동합니다.
개요 섹션에서 StormEvents 샘플 데이터를 사용하여 데이터베이스를 선택합니다.
권한을 선택한 다음, 추가를 선택합니다.
데이터베이스 권한 추가에서 뷰어 역할을 선택한 다음, 주체 선택을 선택합니다.
직접 만든 서비스 주체를 검색합니다. 주체를 선택한 다음, 선택을 클릭합니다.
저장을 선택합니다.
관리 명령 - 쿼리
Azure Portal에서 Azure Data Explorer 클러스터로 이동한 다음, 쿼리를 선택합니다.
쿼리 창에서 다음 명령을 실행합니다. Azure Portal 또는 CLI에서 애플리케이션 ID 및 테넌트 ID를 사용합니다.
.add database {TestDatabase} viewers ('aadapp={ApplicationID};{TenantID}')
명령은 다음과 같이 결과 집합을 반환합니다. 이 예제에서 첫 번째 행은 데이터베이스에서 기존 사용자를 사용되며 두 번째 행은 방금 추가된 서비스 주체를 위해 사용됩니다.
Redash에서 Azure Data Explorer 커넥터 만들기
Redash에 로그인합니다. 시작하기를 선택하여 계정을 만듭니다.
시작하기에서 데이터 원본 연결을 선택합니다.
새 데이터 원본 만들기 창에서 Azure Data Explorer(Kusto)를 선택한 다음 만들기를 선택합니다.
Azure Data Explorer(Kusto) 창에서 다음 양식을 작성하고 만들기를 선택합니다.
설정 창에서 저장 및 연결 테스트를 선택하여 Azure Data Explorer(Kusto) 데이터 원본 연결을 테스트합니다.
Redash에서 쿼리 만들기
Redash의 왼쪽 상단에서 만들기>쿼리를 선택합니다. 새 쿼리를 클릭하고 쿼리 이름을 바꿉니다.
상단 편집 창에 쿼리를 입력하고 저장 및 실행을 선택합니다. 나중에 사용할 수 있도록 쿼리를 게시하려면 게시를 선택합니다.
왼쪽 창의 드롭다운 메뉴에서 데이터 원본 연결 이름(이 흐름에서는 Github 커넥터)과 선택한 데이터베이스의 테이블을 볼 수 있습니다.
하단 중앙 창에서 쿼리 결과를 봅니다. 새 시각화 단추를 선택하여 쿼리에 사용할 시각화를 만듭니다.
시각화 화면에서 시각화 유형과 함께 X 열 및 Y 열과 같은 관련 필드를 선택합니다. 시각화를 저장합니다.
매개 변수를 사용하여 쿼리 만들기
만들기>쿼리를 사용하여 새 쿼리를 만듭니다. {{}} 중괄호를 사용하여 매개 변수를 추가합니다. {{}}를 선택하여 매개 변수 추가 창을 엽니다. 설정 아이콘을 선택하여 기존 매개 변수의 특성을 수정하고 <parameter_name> 창을 열 수도 있습니다.
매개 변수의 이름을 지정합니다. 드롭다운 메뉴에서 유형: 쿼리 기반 드롭다운 목록을 선택합니다. 확인을 선택합니다.
참고
쿼리는 여러 값을 사용하므로 다음 구문
| where Type in ((split('{{Type}}', ',')))
을 포함해야 합니다. 자세한 내용은 in 연산자를 참조하세요. 그 결과 redash 앱의 여러 쿼리 매개 변수 옵션이 됩니다.
Redash에서 대시보드 만들기
대시보드를 만들려면 만들기>대시보드를 사용합니다. 또는 기존 대시보드, Dashboards> 목록에서 대시보드 선택을 선택합니다.
새 대시보드 창에서 대시보드의 이름을 지정하고 저장을 선택합니다. <Dashboard_name> 창에서 위젯 추가를 선택하여 새 위젯을 만듭니다.
위젯 추가 창에서 쿼리 이름, 시각화 선택 및 매개 변수를 선택합니다. 대시보드에 추가를 선택합니다.
편집 완료를 선택하여 대시보드 만들기를 완료합니다.
대시보드 편집 모드에서 대시보드 수준 필터 사용을 선택하여 이전에 정의한 유형 매개 변수를 사용합니다.