눈꽃 데이터 모니터링 설정
6632 단어 tutorialopensourcedatabasepython
데이터의 질과 신뢰성은 여전히 현재 데이터 조직의 골치 아픈 문제이다.Monosi은 팀이 직면한 문제를 해결하기 위한 것입니다.
Monosi는 데이터 팀에 사용되는 open source data observability과 모니터링 플랫폼(Monosi Github 참조)이다.데이터 저장소에 신속하게 모니터를 설치하여 데이터 품질 문제를 검사하고 이상이 발견되면 경보를 보내는 데 사용된다.
본고는 10분 이내에 Monosi 모니터링 데이터 창고를 사용하는 방법을 소개할 것입니다.
예비 지식
본 강좌에서 우리는 Snowflake을 데이터 창고로 사용할 것이다.
만약 당신이 눈꽃 계좌가 없다면, create one을 쉽게 찾을 수 있습니다.계속해서 계정 생성 - Standard Edition과 선호하는 클라우드 공급자를 선택합니다(이 예에서는 AWS-US West를 사용합니다).
등록하면 로그인할 계정에 대한 세부 정보가 들어 있는 e-메일을 받게 됩니다.계정 세부 정보가 준비되면 Monosi를 사용할 수 있습니다.
단결정 실리콘을 설치하다.
모노시는 파이썬백으로 pypi을 통해 나눠준다.
참고: Monosi는 Python 3.6 이상에서만 호환됩니다.
설치하려면 터미널을 열고 다음을 실행하십시오.
pip install monosi
다음 명령을 실행하여 설치되었는지 확인합니다.monosi --version
데이터 소스 구성
Monosi를 설치한 후에 우리는 데이터 원본을 설정해서 감시해야 한다.Monosi는
~/.monosi/workspaces.yml
파일에서 연결 세부 사항을 읽으므로 다음과 같이 만듭니다.mkdir ~/.monosi
touch ~/.monosi/workspaces.yml
선택한 편집기에서 workspaces.yml
파일을 편집하고 정보를 입력합니다(구체적으로 <user-name>
, <password>
, <account-name>
).이것은 파일의 모양입니다.default:
sources:
default:
type: snowflake
user: <user-name>
password: <password>
account: <account-name>
warehouse: COMPUTE_WH
database: SNOWFLAKE_SAMPLE_DATA
본 강좌에서 우리는 SNOWFLAKE_SAMPLE_DATA
데이터베이스를 사용할 것이다.이 데이터베이스는 Snowflake에서 제공합니다.설정
workspaces.yml
파일 here에 대한 자세한 내용을 확인할 수 있습니다.Monosi 프로젝트 만들기
Monosi 프로젝트를 저장할 디렉토리로 이동하여 다음 명령을 실행하여 프로젝트 저장소를 만듭니다.
monosi init
이 디렉터리에 monosi-repo
이라는 폴더가 보일 것입니다. (필요하면 이름을 바꿀 수 있습니다.)다음 명령을 실행하여 폴더를 탐색합니다.cd monosi-repo
monosi-repo
디렉터리에서 monosi_project.yml
파일을 볼 수 있습니다.이 파일은 사용할 연결, 모니터 경로 및 기타 메타데이터를 구성합니다.
monosi_project.yml
파일 설정에 대한 자세한 내용은 here 을 참조하십시오.이 강좌에서 우리는 이 파일을 편집할 필요가 없다.
모니터 생성
Monosi는 자동으로
monitors
디렉토리에 monosi-repo
이라는 폴더를 생성합니다.이 폴더에는 구문을 표시하기 위한 작업 방법을 보여 주는 샘플 사용자 정의 SQL 모니터가 정의되어 있습니다.앞에서 말한 바와 같이 Snowflake는
SNOWFLAKE_SAMPLE_DATA
데이터베이스에 몇 가지 예시 데이터를 제공했다.orders 테이블에 모니터를 만들 수 있습니다.touch ./monitors/orders.yml
선택한 편집기에서 orders.yml
파일을 편집하고 다음을 붙여넣습니다.monosi:
monitors:
- table: SNOWFLAKE_SAMPLE_DATA.TPCH_SF100.orders
timestamp_field: o_orderdate
type: table
days_ago: -10000
이것은 제공된orders표에 모니터 as 코드를 만들 것입니다.그것은 table health metrics을 모니터링한다.모니터 실행
monosi-repo
디렉토리에서 다음 명령을 실행하여 모니터를 시작합니다.monosi run
몇 초 정도 소요됩니다.결과 출력은 다음과 같아야 합니다.🎉 축하합니다. 당신의 첫 번째 Monosi 모니터를 방금 실행했습니다!실행 중인 출력에서 예시 데이터가 몇 개의 Monosi 모니터에서 검출된 이상을 보아야 합니다.
스케줄링 모니터
v0.0.3
의 발표에 따라 모니터 스케줄링을 지원하는 사용자 인터페이스를 추가했습니다.UI here의 비디오 연습도 만들었습니다.Monosi는 프로그램을 실행하기 위해 docker 이미지를 제공합니다.다음 명령을 실행하여 docker가 설치되어 있는지 확인하고 사용할 준비가 되어 있는지 확인합니다.
docker ps
docker를 사용하여 Monosi UI를 시작하고 실행하려면 다음 명령을 실행합니다.docker run -p 3000:3000 monosi/monosi
http://localhost:3000
으로 이동하면 Monosi 사용자 인터페이스가 표시됩니다.http://localhost:3000/settings/sources
으로 이동하여 UI에서 눈꽃 계정에 대한 연결을 설정합니다.연결을 설정한 후
http://localhost:3000/monitors
으로 이동하고create 모니터(모니터 만들기) 단추를 눌러 UI에 모니터를 만듭니다.양식에 다음 정보를 입력합니다.이름:
Orders Monitor
720
분마다 검사모니터 유형:
Table Health
데이터 출처: <Your Snowflake Datasource Name>
표: SNOWFLAKE_SAMPLE_DATA.TPCH_SF100.orders
타임스탬프 필드: o_orderdate
save를 누르면 새 모니터가 모니터 테이블에 표시됩니다.🎉 축하합니다. 방금 데이터 모니터를 설치했습니다!이 절차는 모니터를 삭제할 때까지 기한 없이 실행됩니다.감지된 예외 경고를 보려면
http://localhost:3000/settings/integrations
에서 느슨한 연결을 설정하십시오.마무리
Snowflake에서 제공한 데이터를 사용하여 Monosi profiler과 custom SQL monitors을 사용하여 자신의 데이터로 확장할 수 있습니다.
질문이 있으면 Slack 커뮤니티에 가입하거나 저장소에서 Github으로 문의하십시오.
Reference
이 문제에 관하여(눈꽃 데이터 모니터링 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/iporollo/setting-up-data-monitoring-for-snowflake-3b5p텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)