본문으로 건너뛰기
워크숍 개요
5/8번째 챕터
15분

한 동에서 바깥 지역까지 확장하기

그래프 탐색기에서 환자와 핫스팟을 펼치고 동에서 시·도까지 이어지는 경로를 확인합니다.

이번 단계의 질문

중계4동에서 관찰을 시작하면 관련 환자와 상위 행정 구역까지 어떻게 확장할까요?

왜 지금 필요한가

한 지역의 집계값은 결과만 보여 줍니다. 그래프 경로를 보면 그 값에 어떤 환자와 장소, 지역이 관련있는지 추적할 수 있습니다.

직접 해보기

왼쪽 그래프 탐색기를 열고 컬렉션에서 코로나19 데이터 모음(covid19)을 선택합니다.

그래프 탐색기에서 COVID-19 컬렉션을 선택한 화면
이번 시나리오의 엔티티와 관계만 보이도록 컬렉션을 선택합니다.

먼저 엔티티 목록에서 환자(patient)를 선택해 데이터가 적재됐는지 확인한 뒤 쿼리 콘솔을 엽니다.

환자 노드와 연결 관계를 펼친 그래프
쿼리 전에 환자 노드와 관계가 보이는지 확인합니다.

다음 쿼리는 환자에서 핫스팟, 동, 시·군·구, 시·도로 이어지는 전체 경로를 반환합니다.

MATCH path = (p:patient)-[:involved_in]->(h:hotspot)-[:within]->(d:dong)
             -[:belongs_to]->(sg:sigungu)-[:belongs_to_sido]->(s:sido)
RETURN path
LIMIT 25

환자에서 시작해 방문한 핫스팟과 해당 동을 거쳐 시·군·구와 시·도까지 이어지는 경로를 한 번에 펼칩니다. RETURN path는 경로에 포함된 노드뿐 아니라 연결선도 함께 반환합니다.

환자에서 시도까지 이어지는 5홉 경로의 3D 그래프 결과
경로 자체를 반환해야 노드와 연결선이 함께 표시됩니다.

결과: 환자와 핫스팟이 어느 동에 속하고, 그 동이 다시 어느 시·군·구와 시·도에 포함되는지 하나의 연결 경로로 보입니다. 이 결과로 관찰 내용을 전달할 상위 행정 구역을 찾을 수 있습니다.

이어서 중계4동과 연결된 핫스팟 및 환자만 펼칩니다.

MATCH path = (d:dong {dong: '중계4동'})
             <-[:within]-(h:hotspot)<-[:involved_in]-(p:patient)
RETURN path
LIMIT 50

이번에는 시작점을 중계4동으로 제한하고, 그 동에 속한 핫스팟과 연결된 환자만 역방향으로 따라갑니다. 첫 번째 쿼리보다 범위를 좁혀 한 지역 안의 동선 교차 구조를 확인하는 쿼리입니다.

중계4동 핫스팟과 환자의 3D 관계 그래프
같은 동의 핫스팟을 공유하는 환자 관계를 확인합니다.

결과: 중계4동 안에서 어떤 핫스팟에 환자가 여러 명 연결되는지, 한 환자가 여러 핫스팟을 거치는지 확인할 수 있습니다. 연결이 모이는 장소부터 원본 발생 시간과 위치를 추가로 점검할 수 있습니다.

두 쿼리 모두 그래프 데이터가 없습니다가 아니라 노드와 연결선을 표시해야 합니다. 연결선 없이 원만 보인다면 RETURN p, h, d...가 아니라 예시처럼 RETURN path를 사용했는지 확인하세요.

결과를 읽어 봅니다

첫 결과는 한 환자의 위치 맥락을 광역 단위까지 추적합니다. 두 번째 결과는 중계4동이라는 공통 장소에서 어떤 환자 경로가 교차했는지 좁혀 봅니다. 연결은 인과관계가 아니라 데이터에 기록된 관계임을 기억하세요.

첫 번째 그래프: 넓게 보고 보고 단위를 찾습니다

patient → hotspot → dong → sigungu → sido 경로는 환자 한 명을 상위 행정 구역까지 연결합니다. 한 동에서 발견한 관찰을 어느 시·군·구 담당자와 공유해야 하는지, 같은 상위 지역에 속한 다른 동과 비교할 필요가 있는지 판단할 때 활용할 수 있습니다.

두 번째 그래프: 한 지역에서 연결 밀도를 봅니다

중계4동을 시작점으로 바꾸면 해당 동의 핫스팟과 환자만 남습니다. 이때 먼저 볼 것은 노드의 크기보다 한 핫스팟에 여러 환자가 연결되는지, 한 환자가 여러 핫스팟에 연결되는지입니다.

그래프 모양다음 분석 질문
핫스팟 하나에 환자가 여럿 연결됨같은 시간대에 실제로 겹쳤는가?
환자 하나가 핫스팟 여러 곳에 연결됨이동 경로가 인접 지역으로 이어지는가?
연결이 한 장소에 집중됨시설 유형이나 운영 시간에 공통점이 있는가?
연결이 거의 없음데이터 적재 누락인지 실제 분산인지 확인했는가?

그래프는 “무슨 일이 일어났는지”를 확정하는 화면이 아니라, 어떤 행과 시간을 다시 확인할지 정하는 탐색 화면입니다. 의심스러운 연결을 찾은 뒤 원본 데이터셋 핫스팟 분석 결과(hotspot_result)의 cross_start_timecross_end_time을 확인하는 식으로 분석을 이어갑니다.

다음 판단

그래프는 중계4동에서 핫스팟과 환자가 어떻게 연결되는지 보여 줍니다. 그러나 이 지역을 먼저 볼지 다른 지역을 먼저 볼지는 같은 기준으로 비교해야 합니다. 마지막 챕터에서 중계4동, 성남동, 중계본동을 한 표에 모아 확인 순서를 정합니다.