KR101672097B1 - 유량 스트림 데이터의 실시간 수집 및 처리 방법 - Google Patents

유량 스트림 데이터의 실시간 수집 및 처리 방법 Download PDF

Info

Publication number
KR101672097B1
KR101672097B1 KR1020140134772A KR20140134772A KR101672097B1 KR 101672097 B1 KR101672097 B1 KR 101672097B1 KR 1020140134772 A KR1020140134772 A KR 1020140134772A KR 20140134772 A KR20140134772 A KR 20140134772A KR 101672097 B1 KR101672097 B1 KR 101672097B1
Authority
KR
South Korea
Prior art keywords
water
stream data
event
processing
flow
Prior art date
Application number
KR1020140134772A
Other languages
English (en)
Other versions
KR20160041222A (ko
Inventor
이규철
임형준
백문기
조우승
Original Assignee
충남대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 충남대학교산학협력단 filed Critical 충남대학교산학협력단
Priority to KR1020140134772A priority Critical patent/KR101672097B1/ko
Publication of KR20160041222A publication Critical patent/KR20160041222A/ko
Application granted granted Critical
Publication of KR101672097B1 publication Critical patent/KR101672097B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C17/00Arrangements for transmitting signals characterised by the use of a wireless electrical link
    • G08C17/02Arrangements for transmitting signals characterised by the use of a wireless electrical link using a radio link
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/06Energy or water supply

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Economics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Water Supply & Treatment (AREA)
  • Public Health (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Examining Or Testing Airtightness (AREA)

Abstract

본 발명은 유량 스트림 데이터의 실시간 수집 및 처리 방법에 관한 것으로서, 수자원 관제 센터에서 수도 블록 시스템으로 구획된 수용가(水用家)의 유량 스트림 데이터를 스마트 수도 계량기 및 수자원 데이터 수집기를 통해 수집하는 유량 스트림 데이터 수집 단계; 상기 유량 스트림 데이터를 처리하기 위한 수도 이벤트 패턴을 정의하여 수자원 관제 센터에 등록하는 이벤트 패턴 등록 단계; 및 상기 등록된 이벤트 패턴에 기반하여 실시간으로 수집되는 유량 스트림 데이터를 분석하여 수도 이벤트를 실시간 탐지 및 처리하는 대응 단계; 를 포함하며, 상기 대응 단계는 수자원 관제 센터에 포함된 CEP(Complex Event Processing) 엔진에서 슬라이딩 윈도우(Sliding Window)를 이용하여 등록된 이벤트 패턴과 수집되는 유량 스트림 데이터를 매칭 및 처리하는 단계인 것을 특징으로 한다.
이에 의해, 수도 블록 시스템에서 발생되는 각종 유량 스트림 데이터를 CEP 기법을 이용하여 실시간 복합 처리함으로써, 최대 수량 탐지 및 누수 블록의 탐지가 가능함에 따라 수도관망 시스템의 안정성이 증대되고 효율적 운용이 구현될 수 있다.

Description

유량 스트림 데이터의 실시간 수집 및 처리 방법{Real-Time Collection and Processing Method of Stream Water Flow Data}
본 발명은 유량 스트림 데이터의 실시간 수집 및 처리 방법에 관한 것이다.
스마트 워터 그리드는 지속적이고 안정적인 용수 공급을 위해 용수의 생산 및 공급 망에 정보통신기술(ICT; Information & Communication)을 접목한 시스템이다. 스마트 워터 그리드를 통해 수자원 관리, 용수의 생산, 공급, 분배 등 많은 분야에 걸쳐 실시간으로 탐지하고 대응하여 지능형 물관리를 가능하게 한다.
스마트 워터 그리드는 효율적인 물관리를 위해 수도 관망구조를 수도 블록 시스템으로 구성을 하였다. 수도 블록 시스템은 상수도 관망을 세분화하여 대, 중, 소 블록으로 계층화한 후 유량, 수압을 실시간으로 감시하고 유수율을 분석하는 시스템으로, 2012년까지 국내에는 상수도 관망의 유수율 관리를 위해 수도 블록 시스템이 약 70%이상 구축되었다.
수도 블록 시스템에는 실시간 수자원 데이터 수집을 위해 원격검침시스템(AMR; Automatic Meter Reading)이 구축된다. 원격검침시스템은 스마트 수도 계량기를 통해 검출된 데이터를 수자원 데이터 수집기로 전송하며, 수집기에서 수집된 데이터는 유, 무선 통신망을 사용하여 수자원 관제 센터로 전송되어 수도망 모니터링이 구현된다.
여기서, 스마트 수도 계량기는 내부의 센서를 통해서 지속적으로 유량을 측정하여, 유량 데이터를 생성하는 장치이다. 유량 데이터는 센서를 통해 지속적으로 측정하기 때문에 스트림 데이터의 성질을 가진다. 유량 스트림 데이터는 시간 순서가 중요한 데이터이기 때문에 실시간 처리가 필요하다. 또한 수도 블록 시스템 내부에는 500~1500개의 수도 계량기와 소블록의 유량을 측정하기 위한 유량계가 설치되어 있으며, 같은 소블록에 속하는 스마트 수도 계량기와 블록 유량계의 유량 스트림 데이터를 복합 처리하기 위한 기능도 필요하다.
한편, 수도망 모니터링 시스템과 관련된 선행문헌으로는, 대한민국 공개특허공보 제10-2014-0092385호(2014.07.23. 공개)가 있었다.
그러나, 상기 선행문헌의 경우, 센서들로부터 이벤트 데이터를 수신하여 이벤트 조합 규칙에 따라 이벤트 유형을 식별하는 것에 대해 중점을 두고 있을 뿐이다.
본 발명의 목적은, 수도 블록 시스템에서 발생되는 각종 유량 스트림 데이터를 CEP 기법을 이용하여 실시간 복합 처리하기 위한 기술을 제공하는 데 있다.
본 발명은 수자원 관제 센터에서 수도 블록 시스템으로 구획된 수용가(水用家)의 유량 스트림 데이터를 스마트 수도 계량기 및 수자원 데이터 수집기를 통해 수집하는 유량 스트림 데이터 수집 단계; 상기 유량 스트림 데이터를 처리하기 위한 수도 이벤트 패턴을 정의하여 수자원 관제 센터에 등록하는 이벤트 패턴 등록 단계; 및 상기 등록된 이벤트 패턴에 기반하여 실시간으로 수집되는 유량 스트림 데이터를 분석하여 수도 이벤트를 실시간 탐지 및 처리하는 대응 단계; 를 포함하며, 상기 대응 단계는 수자원 관제 센터에 포함된 CEP(Complex Event Processing) 엔진에서 슬라이딩 윈도우(Sliding Window)를 이용하여 등록된 이벤트 패턴과 수집되는 유량 스트림 데이터를 매칭 및 처리하는 단계인 것을 특징으로 하는 유량 스트림 데이터의 실시간 수집 및 처리 방법에 관한 것이다.
여기서, 상기 유량 스트림 데이터 수집 단계는, 상기 수자원 데이터 수집기로부터 전송되는 로 데이터(Raw Data)를 수신하는 단계; 상기 로 데이터를 상기 CEP 엔진에 적용시키기 위한 수도 이벤트 객체로 변환시키는 단계; 및 상기 변환된 수도 이벤트 객체를 상기 CEP 엔진에 전달하는 단계; 로 이루어진다.
여기서, 상기 수도 이벤트 객체는, 수도 블록 시스템에 속하는 스마트 수도 계량기의 고유번호(SN), 단위 블록에 부여되는 고유번호(BN), 계량기의 종류(MS) 및 실시간 측정 유량에 대한 정보를 포함한다.
또한, 상기 이벤트 패턴 등록 단계는, 수집 및 대응하고자 하는 수도 이벤트 패턴을 정의하는 단계; 상기 정의된 패턴이 CEP 엔진에서 동작하도록 EPL(Event Processing Language) 문장을 작성하는 단계; 상기 작성된 EPL 문장을 CEP 엔진에 등록하는 단계; 로 이루어진다.
한편, 상기 대응 단계는 최대 수량 탐지 단계를 더 포함한다.
여기서, 상기 최대 수량 탐지 단계는, 미리 설정된 시간 동안 수집되는 유량 스트림 데이터를 슬라이딩 윈도우 상에 보관하고 유량 스트림 데이터의 계량기 고유번호(SN) 속성을 이용하여 각 계량기 고유번호 별 유량 합계를 계산하는 집계 단계; 상기 집계 단계에서 계산된 계량기 별 유량 합계가 과부하유량을 초과하는 계량기 고유번호를 탐지하는 필터링 단계; 및 초과 계량기에 대한 정보를 출력시키는 보고 단계; 로 이루어진다.
또한, 상기 대응 단계는 블록 누수 탐지 단계를 더 포함한다.
여기서, 상기 블록 누수 탐지 단계는, 유량 스트림 데이터를 수신하는 수신 단계; 단위 블록에 부여되는 고유번호(BN) 및 계량기의 종류(MS) 속성을 이용하여 단위 블록으로 유입되는 공급 유량과 해당 단위 블록을 이루는 각 수용가로부터 배출되는 사용 유량을 슬라이딩 윈도우에 분할하여 보관하는 분할 단계; 상기 각 수용가의 사용 유량의 합을 계산하는 집계 단계; 상기 공급 유량에 대한 슬라이딩 윈도우와 사용 유량의 합에 대한 슬라이딩 윈도우를 조인(Join)하여 공급 유량과 사용 유량의 합을 비교하는 조인 단계; 공급 유량과 사용 유량의 합에 대한 차이가 0 이상인 단위 블록 고유번호를 탐지하는 필터링 단계; 탐지된 단위 블록에 대한 정보를 출력시키는 보고 단계; 및 보고된 단위 블록에 대한 유량 스트림 데이터를 슬라이딩 윈도우에서 삭제하는 삭제 단계; 로 이루어진다.
본 발명에 의해, 수도 블록 시스템에서 발생되는 각종 유량 스트림 데이터를 CEP 기법을 이용하여 실시간 복합 처리함으로써, 최대 수량 탐지 및 누수 블록의 탐지가 가능함에 따라 수도관망 시스템의 안정성이 증대되고 효율적 운용이 구현될 수 있다.
도 1 은 수도 블록 시스템의 블록도이며,
도 2 는 수자원 관리 시스템의 블록도이며,
도 3 은 본 발명에 따른 유량 스트림 데이터의 실시간 수집 및 처리 방법에 대한 흐름도이며,
도 4 는 본 발명에 따른 최대 수량 탐지 과정에 대한 흐름도이며,
도 5 는 소블록 내부 구조에 대한 블록도이며,
도 6 은 본 발명에 따른 블록 누수 탐지 과정에 대한 흐름도이다.
이하, 첨부된 도면을 참조하여 본 발명의 구성을 상세히 설명하기로 한다.
이에 앞서, 본 명세서 및 청구범위에 사용된 용어는 사전적인 의미로 한정 해석되어서는 아니되며, 발명자는 자신의 발명을 최선의 방법으로 설명하기 위해 용어의 개념을 적절히 정의할 수 있다는 원칙에 입각하여, 본 발명의 기술적 사상에 부합되는 의미와 개념으로 해석되어야 한다.
따라서, 본 명세서에 기재된 실시예 및 도면에 도시된 구성은 본 발명의 바람직한 실시예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 표현하는 것은 아니므로, 본 출원 시점에 있어 이들을 대체할 수 있는 다양한 균등물과 변형예들이 존재할 수 있음을 이해하여야 한다.
1. 수도 블록 시스템 및 수자원 관리 시스템에 대한 설명
수도 블록 시스템의 개념은, 배수관망을 대/중/소의 단위구역으로 나누어 적정 수압 및 수량이 유지되도록 하고 개별 블록에 대하여 물 사용시 유량을 측정하여 누수방지를 수행하기 위한 단위 블록을 의미한다.
도 1 은 수도 블록 시스템의 블록도이다.
수도 블록 시스템의 구조는 하나의 정수장의 송수계통 급수블록에는 하나의 대블록이 구축되며, 대블록 내의 배수지 별로 중블록이 구축된다. 중블록 내에는 5~10개의 소블록으로 구축되며, 소블록 내에는 500~1500전의 수용가들로 구성된다. 각 블록마다 하나의 유량계를 가지고 있어, 블록 내부에 흐르는 물의 양을 측정한다.
수도 블록 시스템에는 상수도의 체계적인 관리를 위해 원격검침시스템이 구축된다. 블록 내 유량을 계측하고 운영센터로 데이터를 전송하고 블록 별 감시 자료를 통해 송배수관의 최적화와 누수탐지를 하는데 사용된다.
기존의 수도 블록 시스템의 누수는 야간최소유량을 통해서 탐지한다. 야간최소유량을 사용하는 방법은 야간시간 대에서만 탐지가 가능하기 때문에 실시간 처리가 불가능하며, 실시간으로 누수를 탐지하기 위해서는 모든 수용가의 유량 스트림 데이터와 블록에 공급되는 유량 스트림 데이터의 실시간 수집과 복합 처리가 필요하다.
본 발명에서는 수집되는 유량 스트림 데이터의 실시간 복합 처리를 구현하기 위하여 슬라이딩 윈도우를 통한 CEP(Complex Event Processing) 기술을 채택하였다.
여기서, CEP는 지속적으로 발생되는 이벤트 정보를 모니터링 하면서 필요한 이벤트 패턴을 추출할 수 있게 지원하는 기술로, CEP 엔진은 여러 시스템에서 발생되는 이벤트를 지정하고, 추출하고자 하는 이벤트 패턴을 등록하면, 여러가지의 이벤트 스트림을 정제, 합산, 수집, 결합한 후 패턴 매칭을 통해 원하는 이벤트 패턴의 감지하는 기능을 제공한다.
데이터베이스 관리를 위한 표준언어로 SQL이 사용된다면, CEP 처리를 위해서는 EPL(Event Processing Language)을 사용한다. EPL은 실제로 SQL과 유사한 문법 구조를 사용하지만, 아직 표준화된 단계는 아니며 각 CEP 엔진에 따라 약간의 차이가 있다. EPL은 원하는 이벤트 스트림 중에서 원하는 조건에 충족되는 상황을 추출하는 구문을 정의하는데, SQL처럼 Select/From/Where 절을 기본적으로 사용하며, 완성된 문장을 Statement라고 한다.
CEP 엔진은 디스크를 사용하지 않고, 메모리상에서 이벤트를 처리하기 위해 슬라이딩 윈도우(Sliding Window)를 사용한다. 슬라이딩 윈도우는 일정 시간 또는 일정 개수의 이벤트 만을 메모리상에 보관하고, EPL을 사용하여 슬라이딩 윈도우 상에 보관된 이벤트를 대상으로 처리한다.
도 2 는 수자원 관리 시스템의 블록도이다.
스마트 수도 계량기(10)가 설치된 지그비 기반의 원격검침 인프라를 통해 유량 스트림 데이터를 수자원 데이터 수집기(20)로 수집한다. 수자원 데이터 수집기(20)와 수자원 관리 센터(30)는 DDS 통신 미들웨어를 통해 실시간, 양방향으로 통신을 한다. DDS는 OMG의 표준으로 발간/구독 모델을 가지며, 정보의 교환을 위한 데이터 객체로 토픽을 사용한다. 토픽은 데이터 타입, 이름, QoS(Quality of Service)로 구성된다. 그리고 Deadline QoS를 제공하여 실시간성을 보장한다. 수자원 관리 센터(30)에는 DDS 어댑터를 사용하여 DDS 토픽으로 발간된 유량 스트림 데이터를 구독한다. 수집된 데이터는 수자원 관제 센터(30)에서 모니터링을 한다. 이벤트 처리가 필요한 데이터는 CEP 엔진을 사용하여 복합 이벤트를 처리하게 된다. 이후 처리된 이벤트는 이벤트 알람 및 시각화를 통해 관리자가 대응을 하게 된다.
2. 유량 스트림 데이터의 실시간 수집 및 처리 방법에 대한 설명
도 3 은 본 발명에 따른 유량 스트림 데이터의 실시간 수집 및 처리 방법에 대한 흐름도이며, 도 4 는 본 발명에 따른 최대 수량 탐지 과정에 대한 흐름도이며, 도 5 는 소블록 내부 구조에 대한 블록도이며, 도 6 은 본 발명에 따른 블록 누수 탐지 과정에 대한 흐름도이다.
도 3 내지 도 6 을 참조하면, 본 발명에 따른 유량 스트림 데이터의 실시간 수집 및 처리 방법은, 수자원 관제 센터에서 수도 블록 시스템으로 구획된 수용가(水用家)의 유량 스트림 데이터를 스마트 수도 계량기 및 수자원 데이터 수집기를 통해 수집하는 유량 스트림 데이터 수집 단계(S10); 상기 유량 스트림 데이터를 처리하기 위한 수도 이벤트 패턴을 정의하여 수자원 관제 센터에 등록하는 이벤트 패턴 등록 단계(S20); 및 상기 등록된 이벤트 패턴에 기반하여 실시간으로 수집되는 유량 스트림 데이터를 분석하여 수도 이벤트를 실시간 탐지 및 처리하는 대응 단계(S30); 를 포함하며, 상기 대응 단계(S30)는 수자원 관제 센터에 포함된 CEP(Complex Event Processing) 엔진에서 슬라이딩 윈도우(Sliding Window)를 이용하여 등록된 이벤트 패턴과 수집되는 유량 스트림 데이터를 매칭 및 처리하는 단계이다.
먼저 실시간으로 수도 스트림 데이터를 DDS Adapter를 통해 수집(S11)하고, 수집된 유량 스트림 데이터를 CEP엔진에서 사용하기 위해 객체 형태로 변환(S12)하여 CEP엔진에게 전달(S13)한다.(S10)
다음, CEP엔진에서 처리하기 위한 수도 관련 이벤트(S21)를 정의하고, EPL 문장으로 작성(S22)한 후에 CEP엔진에서 수행할 수 있도록 등록(S23)한다.(S20)
마지막으로 CEP엔진은 수집된 이벤트 객체와 등록된 이벤트 패턴을 사용하여 실시간으로 검출하여 대응한다.(S30)
유량 스트림 데이터 수집 단계(S10)
먼저, 수자원 데이터 수집기로부터 전송되는 로 데이터를 수신한다.(S11)
다음, 상기 로 데이터를 CEP 엔진에 적용시키기 위한 수도 이벤트 객체로 변환시킨다.(S12)
즉, 스마트 수도 계량기에서 발생되는 유량 스트림 데이터를 CEP 엔진에서 수집하기 위해서는, 유량 스트림 데이터를 CEP엔진에서 사용할 수 있는 형태로 변환이 과정이 필요한 것이다.
여기서, 수도 이벤트 객체는 SN, BN, MS 및 flow에 대한 정보를 포함한다. SN은 계량기가 가지는 고유한 번호로써 각각의 스마트 수도 계량기를 구별하는 속성이다. BN는 수도 블록 시스템 내에서 정의된 소블록의 고유 번호로서 누수탐지를 위해 사용된다. 소블록의 개수가 n개를 가지면 1부터 n개의 번호가 부여된다. MS는 스마트 수도 계량기의 종류를 나타낸다. 블록 유량계(소블록 유량계)를 의미하면 'M'을 값으로 가지며, 스마트 수도 계량기를 의미하면 'S'를 값으로 가지게 된다. flow 는 스마트 수도 계량기를 통해서 측정된 유량으로 리터의 단위를 가진다.
다음, 상기 S12에서 변환된 수도 이벤트 객체를 CEP 엔진에 전달하여 유량 스트림 데이터 수집이 완료된다.(S13)
이벤트 패턴 등록 단계(S20)
CEP 엔진에서 수도 관련 이벤트를 처리하기 위하여 수도 관련 이벤트에 대한 패턴을 정의한 후 CEP 엔진에 등록시킨다.
먼저, 수집 및 대응하고자 하는 수도 이벤트 패턴을 정의 한다.(S21)
다음, 상기 정의된 패턴이 CEP 엔진에서 동작하도록 EPL 문장을 작성(S22)하고, 작성된 EPL 문장을 CEP 엔진에 등록(S23)함으로써 본 단계가 완료된다.
본 발명에서는 후술할 2가지의 이벤트 형태를 정의하여 처리한다. 단일 이벤트 스트림 처리로는 각각의 스마트 수도 계량기의 유량 스트림 데이터를 처리하여 최대 수량 이벤트를 탐지하며, 복합 이벤트 스트림 처리로는 블록 내부의 모든 스마트 수도 계량기의 유량 스트림 데이터를 복합 처리하여 특정 블록에 대한 누수를 탐지한다.
대응 단계(S30)
최대 수량 탐지 단계(S30a)
도 4 는 최대 수량 탐지 과정에 대한 흐름도이다.
최대 수량이란 스마트 수도 계량기의 유량이 과부하유량을 초과하여 일정시간 이상 발생하는 이벤트이다. 과부하유량이란 짧은 시간 동안 최대허용오차를 초과하지 않고 작동될 수 있는 가장 높은 유량이다. 최대 수량 이벤트가 발생하게 되면 스마트 수도 계량기의 고장 또는 유량감소로 인한 불감유량 때문에 부정확한 계량의 원인이 되기 때문에 빠른 탐지가 중요하다.
최대 수량 패턴은 각 스마트 수도 계량기의 구경과 제조사마다의 과부하유량에 따라 다르다. 본 발명에서는 최대 수량 패턴을 정의하기 위해서 Itron사의 Aquadis 계량기를 예를 들어 설명한다. Aquadis의 15mm 스마트 수도 계량기의 과부하유량은 2㎥/h 이다. Aquadis의 스마트 수도 계량기의 검침 원리는 계량기 내부에 프로펠러가 회전할 때 마다 센서를 통해 감지하는 원리로써 1L의 물을 측정하여 신호를 보낸다. CEP 엔진이 각각의 스마트 수도 계량기에서 1시간 동안 2000번의 신호를 감지하게 된다면 2000L의 물이 1시간 동안 흐르는 것을 의미하므로 최대 수량이 발생하는 것을 탐지할 수 있다. CEP 엔진에서 제공하는 Sliding Window를 사용하여 현재 시간으로부터 한 시간 전의 데이터를 담아 실시간으로 처리를 한다.
집계 단계(S30a-1)
먼저, 시간 순서대로 CEP 엔진을 통해 SN이 11번인 계량기의 유량 스트림 데이터가 수집된다. 수집된 유량 스트림 데이터를 현재 시간으로부터 1시간의 데이터를 저장하는 Sliding Window에 들어간다.
다음으로 12번 계량기의 유량 스트림 데이터가 수집된다. 서로 다른 SN을 가진 계량기는 Window 내부에서 그룹별로 나뉘게 되어 따로 합계를 계산한다. 이후 11번 계량기의 유량 스트림 데이터가 2000번 수집이 되면 실시간으로 합계를 계산하여 마지막으로 합계가 2001L를 계산한다.
필터링 단계(S30a-2)
이후, 필터링 과정을 통해 2000L를 초과하는 이벤트 및 해당 이벤트에 대한 계량기 고유번호를 탐지하여 최대 수량이 초과된 계량기를 탐지한다.
보고 단계(S30a-3)
필터링 단계를 통해 탐지된 결과가 리스너를 통해 보고된다. 이후 Sliding Window 상에 1시간 이전에 데이터가 삭제되면 최대 수량 이벤트는 발생하지 않는다.
EPL 문장


집계
insert into sumFlowEvent
select SN, sum(flow) as sumFlow
from WaterFlow.win:time(1 hour)
group by SN

필터링
select SN, sumFlow
from sumFlowEvent
where sumFlow > 2000
[표 1]는 위의 과정을 EPL을 사용하여 패턴을 정의한 결과이다. 집계 단계(S30a-1)에서는 from절을 통해 앞서 정의했던 유량 스트림 데이터(WaterFlow)를 1시간의 Sliding Window상에 담는다. 이후 group by절을 사용하여 유량 스트림 데이터를 시리얼 번호(SN) 별로 그룹화를 하고, 각 그룹 별로 합계연산을 통해 유량(flow)의 합계를 계산한다. 다음으로 insert into절을 통해 집계 단계의 이벤트 결과는 sumFlowEvent로 수집된다. 필터링 단계(S30a-2)는 sumFlowEvent에서 where 조건 절을 통해서 유량의 합계(sumFlow)가 2000L 이상인 계량기 번호(SN)를 찾아낸다. 과부하유량을 2㎥/h를 예를 들어 설명하였지만, 2번째 문장의 where절의 수치를 각 제조업체에서 제공하는 과부하유량에 따라 변경하여 등록하면, 여러 스마트 수도 계량기에도 적용된다.
블록 누수 탐지 단계(S30b)
도 5 는 소블록 내부 구조에 대한 블록도이며, 도 6 은 본 발명에 따른 블록 누수 탐지 과정에 대한 흐름도이다.
본 발명에서는 블록 누수 탐지를 위해 수도 블록 시스템을 대상으로 하였다. 그리고 블록 시스템의 소블록에 수용가들 모두에는 원격 검침이 가능한 스마트 수도 계량기들이 설치된다.
도 5 와 같이, 배수본관으로부터 들어오는 모든 물의 양은 소블록 유량계를 통해 측정한다. 그리고 소블록 내에 원격검침이 가능한 스마트 수도 계량기들이 설치되어 있어 소블록 내의 가정에서 사용한 물의 양을 측정한다. 소블록 내의 각 수용가 개체 사용량(sq)의 합계는 유량(Q)과 동일 수량(오차 허용 범위 이내의)이어야 하나 동일 값이 나타나지 않을 경우 누수가 제일 큰 요인이므로 차이를 대부분 누수량으로 추정한다. 즉 누수량(Lq)은, Lq = Q - ∑sq 의 공식이 성립한다.
수집 단계(S30b-1)
블록 내부로 유입되는 유량에 대한 스트림 데이터 및 블럭 내의 수용가에서 배출되는 유량에 대한 스트림 데이터를 각각 유량계 및 복수의 계량기로부터 수집한다.
분할 단계(S30b-2)
CEP 엔진은 각 계량기 별로 데이터를 분할을 해서 Sliding Window상에 데이터를 담게 되는데, 이때 블록에 부여되는 고유번호(BN) 속성을 이용하여 메인 스마트 수도 계량기와 블록에 속하는 가정용 스마트 수도 계량기로 나누게 된다.
집계 단계(S30b-3)
집계 단계에서는 각 블록 내의 가정용 스마트 수도 계량기들의 유량 데이터의 합계(SumBN)를 구한다.
조인 단계(S30b-4)
다음, 메인 스마트 수도 계량기에서 흐른 유량(공급 유량)과 블록 내에 존재하는 가정용 스마트 수도 계량기들의 데이터(사용 유량의 합)를 조인한 후 차이(Difference)를 계산하며, 위의 누수 추정량을 계산하는 공식을 사용하였다.
필터링 단계(S30b-5)
필터링 단계를 통해 두 측정값(공급 유량과 사용 유량의 합) 사이의 차이가 0을 초과하는 블록 고유 번호를 탐지한다.
보고 단계(S30b-6)
필터링 단계를 통해 탐지된 결과가 리스너를 통해 보고되어 누수를 알리게 된다.
삭제 단계(S30b-7)
이 후 처리된 블록의 유량 스트림 데이터는 삭제 하여, 다음 처리 프로세스에 포함되지 않도록 한다.
단계 EPL 문장




분할
insert into MainMeter
select BN, flow
from WaterFlow
where MS="M"

insert into SubMeter
select BN, flow
from WaterFlow
where MS="S"


집계
insert into SubAggregation
select BN, sum(flow) as sumflow
from SubMeter
group by BN



조인
insert into Join
select M.BN, (M.flow-S.sumflow) as difference
from MainMeter as M Unidirectional,
SubAggregation.win:keepall() as S
Where M.BN=S.BN

필터링
select BN, difference
from Join
where difference > 0

삭제
on MainMeter as M
delete from SubMeter as S
where M.BN=S.BN
[표 2]는 위의 과정을 EPL을 사용하여 패턴을 정의한 결과이다. 분할 단계(S30b-2)는 MS속성을 통해 소블록 유량계와 가정용 계량기를 분할한 후, 가정용 계량기는 SubMeter 이벤트로 수집되며 블록 유량계는 MainMeter 이벤트로 수집한다. 집계 단계(S30b-3)는 가정용 계량기로 분할된 이벤트들(SubMeter)을 group by절을 통해 블록번호(BN) 별로 그룹화한 후 같은 그룹에 속하는 계량기의 모든 유량(flow)의 합계(sumflow)를 구한 후 이벤트 결과를 SubAggregation 이벤트에 수집한다. 조인 단계(S30b-4)는 소블록 유량계와 해당 소블록 내에 속하는 스마트 수도 계량기들의 합계의 차이를 계산한다. MainMeter 이벤트와 SubAggregation 이벤트 결과에서 블록번호가 같을 경우 조인을 한 후 메인 계량기의 유량(flow)과 블록 별로 계산된 유량의 합계(sumflow)의 차이(difference)를 계산한다. 여기서 MainMeter 이벤트 타입에 Unidirectional 속성을 적용하여 MainMeter 이벤트가 수집될 때 마다 조인이 수행되도록 하였다. Sliding Window의 특성 상 조인되는 두 이벤트가 수집될 때 마다 조인을 수행하게 되는데, 누수 탐지를 위해서는 메인 유량계의 유량 스트림 데이터가 도착하였을 때를 기준으로 누수차이를 구해야 하므로 Unidirectional 속성을 사용하여 불필요한 연산을 하지 않게 하였다. 분할 단계의 Sliding Window 상에 이벤트들은 조인이 수행될 때까지 Window 상에서 없어지면 안되므로, keepall() 속성을 사용하였다. 필터링 단계(S30b-5)는 조인 단계의 where절을 사용하여 0이상의 값만 추출해 낸다. 이는 차이가 0이하가 나온다면 누수가 발생한 경우가 아니기 때문이다. 마지막으로 2번째 문장에서 SubMeter 이벤트의 Sliding Window를 비워주지 않으면 이전에 처리된 결과들이 계속 Sliding Window 상에 남아 있기 때문에 처리된 이벤트들은 삭제(S30b-7)한다. 6번째 문장은 처리가 끝난 이벤트들을 delete from절을 사용하여 SubMeter의 Sliding Window상에서 삭제하는 문장이다.
위의 EPL 문장을 등록하여 CEP 엔진은 유량 스트림 데이터를 복합 처리하여 블록 단위의 누수를 실시간으로 탐지를 한다.
즉, 본 발명의 대응 단계는, 미리 정의된 최대 수량 탐지 패턴과 블록 누수 탐지 패턴과 스마트 수도 계량기로부터 전달된 유량 스트림 데이터를 CEP 엔진에서 실시간으로 수집하여 해당 이벤트가 발생하면 이를 탐지한다. 탐지된 결과는 관리자에게 알려 최대 수량 및 블록 누수를 확인하여 즉각적으로 조치를 취한다.
전술한 바와 같이, 본 발명에 따른 유량 스트림 데이터의 실시간 수집 및 처리 방법은, 수도 블록 시스템에서 발생되는 각종 유량 스트림 데이터를 CEP 기법을 이용하여 실시간 복합 처리함으로써, 최대 수량 탐지 및 누수 블록의 탐지가 가능함에 따라 수도관망 시스템의 안정성이 증대되고 효율적 운용이 구현될 수 있다.
이상, 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명의 기술적 사상은 이러한 것에 한정되지 않으며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해, 본 발명의 기술적 사상과 하기 될 특허청구범위의 균등범위 내에서 다양한 수정 및 변형 실시가 가능할 것이다.
*도면의 주요부분에 대한 부호의 설명*
10 : 스마트 수도 계량기
20 : 수자원 데이터 수집기
30 : 수자원 관제 센터

Claims (8)

  1. 유량 스트림 데이터의 실시간 수집 및 처리 방법으로서,
    수자원 관제 센터에서 수도 블록 시스템으로 구획된 수용가(水用家)의 유량 스트림 데이터를 스마트 수도 계량기 및 수자원 데이터 수집기를 통해 수집하는 유량 스트림 데이터 수집 단계;
    상기 유량 스트림 데이터를 처리하기 위한 수도 이벤트 패턴을 정의하여 수자원 관제 센터에 등록하는 이벤트 패턴 등록 단계; 및
    상기 등록된 이벤트 패턴에 기반하여 실시간으로 수집되는 유량 스트림 데이터를 분석하여 수도 이벤트를 실시간 탐지 및 처리하는 대응 단계;
    를 포함하며,
    상기 대응 단계는 수자원 관제 센터에 포함된 CEP(Complex Event Processing) 엔진에서 슬라이딩 윈도우(Sliding Window)를 이용하여 등록된 이벤트 패턴과 수집되는 유량 스트림 데이터를 매칭 및 처리하는 단계이고,
    상기 유량 스트림 데이터 수집 단계는,
    상기 수자원 데이터 수집기로부터 전송되는 로 데이터(Raw Data)를 수신하는 단계;
    상기 로 데이터를 상기 CEP 엔진에 적용시키기 위한 수도 이벤트 객체로 변환시키는 단계; 및
    상기 변환된 수도 이벤트 객체를 상기 CEP 엔진에 전달하는 단계; 로 이루어지며,
    상기 수도 이벤트 객체는, 수도 블록 시스템에 속하는 스마트 수도 계량기의 고유번호(SN), 단위 블록에 부여되는 고유번호(BN), 계량기의 종류(MS) 및 실시간 측정 유량에 대한 정보를 포함하는 것을 특징으로 하는
    유량 스트림 데이터의 실시간 수집 및 처리 방법.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서,
    상기 이벤트 패턴 등록 단계는,
    수집 및 대응하고자 하는 수도 이벤트 패턴을 정의하는 단계;
    상기 정의된 패턴이 CEP 엔진에서 동작하도록 EPL(Event Processing Language) 문장을 작성하는 단계;
    상기 작성된 EPL 문장을 CEP 엔진에 등록하는 단계; 로 이루어지는 것을 특징으로 하는
    유량 스트림 데이터의 실시간 수집 및 처리 방법.
  5. 제4항에 있어서,
    상기 대응 단계는 최대 수량 탐지 단계를 더 포함하는 것을 특징으로 하는
    유량 스트림 데이터의 실시간 수집 및 처리 방법.
  6. 제5항에 있어서,
    상기 최대 수량 탐지 단계는,
    미리 설정된 시간 동안 수집되는 유량 스트림 데이터를 슬라이딩 윈도우 상에 보관하고 유량 스트림 데이터의 계량기 고유번호(SN) 속성을 이용하여 각 계량기 고유번호 별 유량 합계를 계산하는 집계 단계;
    상기 집계 단계에서 계산된 계량기 별 유량 합계가 과부하유량을 초과하는 계량기 고유번호를 탐지하는 필터링 단계; 및
    초과 계량기에 대한 정보를 출력시키는 보고 단계; 로 이루어지는 것을 특징으로 하는
    유량 스트림 데이터의 실시간 수집 및 처리 방법.
  7. 제4항에 있어서,
    상기 대응 단계는 블록 누수 탐지 단계를 더 포함하는 것을 특징으로 하는
    유량 스트림 데이터의 실시간 수집 및 처리 방법.
  8. 제7항에 있어서,
    상기 블록 누수 탐지 단계는,
    유량 스트림 데이터를 수신하는 수신 단계;
    단위 블록에 부여되는 고유번호(BN) 및 계량기의 종류(MS) 속성을 이용하여 단위 블록으로 유입되는 공급 유량과 해당 단위 블록을 이루는 각 수용가로부터 배출되는 사용 유량을 슬라이딩 윈도우에 분할하여 보관하는 분할 단계;
    상기 각 수용가의 사용 유량의 합을 계산하는 집계 단계;
    상기 공급 유량에 대한 슬라이딩 윈도우와 사용 유량의 합에 대한 슬라이딩 윈도우를 조인(Join)하여 공급 유량과 사용 유량의 합을 비교하는 조인 단계;
    공급 유량과 사용 유량의 합에 대한 차이가 0 이상인 단위 블록 고유번호를 탐지하는 필터링 단계;
    탐지된 단위 블록에 대한 정보를 출력시키는 보고 단계; 및
    보고된 단위 블록에 대한 유량 스트림 데이터를 슬라이딩 윈도우에서 삭제하는 삭제 단계; 로 이루어지는 것을 특징으로 하는
    유량 스트림 데이터의 실시간 수집 및 처리 방법.
KR1020140134772A 2014-10-07 2014-10-07 유량 스트림 데이터의 실시간 수집 및 처리 방법 KR101672097B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140134772A KR101672097B1 (ko) 2014-10-07 2014-10-07 유량 스트림 데이터의 실시간 수집 및 처리 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140134772A KR101672097B1 (ko) 2014-10-07 2014-10-07 유량 스트림 데이터의 실시간 수집 및 처리 방법

Publications (2)

Publication Number Publication Date
KR20160041222A KR20160041222A (ko) 2016-04-18
KR101672097B1 true KR101672097B1 (ko) 2016-11-03

Family

ID=55916381

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140134772A KR101672097B1 (ko) 2014-10-07 2014-10-07 유량 스트림 데이터의 실시간 수집 및 처리 방법

Country Status (1)

Country Link
KR (1) KR101672097B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102387105B1 (ko) 2022-02-07 2022-04-15 주식회사 이글루시큐리티 스트림 데이터 처리 장치 및 방법
KR102420239B1 (ko) 2022-03-07 2022-07-13 주식회사 이글루코퍼레이션 보안관제 시스템에서의 인공지능 기반 모델 성능 개선 장치 및 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100811433B1 (ko) * 2007-09-14 2008-03-07 주식회사 엘지씨엔에스 복합이벤트 처리시스템 및 복합이벤트 처리방법

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101183656B1 (ko) * 2009-12-09 2012-09-17 이메트릭스 주식회사 상수도 운영관리 시스템 및 그 제어방법
KR20130059731A (ko) * 2011-11-29 2013-06-07 에스케이플래닛 주식회사 실시간 로직 처리 프레임워크 시스템, 방법 및 그에 대한 기록매체
US8341106B1 (en) * 2011-12-07 2012-12-25 TaKaDu Ltd. System and method for identifying related events in a resource network monitoring system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100811433B1 (ko) * 2007-09-14 2008-03-07 주식회사 엘지씨엔에스 복합이벤트 처리시스템 및 복합이벤트 처리방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102387105B1 (ko) 2022-02-07 2022-04-15 주식회사 이글루시큐리티 스트림 데이터 처리 장치 및 방법
KR102404456B1 (ko) 2022-02-07 2022-06-07 주식회사 이글루코퍼레이션 타임 슬롯 기반의 윈도우 제어 장치 및 방법
KR102420239B1 (ko) 2022-03-07 2022-07-13 주식회사 이글루코퍼레이션 보안관제 시스템에서의 인공지능 기반 모델 성능 개선 장치 및 방법
KR20230131752A (ko) 2022-03-07 2023-09-14 주식회사 이글루코퍼레이션 인공지능 기반 보안관제 서비스 제공을 위한 모델 학습 방법

Also Published As

Publication number Publication date
KR20160041222A (ko) 2016-04-18

Similar Documents

Publication Publication Date Title
KR101648272B1 (ko) 복합 이벤트 처리와 기계학습 기반의 가정별 물 수요량 예측 및 누수 탐지방법
CN109791637B (zh) 用于布水系统的基于模型的控制的方法和装置
KR102522640B1 (ko) 누수를 탐지하는 관망 관리 시스템 및 동작 방법
CN110658415B (zh) 一种低压配电线路故障检测方法及系统
KR102522637B1 (ko) 분포된 상수도를 관리하는 관망 관리 시스템 및 동작 방법
WO2021097887A1 (zh) 一种基于阀门操作和在线用水计量的供水管网漏失高效定位方法
CN109063885A (zh) 一种变电站异常量测数据预测方法
US10677629B1 (en) System and method for utilizing district metering areas based on meter designations
CN103822098A (zh) 供水管网泄露监控方法
CN103064974A (zh) 基于时空分析的交通流数据清洗方法
CN109995599A (zh) 一种网络性能异常的智能告警方法
CN104930353A (zh) 一种城市供水管网的调压减漏评估系统
KR101672097B1 (ko) 유량 스트림 데이터의 실시간 수집 및 처리 방법
CN104715156A (zh) 一种建筑节能潜力动态评估方法
CN112985713A (zh) 基于边缘计算的管网漏损监测方法及系统
CN107133696A (zh) 一种基于云计算技术的城市能源管理系统及其方法
US9262294B2 (en) System and method for event detection and correlation from moving object sensor data
CN101865908B (zh) 一种自来水智能数据监测系统
CN110593831A (zh) 一种油田注水系统泄漏监控装置和方法
CN210109614U (zh) 一种燃气站点监控调度系统
CN114062801A (zh) 基于边缘计算的停电事件准实时监测方法及系统
CN105631606A (zh) 一种基于能量计量网络图的能源数据管理系统及方法
CN110262424A (zh) 一种应用于机械车间的给排水智能云系统
CN103699976A (zh) 电力营销重要指标及重要业务监控系统
CN109587216A (zh) 一种基于4g智能网络的环保设备监测系统

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
FPAY Annual fee payment

Payment date: 20190926

Year of fee payment: 4