그래프 의미 체계를 사용하면 데이터를 상호 연결된 네트워크로 모델링하고 쿼리할 수 있습니다. 그래프는 노드(엔터티) 및 해당 노드를 연결하는 에지(관계)로 구성됩니다. 노드와 에지 모두 속성을 포함할 수 있으며 복잡한 관계에 대한 풍부한 데이터 모델을 만듭니다.
그래프는 다대다 관계, 계층 구조 또는 네트워크 연결(예: 소셜 네트워크, 권장 시스템, 연결된 자산 및 지식 그래프)을 사용하여 복잡한 데이터를 나타내는 데 탁월합니다. 테이블 간에 데이터를 연결하기 위해 인덱스 및 조인이 필요한 관계형 데이터베이스와 달리 그래프는 노드 간에 직접 인접성을 사용하여 빠르고 직관적인 관계 통과를 가능하게 합니다.
다음 그래프는 사이버 보안 공격 경로 시나리오를 보여 줍니다. 노드는 외부 원본, 사용자 및 중요 자산과 같은 엔터티를 나타내고 에지는 잠재적인 공격 순서를 형성하는 작업 또는 관계를 나타냅니다.
그래프 쿼리는 그래프 구조를 활용하여 경로, 패턴, 최단 거리, 커뮤니티 및 중앙 측정값 찾기와 같은 정교한 작업을 수행합니다. 이러한 기능을 통해 그래프는 소셜 네트워크, 공급망, IoT 디바이스 네트워크, 디지털 트윈, 권장 시스템 및 조직 구조를 비롯한 도메인 간 관계, 상호 작용, 종속성 및 흐름을 모델링하는 데 강력한 기능을 제공합니다.
다음 그래프는 노드가 공급업체, 제조업체 및 배포자를 나타내고 에지가 공급 관계를 나타내는 공급망 시나리오를 보여 줍니다. 이 예제는 그래프가 다양한 비즈니스 컨텍스트 내의 흐름 및 종속성을 어떻게 모델링하는지를 보여 줍니다.
그래프 의미 체계를 사용하는 이유는 무엇인가요?
그래프 기능은 정교한 관계 모델링을 추가하면서 기존 데이터 투자를 활용하여 상당한 이점을 제공합니다.
- 데이터 마이그레이션이 필요하지 않음 - 중복 없이 현재 데이터에서 직접 그래프 모델을 빌드합니다.
- 비용 효율적인 솔루션 - 전용 그래프 데이터베이스의 복잡성과 비용을 제거합니다.
- 임시 분석 지원 - 시계열 데이터베이스로서 시간이 지남에 따라 그래프가 어떻게 진화하는지 자연스럽게 분석할 수 있습니다.
- 이벤트 기반 모델링 - 강력한 이벤트 처리 기능에 맞춰 관계 이벤트의 시퀀스로 그래프를 모델링합니다.
- 원활한 KQL 통합 - 그래프 연산자는 모든 기존 KQL 기능과 함께 작동하며 전체 IntelliSense를 지원합니다.
이 방법은 성능, 규모 및 친숙한 인터페이스를 유지하면서 엔터프라이즈급 관계 모델링 을 제공합니다. 조직은 추가 인프라 투자 없이 공급망 및 조직 계층에서 IoT 디바이스 네트워크 및 소셜 관계에 이르기까지 도메인 간에 복잡한 상호 연결된 데이터를 분석할 수 있습니다.
임시 그래프 만들기 방법
임시 그래프는 연산자를 사용하여 make-graph 동적으로 생성됩니다. 이러한 그래프는 쿼리 실행 중에 메모리에 존재하며 쿼리가 완료되면 자동으로 삭제됩니다.
주요 특징
- 동적 만들기 - 전체 구조가 메모리에 있는 KQL 쿼리를 사용하여 테이블 형식 데이터에서 빌드됨
- 즉시 사용 가능 - 전처리 또는 설정 요구 사항 없음
- 메모리 제약 조건 - 그래프 크기는 클러스터 노드에서 사용 가능한 메모리에 의해 제한됩니다.
- 성능 요소 - 그래프 토폴로지 및 속성 크기로 메모리 요구 사항 결정
이 방법은 즉각적인 분석이 필요한 중소 규모의 데이터 세트에 최적입니다.
임시 그래프에 대한 사용 사례
임시 그래프는 다음과 같은 여러 시나리오에서 뛰어난 성과를 거두었습니다.
- 임시 분석 - 빠른 패턴 검사가 필요한 일회성 조사
- 예비 데이터 분석 - 가설 테스트 및 분석 방법 유효성 검사
- 중소형 데이터 세트 - 최근 이벤트 또는 포커스가 있는 데이터 하위 집합의 실시간 분석
- 빠른 프로토타입 작성 - 영구 모델을 구현하기 전에 그래프 패턴 테스트
- 동적 데이터 분석 - 영구 스토리지를 정당화하지 않는 자주 변경되는 데이터
일반적인 애플리케이션에는 실시간 IoT 모니터링, 공급망 관계 분석, 고객 경험 매핑 및 엔터티 관계의 즉각적인 시각화가 필요한 시나리오가 포함됩니다.
영구 그래프 만들기 방법
영구 그래프는 그래프 모델 및 그래프 스냅샷 을 사용하여 조직 네트워크, 공급망, IoT 에코시스템, 디지털 트윈 및 기타 상호 연결된 데이터 도메인을 나타내는 대규모의 복잡한 그래프에 대한 강력한 솔루션을 제공합니다.
영구 그래프의 주요 특징
- 영구 스토리지 - 그래프 모델 및 스냅샷은 내구성 및 일관성을 위해 데이터베이스 메타데이터에 저장됩니다.
- 확장성 - 엔터프라이즈 규모 분석 기능을 사용하여 메모리 제한을 초과하는 그래프 처리
- 재사용성 - 여러 사용자가 다시 빌드하지 않고도 동일한 구조를 쿼리하여 공동 작업을 분석할 수 있습니다.
- 성능 최적화 - 반복되는 쿼리에 대한 그래프 생성 대기 시간 제거
- 버전 제어 - 기록 분석을 위해 여러 스냅샷이 서로 다른 시점의 그래프를 나타냅니다.
- 스키마 지원 - 다양한 엔터티 형식 및 해당 속성에 대한 구조적 정의
스키마 기능은 정적 레이블(그래프 모델에 미리 정의됨)과 동적 레이블(데이터에서 런타임에 생성됨)을 모두 지원하여 다양한 엔터티 형식을 사용하는 복잡한 환경에 유연성을 제공합니다.
영구 그래프에 대한 사용 사례
영구 그래프는 다음을 위해 필수적입니다.
- 엔터프라이즈 분석 - 복잡한 네트워크에서 연속 모니터링 워크플로
- 대규모 데이터 분석 - 수백만 개의 노드와 관계가 있는 엔터프라이즈 규모 그래프
- 공동 작업 분석 - 공유 그래프 구조를 사용하는 여러 팀
- 프로덕션 워크플로 - 일관된 그래프 액세스가 필요한 자동화된 시스템
- 기록 비교 - 그래프 진화 및 변경 내용에 대한 시간 기반 분석
예: 디지털 트윈 영구 그래프
디지털 트윈 및 IoT 시나리오에서 영구 그래프는 시간 경과에 따른 디바이스 관계, 장비 종속성 및 시스템 진화에 대한 정기적인 분석을 지원합니다. 기록 분석을 사용하면 여러 기간에 걸쳐 시스템 상태를 비교하고, 자산의 진화를 추적하고, 장기적인 추세 분석을 수행할 수 있습니다.
예: IoT 및 디지털 트윈 영구 그래프
IoT 및 디지털 트윈 애플리케이션은 분산 시스템에서 물리적 디바이스와 해당 가상 표현 간의 복잡한 관계를 모델링할 때 영구 그래프를 통해 상당한 이점을 얻을 수 있습니다. 이러한 그래프를 통해 조직은 다음을 수행할 수 있습니다.
- IoT 배포 및 연결된 자산의 포괄적인 모델 만들기
- 실시간 모니터링, 예측 유지 관리 및 성능 최적화 지원
- 장비 종속성 분석 및 잠재적 오류 지점 식별
- 물리적 및 논리적 토폴로지 이해를 통해 센서 배치 최적화
- 시간 경과에 따른 디바이스 구성, 통신 및 성능 특성 추적
- 통신 패턴 변칙 검색 및 스마트 환경 진화 시각화
- 물리적 인프라 변경을 구현하기 전에 운영 조건 시뮬레이션
이 영구 접근 방식은 복잡한 IoT 에코시스템을 대규모로 관리하는 데 매우 중요합니다.
그래프 쿼리 기능
make-graph 또는 스냅샷을 통해 그래프가 설정되면, 전체 KQL 그래프 연산자 제품군을 활용하여 포괄적인 분석을 수행할 수 있습니다.
핵심 연산자:
-
graph-match- 복잡한 관계 시퀀스를 식별하기 위한 정교한 패턴 일치 및 순회 작업을 사용하도록 설정합니다. -
graph-shortest-paths- 엔터티 간의 최적의 경로를 찾아 연결의 우선 순위를 지정하고 중요한 관계를 식별하는 데 도움이 됩니다. -
graph-to-table- 그래프 분석 결과를 기존 시스템과 통합하기 위한 테이블 형식으로 변환
고급 분석 기능:
- 시간 기반 분석 - 시간이 지남에 따라 관계와 패턴이 어떻게 진화하는지 검사합니다.
- 지리 공간적 통합 - 지리적 패턴 분석을 위한 위치 기반 인텔리전스와 그래프 데이터 결합
- 기계 학습 통합 - 엔터티 클러스터링, 패턴 분류 및 변칙 검색을 위한 알고리즘 적용
이러한 기능은 고객 경험 분석, 제품 권장 사항 시스템, IoT 네트워크, 디지털 트윈 및 지식 그래프를 비롯한 다양한 사용 사례를 지원합니다.
올바른 방법 선택
다음 의사 결정 트리는 특정 요구 사항 및 제약 조건에 따라 가장 적절한 그래프 만들기 방법을 선택하는 데 도움이 됩니다.
의사 결정 트리: 일시적 그래프 및 영구 그래프
임시 그래프를 사용하는 경우
다음을 위해 임시 그래프를 선택합니다.
- 1,000만 노드 및 에지 미만의 그래프 크기 (최적의 성능을 위해)
- 최소한의 공동 작업 요구 사항을 사용하여 단일 사용자 또는 소규모 팀 분석
- 즉각적인 결과가 필요한 일회성 또는 예비 조사
- 현재 상태 정보가 필요한 실시간 데이터 분석
- 그래프 패턴 및 쿼리 논리의 신속한 프로토타입 생성 및 테스트
임시 그래프는 더 큰 데이터 세트를 처리할 수 있지만 모든 쿼리에 대해 그래프를 다시 구성해야 하므로 쿼리 실행 시간이 증가합니다. 큰 데이터 세트로 작업할 때 성능의 균형을 고려하십시오.
영구 그래프를 사용하는 경우
다음을 위해 영구 그래프를 선택합니다.
- 그래프 크기가 천만 노드와 에지를 초과하면 분산 스토리지가 유익합니다
- 공동 분석을 위해 공유 액세스가 필요한 여러 팀
- 건설 대기 시간이 생산성에 영향을 주는 안정적인 데이터 세트에 대한 반복 분석
- 일관되고 신뢰할 수 있는 그래프 액세스가 필요한 프로덕션 워크플로 통합
- 시간 경과에 따른 변경 내용 추적을 위한 기록 비교 요구 사항
- 쿼리 성능에 영향을 주는 메모리 용량 제한 사항
- 팀 및 표준 시간대 간 공동 조사 워크플로
영구 그래프는 엔터프라이즈 규모 데이터를 사용하거나 메모리 제한으로 성능에 영향을 줄 때 필수적입니다.
성능 고려 사항
메모리 사용량
- 일시적인 그래프 - 단일 클러스터 노드 메모리로 제한, 사용 가능한 RAM 내의 데이터 세트에 대한 사용 제한
- 영구 그래프 - 엔터프라이즈 규모 데이터에 분산 스토리지 및 최적화된 액세스 패턴 활용
쿼리 대기 시간
- 임시 그래프 - 큰 데이터 세트 또는 외부 데이터 원본에 대한 지연이 증가하는 각 쿼리의 생성 시간을 포함합니다.
- 영구 그래프 - 미리 빌드된 스냅샷을 통해 생성 대기 시간을 제거하여 신속한 분석 사용
클러스터 간 쿼리 또는 SQL 및 CosmosDB에 대한 외부 테이블과 같은 외부 데이터 원본 종속성은 각 쿼리가 외부 응답을 기다려야 하기 때문에 일시적인 그래프 생성 시간에 큰 영향을 줄 수 있습니다.
데이터 신선도
- 일시적인 그래프 - 항상 현재 데이터 상태를 반영하며 실시간 분석에 적합합니다.
- 영구 그래프 - 스냅샷 생성 시 데이터를 반영하여 공동 분석을 위한 일관성을 제공하지만 정기적인 새로 고침이 필요
KQL 에코시스템과 통합
그래프 의미 체계는 KQL의 광범위한 기능과 원활하게 통합됩니다.
- 시계열 분석 - 시간에 따른 관계 진화 추적
- 지리 공간적 함수 - 위치 기반 패턴 및 지리적 변칙 분석
- 기계 학습 연산자 - 패턴 검색, 동작 분류 및 변칙 식별
- 스칼라 및 테이블 형식 연산자 - 복잡한 변환, 집계 및 데이터 보강 사용
이러한 통합을 통해 공급망 진화 추적, 지리적 자산 배포 분석, 클러스터링 알고리즘을 통한 커뮤니티 검색, 기존 로그 분석 및 외부 인텔리전스와의 그래프 인사이트 상관 관계를 비롯한 정교한 워크플로를 수행할 수 있습니다.