KR20160010513A - Iot 시스템들에 대한 서비스로서의 데이터 주석화 - Google Patents

Iot 시스템들에 대한 서비스로서의 데이터 주석화 Download PDF

Info

Publication number
KR20160010513A
KR20160010513A KR1020157035277A KR20157035277A KR20160010513A KR 20160010513 A KR20160010513 A KR 20160010513A KR 1020157035277 A KR1020157035277 A KR 1020157035277A KR 20157035277 A KR20157035277 A KR 20157035277A KR 20160010513 A KR20160010513 A KR 20160010513A
Authority
KR
South Korea
Prior art keywords
data
annotation
entity
data stream
annotating
Prior art date
Application number
KR1020157035277A
Other languages
English (en)
Other versions
KR101812398B1 (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 콘비다 와이어리스, 엘엘씨
Publication of KR20160010513A publication Critical patent/KR20160010513A/ko
Application granted granted Critical
Publication of KR101812398B1 publication Critical patent/KR101812398B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/765Media network packet handling intermediate
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24573Query processing with adaptation to user needs using data annotations, e.g. user-defined metadata
    • G06F17/30525
    • H04L67/16
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04W4/005
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/70Services for machine-to-machine communication [M2M] or machine type communication [MTC]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Library & Information Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 명세서에는 데이터 스트림에서의 데이터를 주석화하는 다양한 엔티티들, 방법들, 및 시스템들이 개시된다. 주석화 개념들은 스트림 내의 개별 데이터 아이템들, 스트림 내의 데이터 윈도우들, 전체 스트림, 및/또는 여러 아이템들 및 윈도우들을 포함할 수 있는 스트림의 일부에 적용될 수 있다. 주석화 개념들은, 다른 엔티티들로부터 수신되는 데이터에 기초할 수 있고, 자동으로 또는 엔티티로부터 수신되는 주석화 요청에 응답하여 수행될 수 있다.

Description

IOT 시스템들에 대한 서비스로서의 데이터 주석화{DATA ANNOTATION AS A SERVICE FOR IOT SYSTEMS}
<관련 출원들에 대한 상호 참조>
본 출원은 2013년 5월 16일자 "DATA ANNOTATION AS A SERVICE FOR IOT SYSTEMS"라는 제목으로 출원된 미국 가특허 출원 61/824,061호의 이익을 주장하며, 그 내용들은 본 명세서에 참조로써 원용된다.
M2M(Machine-to-Machine) 기술들은 디바이스들이 유선 및 무선 통신 시스템들을 사용하여 상호 더 직접적으로 통신하게 한다. M2M 기술들은, IoT(Internet of Things), 고유하게 식별가능한 오브젝트들의 시스템, 및, 인터넷과 같은, 네트워크를 통해 상호 통신하는 이러한 오브젝트들의 가상 표현들의 추가 실현을 가능하게 한다. IoT는, 심지어, 식료품 상점에서의 제품들 또는 가정에서의 가전제품들과 같은, 일상적인 매일의 오브젝트들과의 통신을 촉진할 수 있고, 이에 의해 이러한 오브젝트들의 지식을 향상시키는 것에 의해 비용과 낭비를 절감할 수 있다. 예를 들어, 상점들은 재고에 있을 수 있거나 또는 판매되었을 수 있는 오브젝트들과 통신할 수 있거나, 또는 이들로부터 데이터를 얻을 수 있는 것에 의해 매우 정확한 재고 데이터를 유지할 수 있다.
IoT 엔티티들 및 시스템들은, 매우 다양하며, 광범위한 특성들, 애플리케이션들, 및 기능들을 가질 수 있다. 이해되듯이, 엔티티들의 이러한 다양성은 광범위한 데이터를 생성하고 수신한다. 데이터 수집은, 센서와 같은, "프론트 엔드(front-end)" 엔티티에서 발생할 수 있고, 게이트웨이들 또는 네트워크들과 같은, "백 엔드(back-end)" 엔티티들에 보내어질 수 있다. 수집된 데이터는, 유사한 백 엔드 디바이스들에 저장되어 처리될 수 있고, IoT 시스템에서의 도처에 있는 사용자들 및 애플리케이션들에 제공될 수 있다. 많은 IoT 엔티티들이 비교적 단순한 디바이스들일 수 있으므로, 이러한 디바이스들은 정황 정보가 거의 없는 또는 전혀 없는 원시 데이터의 데이터 스트림들을 생성할 수 있다. 이러한 정보를 갖는 것은 IoT 시스템들의 성능 및 효율을 증가시킬 수 있다.
본 명세서에 개시되는 실시예들은, 접속되는 엔티티들의 네트워크에서의 주석화 엔티티에서, 접속되는 엔티티들의 네트워크에서의 제1 엔티티로부터 제1 데이터를 수신하고, 이러한 주석화 엔티티에서, 접속되는 엔티티들의 네트워크에서의 제2 엔티티로부터 데이터 스트림을 수신하는, 방법들을 포함한다. 주석화 엔티티는, 그리고 나서 데이터 스트림에 적용될 데이터 주석화를 결정하고, 데이터 주석화에 기초하여 데이터 스트림을 주석화하는 것을 진행할 수 있다.
본 명세서에 개시되는 실시예들은, 프로세서 상에서 명령어들을 실행할 때, 접속되는 엔티티들의 네트워크에서의 제1 엔티티로부터의 제1 데이터, 및 접속되는 엔티티들의 네트워크에서의 제2 엔티티로부터의 데이터 스트림을 수신하는, 접속되는 엔티티들의 네트워크에서의 주석화 엔티티를 더 포함한다. 이러한 주석화 엔티티는, 그리고 나서 데이터 스트림에 적용될 데이터 주석화를 결정하고, 이러한 데이터 주석화에 기초하여 데이터 스트림을 주석화할 수 있다.
본 명세서에 개시되는 실시예들은, 프로세서 상에서 명령어들을 실행할 때, 주석화하는 엔티티로부터 제1 주석화 개념에 대한 요청을 수신하고, 응답으로, 제2 주석화 개념에 대한 요청을 주석화 개념 엔티티에 송신하는, 접속되는 엔티티들의 네트워크에서의 주석화 엔티티를 더 포함한다. 주석화 개념 엔티티로부터 제2 주석화 개념을 수신하면, 주석화 엔티티는, 제2 주석화 데이터에 기초하여 요청된 제1 주석화 개념을 생성하고, 제1 주석화 개념을 주석화하는 엔티티에 송신할 수 있다.
이러한 개요는 하기의 상세한 설명에서 더 설명되는 개념들 중 선택된 것들을 간단한 형태로 소개하기 위해 제공된다. 이러한 개요는 청구되는 주제의 주요 특징들 또는 핵심 특징들을 식별하기 위해 의도되는 것은 아니며, 청구되는 주제의 범위를 제한하는데 사용되도록 의도되는 것도 아니다. 또한, 청구되는 주제는 본 개시내용의 임의의 부분에서 언급되는 임의의 또는 모든 단점들을 해결하는 한정들에 제한되는 것이 아니다.
도 1은 일 실시예에 따라 서비스로서의 데이터 주석화가 적용될 수 있는 예시적 데이터 스트림들, 윈도우들, 및 아이템들을 도시한다.
도 2는 일 실시예에 따라 서비스로서의 데이터 주석화가 적용될 수 있는 추가적인 예시적 데이터 스트림들, 윈도우들, 및 아이템들을 도시한다.
도 3은 일 실시예에 따라 서비스로서의 데이터 주석화가 구현될 수 있는 예시적 구성을 도시한다.
도 4는 일 실시예에 따라 서비스로서의 데이터 주석화가 구현될 수 있는 예시적 아키텍처를 도시한다.
도 5는 일 실시예에 따라 서비스로서의 데이터 주석화가 구현될 수 있는 다른 예시적 아키텍처를 도시한다.
도 6은 서비스로서의 데이터 주석화의 개시되는 실시예들에 사용될 수 있는 예시적 신호 흐름을 도시한다.
도 7은 서비스로서의 데이터 주석화의 개시되는 실시예들에 사용될 수 있는 다른 예시적 신호 흐름을 도시한다.
도 8은 서비스로서의 데이터 주석화의 개시되는 실시예들에 사용될 수 있는 다른 예시적인 신호 흐름을 도시한다.
도 9는 서비스로서의 데이터 주석화의 개시되는 실시예들에 사용될 수 있는 다른 예시적 신호 흐름을 도시한다.
도 10은 일 실시예에 따라 서비스로서의 데이터 주석화가 구현될 수 있는 다른 예시적 아키텍처를 도시한다.
도 11은 서비스로서의 데이터 주석화의 개시되는 실시예들에 사용될 수 있는 예시적 데이터 구조를 도시한다.
도 12a는 하나 이상의 개시되는 실시예들이 구현될 수 있는 예시적인 M2M(Machine-to-Machine) 또는 IoT(Internet of Things) 통신 시스템의 시스템 도면이다.
도 12b는 도 12a에 도시되는 M2M/IoT 통신 시스템 내에 사용될 수 있는 예시적인 아키텍처의 시스템 도면이다.
도 12c는 도 12a에 도시되는 통신 시스템 내에 사용될 수 있는 예시적인 M2M/IoT 단말 또는 게이트웨이 디바이스의 시스템 도면이다.
도 12d는 도 12a의 통신 시스템의 양상들이 구현될 수 있는 예시적인 컴퓨팅 시스템의 블럭도이다.
본 명세서에 기재되는 실시예들은 REST(Representational State Transfer) 아키텍처의 관점에서 설명될 수 있고, 설명되는 컴포넌트들 및 엔티티들은 REST 아키텍처(RESTful 아키텍처)의 제약들에 따른다. RESTful 아키텍처는 사용되는 물리적 컴포넌트 구현 또는 통신 프로토콜들의 관점에서보다는 오히려 아키텍처에 사용되는 컴포넌트들, 엔티티들, 커넥터들, 및 데이터 엘리먼트들에 적용되는 제약들의 관점에서 설명된다. 따라서, 이러한 컴포넌트들, 엔티티들, 커넥터들, 및 데이터 엘리먼트들의 역할들 및 기능들이 설명될 것이다. RESTful 아키텍처에서는, 고유하게 어드레싱 가능한 리소스들의 표현들이 엔티티들 사이에 전달될 수 있다. 통상의 기술자는 즉각적인 실시예들의 구현들이 본 개시내용의 범위 내에 남아 있으면서 변경될 수 있다는 점을 인식할 것이다. 통상의 기술자는, 개시되는 예시적인 실시예들이, ETSI(European Telecommunications Standards Institute) M2M 아키텍처를 참조하여 본 명세서에 가끔 설명되지만, ETSI M2M 아키텍처를 사용하는 구현들에 제한되는 것은 아니라는 점을 또한 인식할 것이다. 개시되는 실시예들은, oneM2M 및 다른 M2M 시스템들 및 아키텍처들과 같은, 접속된 엔티티들을 갖는 다른 아키텍처들 및 시스템들에 구현될 수 있다.
IoT 시스템들은 많은 상이한 종류의 센서들을 포함할 수 있고, 이들 각각은 원시 센서 데이터의 상이한 타입들을 생산할 수 있다. 이러한 데이터는 센서 및 센서 요청들의 종류에 의존하여 매우 다양한 특성들을 가질 수 있다. 일 실시예에서는, 수 개 또는 수십 개의 바이트들인 "스몰 데이터(small data)"가 센서에 의해 생성될 수 있다. 예를 들어, 온도 센서로부터 판독되는 온도가 스몰 데이터일 수 있다. 특히 다수의 센서들이 포함될 수 있고 및/또는 각각의 센서가 데이터를 연속적으로 생성할 때, 스몰 데이터 하나씩 각각 개별적으로 송신하는 것은 IoT 시스템 및 그 안의 엔티티들에 과도한 오버헤드를 도입할 수 있다. 센서에 의해 연속적으로 생성되는 데이터(즉, 센서는 데이터 스트림을 생성함)는 하이 템포 상관(high tempo correlation)을 가질 수 있다. 즉, 방에 대한 온도 데이터와 같이, 이러한 데이터는 장시간 동안 변경되지 않을 수 있다. 이러한 템포 상관형 데이터는 주요 정보의 손실없이 종합될 수 있다. 단일 판독은 특수한 데이터 스트림으로 고려될 수 있다는 점에 주목하자. 물리적 영역 도처에 산재되는 동일 타입의 여러 센서들에 의해 생성되는 데이터는 공관 상관을 가질 수 있고, 다수 센서들은 매우 유사하거나 또는 고 상관형인(highly correlated) 데이터를 생성할 수 있다. 따라서, 이러한 타입의 데이터 또한 주요 정보의 손실없이 종합될 수 있다. 상이한 타입들의 센서들로부터의 센서 데이터는 애플리케이션 레벨 상관을 가질 수 있고, 이들의 기능들 및 서비스들은 몇몇 방식으로 관련된다. 예를 들어, 연기 센서 및 온도 센서로부터의 데이터는 양자 모두가 화재에 의해 트리거되면 상호 상관될 수 있다. 다른 예에서는, 천식 환자 상의 신체 센서로부터의 데이터가 연기 센서 또는 향기 센서로부터의 센서 데이터에 상관될 수 있다. 이러한 애플리케이션 레벨 상관형 센서 데이터는 이벤트 예측 및 관측 정확도를 향상시키는 공통의 또는 유사한 특성들에 기초하여 영향을 받을 수 있다.
데이터는 IoT 시스템에서 다양한 방식들로 캡처되거나 또는 관측될 수 있다. 일 실시예에서, 데이터는 검출되는 이벤트들에 응답하여 관측되거나, 송신되거나, 또는 다른 방식으로 수집될 수 있다("이벤트 기반의 데이터 관측"이라 할 수 있음). 이벤트가 검출될 수 있거나, 또는 이벤트의 발생시 자동 통지가 생성될 수 있고, 이에 응답하여 데이터가 송신되거나 또는 수집될 수 있다. 임계값을 충족시키는 것 또는 넘어가는 것(예를 들어, 온도 임계값을 넘어가는 로우 레벨 온도 이벤트), 검출가능한 이벤트의 발생, (예를 들어, 화재의 검출과 같은 하이 레벨 비상 이벤트), 또는 IoT 엔티티에 의해 검출되거나 또는 생성될 수 있는 임의의 다른 이벤트와 같은, 임의의 타입의 이벤트가 고려된다. 다른 실시예에서는, 데이터가 필요에 따라 IoT에 의해 수집될 수 있고("쿼리 기반의 데이터 관측"이라 할 수 있음), 여기서 IoT 엔티티는 원하는 데이터에 대한 액세스를 갖는 엔티티에 원하는 데이터에 대한 요청을 보낸다. 또 다른 실시예들에서는, 데이터가 연속적으로 수집될 수 있고("연속적 데이터 관측"이라 할 수 있음), 여기서 데이터는 연속적으로 생성 및/또는 수집될 수 있다(즉, 데이터 스트림의 생성 및/또는 수집). 이러한 데이터 관측 방법들 중 임의의 것은 "하이브리드 데이터 관측"을 구현하도록 임의의 다른 것과 조합되어 사용될 수 있고, 여기서 IoT 엔티티는 이벤트 기반의, 쿼리 기반의, 및/또는 연속적 데이터 관측을 공동으로 활용할 수 있다. 데이터 수집 및/또는 데이터 주석화를 수행하는 본 명세서에 설명되는 엔티티들은 간단히 "주석화 엔티티들"이라 할 수 있다는 점에 주목하자. 이러한 엔티티들은 그러나 통신가능하게 접속되는 엔티티들의 임의의 네트워크에서의 임의의 하나 이상의 엔티티들일 수 있고, 이러한 엔티티 각각은 하나 이상의 디바이스들, 시스템들, 네트워크들 등에서 구현될 수 있다. 이러한 모든 실시예들은 본 개시내용의 범위 내에 있는 것으로서 고려된다.
언급된 바와 같이, IoT 시스템에 생성되는 많은 다양한 원시 데이터 스트림들이 있을 수 있다. 각각의 데이터 스트림은 다수의 데이터 아이템들을 포함할 수 있다. 예를 들어, 데이터 스트림은 스마트 전기 미터로부터의 일련의 연속적 판독들일 수 있다. 데이터 스트림의 다수 데이터 아이템들은 데이터 윈도우로서 취급될 수 있고, 따라서 데이터 스트림은 다수의 데이터 윈도우들을 가질 수 있다.
원시 데이터 스트림들은 그들이 수집되어 분석될 때까지 많이 유용한 정보 또는 값을 제공하지 못할 수 있다. 원시 데이터 스트림들을 효율적으로 분석하기 위해, 또는 이미 처리된 데이터 스트림들을 더 분석하기 위해, IoT 데이터 마이닝 및 분석들에 대해 사용될 수 있는 추가 정보가 데이터 스트림들에 추가될 수 있다. 이러한 정보는, 예를 들어, 데이터 스트림들 사이의 상관들, IoT 사물들 간의 상호작용들, 사람과 IoT 사물들 간의 상호작용들 등을 결정하는 것을 용이하게 할 수 있다. 기존 데이터 스트림에 추가 정보를 추가하는 것은 "데이터 주석화"라 할 수 있다. 데이터 스트림에 추가되는 주석은 해당 데이터 스트림을 몇몇 방식으로 설명하는 추가의 의미론적 또는 정황 정보를 제공하는 정보일 수 있다. 이러한 정보는 "데이터 주석화 개념들" 또는 "데이터 주석화 데이터"라 할 수 있다. 일 실시예에서, 데이터 스트림은, 데이터 스트림이 생성되었던 주변 상황 또는 정황, 데이터 스트림의 생성시 관련있는 사람, 액티비티, 또는 IoT 사물 상태, 데이터 스트림의 생성이 생성되는 것을 트리거한 이벤트, 데이터 스트림이 생성되었던 조건, 데이터 스트림의 위치, 시간, 타입, 및/또는 소스, 및/또는 상이한 데이터 스트림들 간의 상관을 나타내도록 수정될 수 있다. 데이터 주석화의 성능 영향을 감소시키는데 중요한 인자는 데이터 스트림을 주석화하기에 적절한 시간(예를 들어, 데이터 수집 동안 또는 데이터 수집 이후) 및 데이터 주석화의 입도(granularity)(예를 들어, 본 명세서에 보다 상세히 설명되는, 데이터 아이템, 데이터 윈도우, 데이터 스트림, 다수 스트림들 등에 추가되는 주석)을 결정하는 것일 수 있다.
실시간 에너지 소비 또는 온도 센서들로부터의 온도 데이터 측정하도록 스마트 미터들이 배치되는 스마트 홈 에너지 시스템들에서의 에너지 데이터와 같은, 다양한 IoT 데이터 스트림들을 주석화하는 많은 IoT 애플리케이션들에 대해 데이터 주석화가 영향을 받을 수 있다. 원시 데이터(예를 들어, 즉각적인 스마트 미터 판독들 또는 온도 판독들)는 시스템의 필요한 특성들을 완전히 결정하기에 충분하지 않을 수 있다. 예를 들어, 가전제품 상태, 가정에서 수행중인 액티비티들, 시각, 또는 가정에 있는 사람들의 수는, 예를 들어, 전력 소비 또는 적절한 온도 설정들을 결정하는데 사용될 수 있는 추가 데이터를 제공할 수 있다. 따라서, 예를 들어, 가정에 있는 사람들의 수 등을 나타내는 추가 데이터는 향상된 데이터 스트림 처리를 위한 주석들로서 데이터 스트림들에 추가될 수 있다. 예를 들어, 스마트 미터에 접속하는 홈 게이트웨이는 추가 데이터를 반영하는 가정에 있는 센서들에 의해 생성되는 주석들을 데이터 스트림에 추가할 수 있다. 센서로부터 에너지 데이터를 수집하면서, 게이트웨이는, 다른 센서들과 같은, 다른 소스들로부터의 다른 데이터를 동시에 분석하여 주석화 개념을 결정할 수 있고, 이는 가전제품 상태, 가정에 있는 사람들의 수 등과 같은 데이터를 포함할 수 있다.
주석들은 단일 데이터 아이템, 하나 이상의 데이터 아이템들을 포함하는 데이터 윈도우, 전체 데이터 스트림 및 다수의 데이터 스트림들에 추가될 수 있다. 다수 레벨 IoT 데이터 주석화의 예시적이지만 비제한적인 표현(100)이 도 1에 도시되며, 이는, 데이터 아이템들(111-118 및 121-128)을, 각각, 포함하는, 데이터 스트림들(101 및 102)을 도시한다. 도 1에 도시된 바와 같이, 아이템 레벨 주석들(141-145)은 스트림(101)에 있는 개별 데이터 아이템들 중 일부에 주석화될 수 있는 한편 데이터 아이템들(146-148)은 스트림(102)에 있는 데이터 아이템들 중 일부에 주석화 될 수 있다.
윈도우 레벨 주석들(151 및 152)은, 각각, 데이터 윈도우들(131 및 133)에 주석화될 수 있는 한편 스트림(101)의 데이터 윈도우(132)는 주석화되지 않을 수 있는 반면, 데이터 윈도우(132)에 있는 데이터 아이템(144)은 주석화될 수 있다. 유사하게, 윈도우 레벨 주석들(153 및 154)은, 각각, 데이터 윈도우들(135 및 136)에 주석화될 수 있는 한편 스트림(101)의 데이터 윈도우(134)는 주석화되지 않을 수 있는 반면, 데이터 윈도우(134)에 있는 데이터 아이템(124)은 주석화될 수 있다. 윈도우 레벨 주석들의 사용은 동일한 데이터 윈도우 내에 있는 다수 데이터 아이템들에 의한 주석의 공유를 허용할 수 있고, 일부 실시예들에서는 아이템 레벨 주석화에 비해 오버헤드를 감소시킨다.
전체 스트림들이 또한 주석화될 수 있다. 도 1에 도시된 바와 같이, 데이터 스트림 주석(161)이 데이터 스트림(101)에 적용될 수 있는 한편 데이터 스트림 주석(162)이 데이터 스트림(102)에 적용될 수 있다. 데이터 스트림 레벨 주석화의 사용은 동일한 데이터 스트림 내에 있는 모든 데이터 아이템들에 의한 주석의 공유를 허용할 수 있고, 일부 실시예들에서는 윈도우 레벨 주석화에 비해 오버헤드를 훨씬 더 감소시킨다.
일 실시예에서, 주석들은 다수 스트림들에 적용될 수 있다. 도 1에 도시된 바와 같이, 크로스 스트림(cross-stream) 주석(171)이 데이터 스트림(101) 및 데이터 스트림(102) 양자 모두에 적용될 수 있다. 크로스 스트림 주석의 사용은 다수의 데이터 스트림들 내에 있는 데이터 아이템들에 의한 주석의 공유를 허용할 수 있고, 일부 실시예들에서는 데이터 스트림 레벨 주석화에 비해 오버헤드를 훨씬 더 감소시킨다. 이러한 하나의 실시예에서는, 도 1에 도시된 바와 같이, 예를 들어, 데이터 스트림들(101 및 102)의 모든 데이터 아이템들에 주석(171)이 적용되는 바와 같이, 다수의 데이터 스트림 내에 있는 모든 데이터 아이템들에 크로스 풀 스트림(cross-full-stream) 주석이 적용될 수 있다.
대안적으로, 다수 레벨 IoT 데이터 주석화의 예시적이지만 비제한적인 표현(200)을 도시하는 도 2를 이제 참조하면, 다수의 데이터 스트림들 중 각각의 전체 데이터 스트림 전반적으로는 아니지만 데이터 스트림들 전반적으로 적용되는, 크로스 파셜 스트림(cross-partial-stream) 주석이 이용될 수 있다. 도 2에 도시된 바와 같이, 도 1과 유사하게, 아이템 레벨 주석들(241-245)은 스트림(201)에 있는 개별 데이터 아이템들 중 일부에 주석화될 수 있는 한편 데이터 아이템들(246-248)은 스트림(202)에 있는 데이터 아이템들 중 일부에 주석화 될 수 있고, 윈도우 레벨 주석들(251, 252, 253, 및 254)은, 각각, 데이터 윈도우들(231, 233, 235, 및 254)에 주석화될 수 있는 한편 데이터 윈도우(232 및 234)는 주석화되지 않을 수 있고, 데이터 스트림 주석(261)이 데이터 스트림(201)에 적용될 수 있는 한편 데이터 스트림 주석(262)이 데이터 스트림(202)에 적용될 수 있다. 이러한 실시예에서는, 크로스 파셜 스트림 주석(271)이 데이터 스트림들(201 및 202)의 양자 모두의 데이터 아이템들의 서브세트에 적용될 수 있는 한편, 크로스 파셜 스트림 주석(272)이 데이터 스트림들(201 및 202)의 양자 모두의 데이터 아이템들의 다른 서브세트에 적용될 수 있다.
언급된 바와 같이, 개시되는 다수 레벨 데이터 주석화는, 총 오버헤드의 감소 및 데이터 주석화의 효율을 증가시키는데 도움이 되는 다수의 데이터 주석화 접근방식들을 제공한다. 개시되는 실시예들에서, 다수의 상이한 주석들은, 단일 데이터 아이템, 데이터 윈도우, 데이터 스트림, 또는 다수의 데이터 스트림들의 동일한 세트 또는 서브세트에 적용될 수 있다는 점에 주목하자.
일 실시예에서, 데이터 주석화는 "DAaaS(Data Annotation as a Service)"라 할 수 있는 IoT 서비스 능력으로서 제공될 수 있다. DAaaS는 기존 IoT 서비스 능력 또는 서비스 레이어 플랫폼(예를 들어, ETSI M2M, oneM2M) 내에 통합될 수 있거나 또는 다른 서비스 능력들 또는 공통 서비스 엔티티들에 의해 영향을 받을 독립형 서비스 능력으로서 구현될 수 있다. DAaaS는 IoT 디바이스, IoT 게이트웨이, 및/또는 IoT 서버에 상주할 수 있다. 도 3은 DAaaS를 구현할 수 있는 다양한 기능들 및 엔티티들의 상호작용을 도시한다. IoT 엔티티는 (예를 들어, 스마트 미터 또는 온도 센서로부터의) 스트림(301)과 관련되는 정황 정보를 결정하도록 데이터 스트림(301)이 분석되는 데이터 스트림 분석(310)을 수행할 수 있다. 예를 들어, 스트림(301)과 관련되는 정황 정보는, 다른 데이터 스트림들(예를 들어, 스마트 미터들로부터의 유틸리티 소비, 온도 센서들로부터의 온도 데이터)에 적용될 수 있는 주석화 개념들을 자동으로 결정하는데 사용될 수 있는, 근접 사물들(예를 들어, 가전제품, 사람, 액티비티들 등)의 상태와 같은, 센서 생성 스트림(301)에 대한 환경에 관한 데이터를 포함할 수 있다. 하나 이상의 IoT 엔티티들에 구현될 수 있는 데이터 스트림 분석 기능(310)은 입력 데이터 스트림(301)에 대한 정황 데이터를 결정할 수 있고, 결정된 정황 데이터는, 데이터 스트림들을 주석화하는데 사용될 수 있는 데이터를 저장할 수 있는 데이터베이스 또는 다른 엔티티일 수 있는, 주석화 개념 관리(320)에 저장될 수 있다.
일 실시예에서, ADA(Automatic Data Annotation)(370)은, 조건의 검출시, 데이터 스트림들을 주석화하는 데이터 주석화 처리를 자동으로 트리거하는 하나 이상의 IoT 엔티티들에 의해 구현되는 기능일 수 있다. ADA(370)는 데이터 스트림 분석 기능(310), 주석화 개념 관리 기능(320)의 내부 개념 베이스, 데이터 주석화 처리(330) 사이의 상호작용들을 포함할 수 있다. ADA는 데이터 수집 동안 자동화된 데이터 주석화를 가능하게 한다. 예를 들어, 홈 게이트웨이는 가정 내에 있는 하나 이상의 스마트 미터들로부터 데이터를 수집할 수 있다. 이러한 게이트웨이는 또한, 스마트 미터 데이터를 수집하면서 가정에서 다양한 상태들 및 액티비티들을 모니터하도록 배치될 수 있는, 움직임 센서들, 사운드 센서들, 광 센서들, 및 온도 센서들과 같은, 하나 이상의 다른 센서들로부터 데이터를 수신하거나 또는 취득할 수 있다. 게이트웨이는 차후 스마트 미터 데이터 스트림을 주석화하는데 사용할 상태 및/또는 액티비티 데이터를 취득하기 위해 다른 센서들로부터 수신되는 정황 데이터를 분석할 수 있다. 주석화 개념들 및 정황 데이터는, 센서로부터 수신되는 원시 데이터 또는 하나 이상의 IoT 애플리케이션들로부터 수신되는 정보에 기초하여 게이트웨이 또는 다른 IoT 엔티티에 의해 결정되는 데이터일 수 있다. 데이터 스트림 분석 기능(310)으로부터 수신되는 정황 데이터 또는 다른 주석화 개념들 또는 데이터를 저장하고 있는, 주석화 개념 관리(320)는, 주석화된 데이터 스트림(302)을 생성하도록 데이터 스트림을 주석화할 수 있는 데이터 주석화 처리 기능(330)에 이러한 데이터를 제공할 수 있다.
대안적으로, 또는 추가로, 외부 주석화 요청기들(350)이, RDA(Requested Data Annotation Process)(380)에 있는 주석화 개념 관리(320)에 주석화 개념이 저장되어야 한다는 것을 요청할 수 있다. RDA(380)는 주문형 주석화로 고려될 수 있다. RDA(380)에서는, 임의의 IoT 디바이스들, 게이트웨이들, 서버들, 애플리케이션들, 다른 DAaaS들 등일 수 있는 주석화 요청기들(350)로부터의 요청들에 응답하여 데이터가 수집 및 저장될 수 있다. 이러한 요청들에 응답하여 수집되거나 취득되는 데이터는 주석화 개념 관리(320)에 의해 데이터 주석화 처리 기능(330)에 제공될 수 있다. 데이터 주석화 처리 기능(330)은 이러한 데이터에 의해 데이터 스트림을 차례로 주석화하여 주석화된 데이터 스트림(302)을 생성할 수 있다. 주석 가능화(340)는 주석화 요청기들(350)이 DAaaS(300)와 상호작용하게 하는 하나 이상의 인터페이스들을 제공할 수 있다. 대안적으로, 또는 추가로, 요청된 데이터 주석화 처리(380)는, 주석화 개념들을 제공할 수 있는 임의의 하나 이상의 IoT 엔티티들일 수 있는, 외부 개념 베이스(360)가, DAaaS(300)와 상호작용하게 할 수 있고, 주석화 처리(330)에 의해 데이터 스트림을 주석화하여, 주석화된 데이터 스트림(302)을 생성하는데 사용될 수 있는 주석화 개념들을 제공하게 할 수 있다. 주석화 개념들 또는 데이터를 저장하는 및/또는 제공하는 임의의 엔티티 또한 "주석화 개념 엔티티" 또는 "주석화 데이터 엔티티"라 할 수 있다.
주석화 요청기들(350)은 요청된 데이터 주석화 처리(380)를 트리거하기 위해 하나 이상의 주석화 요청들을 DAaaS(300)에 보낼 수 있다. 주석화 요청기들(350)은, 외부 개념 베이스(360)에 저장될 수 있는 외부 개념 또는 다른 주석화 데이터를 명시할 수 있거나, 또는 주석화 요청에서 주석화 요청기들(350)로부터 직접 이러한 데이터를 제공할 수 있다. 주석화 요청기들(350)은 또한, 또는 그 대신에, 주석 가능화(340) 인터페이스들을 통해 주석화 개념 관리 기능(320)의 내부 개념 베이스를 액세스하여 조작할 수 있다.
데이터 주석화 처리(330)는 자동 데이터 주석화 처리(370) 및 요청된 데이터 주석화 처리(380) 중 하나 또는 양자 모두에서 동작할 수 있다. 데이터 주석화 처리(330)는 주석 가능화(340)를 통해 데이터 스트림 분석(310) 및/또는 주석화 요청기들(350)로부터 주석화 요청들 및/또는 트리거들을 수신할 수 있다. 데이터 주석화 처리(330)는 적절한 다수 레벨 데이터 주석화 방식을 결정할 수 있다. 데이터 주석화 처리(330)는 데이터 주석화를 결정하고 수행하는데 주석화 개념 관리(320)의 내부 개념 베이스 및 외부 개념 베이스(360) 양자 모두를 사용할 수 있다. 데이터 주석화 처리(330)는 주석화될 하나 이상의 데이터 스트림들에 대한 인터페이스를 또한 가질 수 있다.
본 개시내용의 다양한 실시예들은, 서비스 능력 또는 공통 서비스 기능으로서의 DAaaS가 다른 IoT 엔티티들(예를 들어, 노드들, 서비스들 등)과 상호작용할 수 있게 할 수 있는 다양한 DAaaS 아키텍처들을 이용할 수 있다. 도 4는 예시적이지만 비제한적인 DAaaS 아키텍처(400)를 도시하며, 여기서 DAaaS는 IoT 노드(예를 들어, IoT 디바이스, 게이트웨이, 또는 서버)에 상주한다. 이러한 DAaaS들은, IoT 의미론적 개념 서버(401)와 같은, 다른 IoT 서비스들, 다른 DAaaS들, 및 하나 이상의 IoT 의미론적 개념 서버들과 상호작용할 수 있다. IoT 의미론적 개념 서버(401)는, 임의의 IoT 엔티티 및 다수의 IoT 엔티티들 및/또는 기타 디바이스들과 엔티티들의 의 임의의 조합일 수 있다. IoT 의미론적 개념 서버(401)는 DAaaS에 의해 액세스되어 사용될 수 있는 주석화 개념들 및/또는 주석화 데이터를 유지할 수 있다.
일 실시예에서, 데이터 스트림(431)을 수신하고 있을 수 있거나 또는 그렇지 않을 수 있는, IoT 노드(430)에서의 다른 IoT 서비스들(432)은, IoT 노드(420)에서의 DAaaS(422)에 데이터 주석화 요청(443)을 보낼 수 있다. 이에 응답하여, IoT 노드(420)에서의 DAaaS(422)는, 요청(443)에 표시된 데이터 스트림(예를 들어, 도시되지 않은 소스로부터 취득되는 데이터 스트림(421) 또는 데이터 스트림(431))에 주석들을 적용할 수 있고, 데이터 주석화 응답(444)을 다른 IoT 서비스들(432)에 보낼 수 있다. 적용하기에 적절한 데이터 주석들을 결정하기 위해, DAaaS(422)는 자신의 내부 개념 베이스에 쿼리하여 적절한 주석화 개념들 및 데이터를 결정할 수 있다. DAaaS(422)는 또한, 또는 그 대신에, 주석화 개념들 및 데이터가 개념 베이스(402)에 저장될 수 있는 IoT 의미론적 개념 서버(401)로부터 데이터 및 개념들을 액세스할 수 있다. DAaaS(422)는, 요청(443) 및/또는 IoT 노드(430)에 관련되는 데이터를 포함할 수 있는 개념 액세스 요청(453)을 IoT 의미론적 개념 서버(401)에 보낼 수 있고, 주석화 개념들 및/또는 데이터를 포함할 수 있는 개념 액세스 응답(454)을 후속하여 수신할 수 있다.
DAaaS(422)는 또한, 또는 그 대신에, 데이터 주석화 요청(441)을 IoT 노드(410)의 DAaaS(412)에 보낼 수 있다. 예를 들어, DAaaS(422)는 가장 효율적으로 주석화를 수행할 수 있는 엔티티가 DAaaS(412)일 수 있다는 것을 결정할 수 있다. DAaaS(412)는 IoT 노드(410)에 의해 수신되거나 또는 유지되고 주석화 요청(441)에 의해 표시되는 데이터 스트림들에 주석들을 추가할 수 있다. IoT 노드(410)는 그리고 나서 데이터 주석화 응답(442)을 DAaaS(422)에 보낼 수 있다. DAaaS(422)에서와 같이, 적용하기에 적절한 데이터 주석들을 결정하기 위해, DAaaS(412)는 자신의 내부 개념 베이스에 쿼리하여 적절한 주석화 개념들 및 데이터를 결정할 수 있다. DAaaS(412)는 또한, 또는 그 대신에, 주석화 개념들 및 데이터가 개념 베이스(402)에 저장될 수 있는 IoT 의미론적 개념 서버(401)로부터 데이터 및 개념들을 액세스할 수 있다. DAaaS(412)는, 요청(441) 및/또는 IoT 노드(420)에 관련되는 데이터를 포함할 수 있는 개념 액세스 요청(451)을 IoT 의미론적 개념 서버(401)에 보낼 수 있고, 주석화 개념들 및/또는 데이터를 포함할 수 있는 개념 액세스 응답(452)을 후속하여 수신할 수 있다.
다른 실시예에서, IoT 노드(430)에서의 다른 IoT 서비스들(432)은 데이터 주석화 개념들 및/또는 데이터를 결정하기 위해 IoT 의미론적 개념 서버(401)와 상호작용할 수 있다. 다른 IoT 서비스들(432)은, 주석화 데이터 및/또는 개념들을 요청하는 개념 액세스 요청(455)을 IoT 의미론적 개념 서버(401)에 보내어, 요청된 데이터에 대한 개념 액세스 응답(456)을 수신할 수 있다. 다른 IoT 서비스들(432)은 그리고 나서, DAaaS(422)에 보낸 주석화 요청(443)과 같은, DAaaS들에 대한 자신의 요청에 이러한 데이터를 포함할 수 있다. 이는, DAaaS(422)가 IoT 의미론적 개념 서버(401)를 쿼리할 것을 요청하지 않고, DAaaS(422)가 하나 이상의 데이터 스트림들, 또는 이들의 컴포넌트들을 주석화하게 할 수 있다.
본 명세서에 설명되는 주석화 요청들 및 개념 액세스 요청들 중 임의의 것은, 기존 주석화 개념들 및/또는 데이터를 검색하고, 기존 주석화 개념들 및/또는 데이터를 삭제하고, 기존 주석화 개념들 및/또는 데이터를 업데이트하고, 및/또는 새로운 주석화 개념들 및/또는 데이터를 IoT 의미론적 개념 서버에 삽입하라는 요청들일 수 있다는 점에 주목하자.
도 5는 예시적이지만 비제한적인 프록시 기반의 DAaaS 아키텍처(500)를 도시하며, 여기서 DAaaS(522)는 DAaaS(532)와 DAaaS(512) 사이의 프록시로서의 역할을 한다. 데이터 수신 데이터 스트림(531)을 수신중이거나 또는 그렇지 않을 수 있는, IoT 노드(530)에서의 DAaaS(532)는, IoT 노드(510)에서의 하나 이상 데이터 스트림들이 주석화될 것을 요청하기를 원할 수 있지만, DAaaS(512)의 직접 도달하는 것이 불가능할 수 있다. 따라서, DAaaS(532)는, DAaaS(532)의 주석화 요청을 주석화 요청(541)으로서 DAaaS(512)에 중계할 수 있는 DAaaS(522)에 데이터 주석화 요청(543)을 보낼 수 있다. DAaaS(522)는 주석화 요청의 성공 또는 실패를 나타내는 DAaaS(512)로부터의 주석화 응답(542)을 수신할 수 있다. DAaaS(522)는 이러한 응답을 주석화 응답(544)으로서 DAaaS(532)에 전달할 수 있다.
일부 실시예들에서, DAaaS(532)는 DAaaS(512)에 의해 이해되지 않는 포맷 또는 다른 통신 수단들로 통신할 수 있다. 이러한 실시예들에서, DAaaS(522)는 주석화 요청(543)에 포함된 요청, 개념 및/또는 데이터를 DAaaS(512)가 이해할 수 있는 다른 포맷 또는 다른 형태로 번역할 수 있다. DAaaS(522)는 이러한 번역된 요청, 데이터 등을 주석화 요청(541) 내에서 DAaaS(512)에 보낼 수 있다.
주석화 프록시로서의 역할을 하는 동안, DAaaS(522)는 DAaaS(532) 및/또는 다른 DAaaS들로부터의 주석화 요청들을, 주석화 요청(541)과 같은, DAaaS(512)에 보내질 수 있는 단일 주석화 요청으로 조합 및/또는 종합할 수 있다. 예를 들어, DAaaS(532)로부터의 주석화 요청(543)은 다른 DAaaS들로부터의 하나 이상의 다른 요청들에 표시되는 데이터 스트림의 데이터 아이템들 또는 데이터 윈도우를 주석화할 것을 요청할 수 있다. 다른 DAaaS들은 DAaaS(532)에 의해 요청되는 것들과는 상이한 동일 데이터 스트림의 주석들을 요청하고 있을 수 있다. 데이터 스트림만이 요청들 간에 공통으로 있을 수 있지만, 다른 실시예들에서는, 이러한 주석들이 요청들간 일부 또는 전부 공통으로 있을 수 있다. 이러한 실시예에서, DAaaS(522)는, 이러한 요청들의 일부 또는 전부를 단일 요청으로 종합하여, 표시된 데이터 스트림에 적용하기 위해 이러한 단일 주석화 요청을 DAaaS(512)에 보낼 수 있다.
즉각적인 개시내용의 다양한 실시예들에서, DAaaS에 사용되는 프로시저들 및 대응하는 메시지들은 다양한 방식으로 구현될 수 있다. 일 실시예에서, DAaaS 메시지들 및 프로시저들은, HTTP(HyperText Transfer Protocol), SoAP(Simple object Access Protocol), CoAP(Constrained object Application Protocol), 또는 임의의 다른 프로토콜과 같은, 다양한 상이한 더 하위 레이어 프로토콜들에 결속되는 서비스 레이어 프리미티브들로서 구현될 수 있다. 대안적으로, DAaaS 메시지들 및 프로시저들은 HTTP 및 CoAP와 같은 애플리케이션 프로토콜들의 페이로드들 및 다른 것들을 사용하여 구현될 수 있다. 다른 실시예에서, 메시지들 및 프로시저들은 HTTP 및 CoAP와 같은 애플리케이션 프로토콜들의 프로토콜 헤더 옵션들 및 다른 것들로서 구현될 수 있다. 대안적으로, DAaaS 메시지들 및 프로시저들은 OMA(Open Mobile Alliance) DM(Device Management) 프로토콜과 같은 디바이스 관리 프로토콜들 및 다른 것들을 사용하여 구현될 수 있다. 또 다른 대안에서, DAaaS 메시지들 및 프로시저들은 무선 셀룰러 네트워크에서 SMS(Short Message Service)를 사용하여 구현될 수 있다. 모든 이러한 실시예들은 본 개시내용의 범위 내의 것으로서 고려된다.
도 6은 ADA(Automatic Data Annotation)에 대한 예시적인 신호들 및 프로시저들을 도시하는 예시적이지만 비제한적인 신호 흐름(600)을 도시한다. ADA는 데이터 주석화 구성 단계(660) 및 데이터 수집 및 주석화 단계(670)를 포함할 수 있으며, 먼저 단계(660)를 수행하지 않고 단계(670)가 수행될 수 있다.
데이터 주석화 구성 단계(660)에서는, 일부 실시예들에서, IoT 서버일 수 있는, IoT 노드(650)가, 일부 실시예들에서, IoT 게이트웨이일 수 있는, IoT 노드(640)에 데이터 주석화 구성 요청(661)을 보낼 수 있다. 데이터 주석화 구성 요청(661)은, IoT 노드(640)가 수집하여 주석화할 데이터 스트림들, IoT 노드(640)가 주석화 개념들 및/또는 데이터를 취득하기 위해 수집하여 분석할 데이터 스트림들, 및/또는 IoT 노드(640)가 데이터 주석화(예를 들어, 아이템 레벨 주석화, 윈도 레벨 주석화, 스트림 레벨 주석화, 크로스 스트림 주석화, 크로스 파셜 스트림 주석화 등)를 수행할 레벨 및 데이터 스트림을 포함할 수 있다. 예를 들어, IoT 노드(640)는 IoT 노드(610) 및 IoT 노드(620)에서 나오는 데이터 스트림들로부터 결정될 주석화 개념들 및/또는 데이터에 기초하여 IoT 노드(630)로부터 송신되는 데이터 스트림을 주석화할 것을 요청받을 수 있다.
데이터 주석화 구성 요청(661)을 수신하면, IoT 노드(640)는, 데이터 주석화 구성 요청(661)에서의 명령어들에 따라, IoT 노드(630)로부터 송신되는 데이터 스트림을 주석화하기 위해서, 데이터 주석화 개념들 및/또는 데이터의 분석 및 결정을 위해 IoT 노드(620)로부터의 데이터 스트림에 관련되는 데이터 스트림 또는 데이터를 수집할 필요가 있다는 것을 결정할 수 있다. 이에 응답하여, IoT 노드(640)는, IoT 노드(620)가 데이터 요청(662)에 명시되는 데이터에 응답하도록 지시하는 데이터 요청(662)을 IoT 노드(620)에 보낼 수 있다. 데이터 요청(662)은, IoT 노드(620)가, 이하 더욱 상세히 설명되는, 데이터 보고(671)에서 IoT 노드(640)에 요청된 데이터를 보고할 수 있게 할 수 있다. IoT 노드(620)는, 데이터 요청(662)을 수신하면, 데이터 요청(662)의 수신을 수신확인하는 수신확인(663)을 IoT 노드(640)에 보낼 수 있다.
유사하게, 데이터 주석화 구성 요청(661)을 수신하면, IoT 노드(640)는, 데이터 주석화 구성 요청(661)에서의 명령어들에 따라, IoT 노드(630)로부터 송신되는 데이터 스트림을 주석화하기 위해서, 데이터 주석화 개념들 및/또는 데이터의 분석 및 결정을 위해 IoT 노드(610)로부터의 데이터 스트림에 관련되는 데이터 스트림 또는 데이터를 수집할 필요가 있다는 것을 결정할 수 있다. 이에 응답하여, IoT 노드(640)는, IoT 노드(610)가 데이터 요청(664)에 명시되는 데이터에 응답하도록 지시하는 데이터 요청(664)을 IoT 노드(610)에 보낼 수 있다. 요청되는 데이터는 IoT 노드(610 및 620) 각각에 대해 상이할 수 있다는 점에 주목하자. 데이터 요청(664)은, IoT 노드(610)가, 이하 더욱 상세히 설명되는, 데이터 보고(672)에서 IoT 노드(640)에 요청된 데이터를 보고할 수 있게 할 수 있다. IoT 노드(610)는, 데이터 요청(664)을 수신하면, 데이터 요청(664)의 수신을 수신확인하는 수신확인(665)을 IoT 노드(640)에 보낼 수 있다.
IoT 노드(610) 및 IoT 노드(620)로부터 수신확인들을 수신하면, IoT 노드(640)는 데이터 주석화 구성 응답(666)을 IoT 노드(510)에 보낼 수 있다.
데이터 수집 및 주석화 단계(670)에서, IoT 노드(620)는 데이터 요청(662)에서 요청된 데이터를 데이터 보고(671)에서 IoT 노드(640)에 보낼 수 있다. 마찬가지로, IoT 노드(610)는 데이터 요청(664)에서 요청된 데이터를 데이터 보고(672)에서 IoT 노드(640)에 송신할 수 있다. 블럭 673에서, IoT 노드(640)는 IoT 노드(610) 및 IoT 노드(620)로부터 수신되는 데이터 스트림들 및/또는 다른 데이터들 분석하여 주석화 개념들 및/또는 데이터를 결정할 수 있다.
IoT 노드(640)는 데이터 보고(674)로서 IoT 노드(630)로부터 데이터 스트림을 수신할 수 있다. 이는 IoT 노드(640)가 데이터 주석화 구성 요청(661)을 수신한 이후 즉시를 포함하는 임의의 시점에서 발생할 수 있다는 점에 주목하자. 예를 들어, 데이터 주석화 구성 요청(661)을 수신하면, IoT 노드(640)는, 필요하면, IoT 노드(630)의 데이터 스트림을 주석화하여 IoT 노드(630)의 주석화된 데이터 스트림을 송신하는 준비로, IoT 노드(630)로부터 데이터 스트림을 수신하여 버퍼링하기 시작할 것을 요청할 수 있다.
블럭 675에서, IoT 노드(640)는 블럭들 673에 결정된 바와 같이 취득된 및/또는 결정된 주석화 개념들 및/또는 데이터에 기초하여 IoT 노드(630)로부터 수신되는 데이터 스트림을 주석화한다. IoT 노드(640)는 주석화된 데이터 스트림을 하나 이상의 IoT 엔티티들(도시되지 않음)에 후속하여 송신할 수 있다. 블럭 676에서, IoT 노드(640)는 주석화된 데이터 스트림 및 결정된 주석화 개념을 저장할 수 있다. IoT 노드(640)는 또한, 또는 그 대신에, 주석화된 데이터 스트림을 다른 IoT 노드들에 전달할 수 있다.
도 7은 RDA(Requested Data Annotation)에 대한 예시적인 신호들 및 프로시저들을 도시하는 예시적이지만 비제한적인 신호 흐름(700)을 도시한다. 일부 실시예들에서, IoT 애플리케이션일 수 있는, 주석화 요청기(730)와 같은, 주석화 요청기는, IoT 서버일 수 있는 IoT 노드(720)와 같은, 다른 노드에 저장되는 데이터에 주석들을 추가할 것을 요청한다.
주석화 요청기(730)는 데이터 주석화 요청(741)을 IoT 노드(720)에 보낼 수 있다. 일부 실시예들에서, 데이터 주석화 요청(741)은 다수의 주석화 엘리먼트들을 포함할 수 있다. 각각의 주석화 엘리먼트는 상이한 데이터(예를 들어, 데이터 아이템들, 데이터 윈도우들, 데이터 스트림들, 파셜 데이터 스트림들 등)에 대한 주석들을 요청할 수 있다. 각각의 주석화 엘리먼트는, 주석화 될 특정한 데이터 스트림(들), 주석화 될 특정 데이터 아이템(들), 및/또는 주석화 될 특정 데이터 윈도우(들)와 같은 데이터를 포함할 수 있다.
데이터 주석화 요청(741)은 또한, 또는 그 대신에, 사용될 주석화의 레벨을 나타낼 수 있다. 예를 들어, 데이터 주석화 요청(741)은, 아이템 레벨 주석화, 윈도 레벨 주석화, 스트림 레벨 주석화, 크로스 파셜 스트림 레벨 주석화, 및/또는 크로스 스트림 할당을 사용하는 명령어를 포함할 수 있다.
데이터 주석화 요청(741)은 또한, 또는 그 대신에, 사용될 주석화 개념 또는 데이터를 나타낼 수 있다. 예를 들어, 데이터 주석화 요청(741)은 표시된 데이터 스트림을 주석화하는데 사용될 주석화 개념 또는 데이터를 명시적으로 나타낼 수 있다. 대안적으로, 또는 추가로, 데이터 주석화 요청(741)은, IoT 개념 서버(710)와 같은, IoT 개념 서버에 저장될 수 있는 하나 이상의 주석화 개념들 또는 데이터에 포인팅하는 하나 이상의 링크들을 포함할 수 있다. 대안적으로, 또는 추가로, 데이터 주석화 요청(741)은 주석화 개념들 또는 데이터가 결정 및/또는 취득될 수 있는 기존 데이터 스트림들을 나타낼 수 있다. 대안적으로, 또는 추가로, 데이터 주석화 요청(741)은 표시된 데이터 스트림(들)의 주석화에 적절한 개념들 및/또는 데이터를 IoT 노드(720)가 선택 및/또는 결정할 것에 대한 요청을 포함할 수 있다.
블럭 742에서, IoT 노드(720)는 데이터 주석화 요청(741)을 분석할 수 있다. 위에 언급된 바와 같이, 데이터 주석화 요청(741)은 IoT 개념 서버(710)에 저장된 하나 이상의 기존 개념들 또는 데이터에 대한 링크를 포함할 수 있다. 그렇다면, IoT 노드(720)는, 데이터 주석화 요청(741)에 표시되는 특정 개념들 및/또는 데이터를 포함하는 응답을 요청하는 IoT 개념 서버(710)에 주석화 개념 요청(743)을 보낼 수 있다. 이러한 실시예에서, IoT 개념 서버(710)는, 주석화 개념 요청(743)을 수신하는 것에 응답하여 IoT 노드(720)에 주석화 개념 응답(744)을 보낼 수 있다.
블럭 745에서, IoT 노드(720)는, 데이터 주석화 요청(741)에 표시되는 데이터 아이템들, 데이터 윈도우들, 데이터 스트림들 및/또는 파셜 스트림들을 주석화하는데, 데이터 주석화 요청(741) 및/또는 IoT 개념 서버(710)로부터 취득되는 주석화 개념들 및/또는 데이터를 사용할 수 있다. 후속하여, IoT 노드(720)는 주석화가 성공적이었는지 여부를 나타내는 데이터 주석화 응답(746)을 주석화 요청기(730)에 보낼 수 있다.
도 8은 RDA(Requested Data Annotation)에 대한 다른 예시적인 신호들 및 프로시저들을 도시하는 예시적이지만 비제한적인 신호 흐름(800)을 도시한다. 이러한 실시예에서, IoT 게이트웨이와 같은, IoT 노드는, IoT 서버와 같은, 다른 IoT 노드가 요청 IoT 노드 상에 저장되는 데이터에 주석들을 추가할 것을 요청할 수 있다. 예를 들어, IoT 게이트웨이일 수 있는, IoT 노드(830)는, IoT 서버일 수 있는, IoT 노드(820)에 데이터 주석화 요청(841)을 보낼 수 있다. 데이터 주석화 요청(841)은, 각각이 상이한 데이터에 대한 상이한 주석들을 요청할 수 있는, 하나 이상의 주석화 엘리먼트들을 포함할 수 있다. 각각의 주석화 엘리먼트는, 주석화될 IoT 노드(830) 상의 데이터 스트림(들) 및 이러한 데이터 스트림들 각각에 관한 요약 정보(예를 들어, 데이터 스트림의 설명), 및 주석화될 특정 데이터 아이템들, 윈도우들, 스트림들 및/또는 파셜 스트림들을 나타내는 데이터를 포함할 수 있다.
블럭 842에서, IoT 노드(820)는, 데이터 주석화 요청(841)을 분석하여, 적절한 주석화 개념 및/또는 데이터, IoT 노드(830)에 의해 사용될 주석화 레벨, 및/또는 그로부터 주석화 개념을 취득할 주석화 개념 엔티티를 결정할 수 있다. IoT 노드(820)는, 일 실시예에서 요청(841)에 기초하여 주석화 개념 엔티티를 결정하면, 또는 주석화 개념 엔티티를 결정하는데 일부 다른 수단들을 사용하면, 데이터 주석화 요청(841)에 관련되는 개념들 및/또는 데이터를 요청하는 주석화 개념 요청(843)을 IoT 의미론적 개념 서버(810)에 보낼 수 있다. IoT 노드(820)는 주석화 개념 응답(844)에서 IoT 의미론적 개념 서버(810)로부터 주석화 개념들 및/또는 데이터를 수신할 수 있다.
블럭 845에서, IoT 노드(820)는, 일부 실시예들에서 적어도 일부, IoT 의미론적 개념 서버(810)로부터 수신되는 데이터 및/또는 데이터 주석화 요청(841)에서의 데이터로부터 기초하여, 데이터 주석화 요청(841)에 의해 표시되는 데이터 스트림들에 대한 데이터 주석화 결과들을 결정할 수 있다. 일부 실시예들에서, IoT 노드(820)는, 데이터 주석화 요청(841)에서 제공되는 각 주석화 엘리먼트에 대해 어느 특정 데이터 아이템, 윈도우, 스트림 등에 적용될 주석화 개념 및/또는 데이터를 결정한다.
주석화 개념이 결정되면, IoT 노드(820)는 다수의 주석화 결과 엘리먼트들을 포함할 수 있는 데이터 주석화 응답(846)을 IoT 노드(830)에 보낼 수 있다. 각각의 주석화 결과 엘리먼트는 데이터 주석화 요청(841)에 명시되는 각각의 주석화 엘리먼트와 관련되는 데이터 아이템/윈도우/스트림에 추가될 개념 및/또는 데이터를 포함할 수 있다. 일부 실시예들에서, 데이터 주석화 응답(846) 내의 주석화 결과 엘리먼트(들)는 사용될 주석화 개념 및/또는 데이터를 명시적으로 나타낼 수 있다. 다른 실시예들에서 데이터 주석화 응답(846) 내의 주석화 결과 엘리먼트(들)는, IoT 의미론적 개념 서버(810)와 같은, IoT 의미론적 개념 서버에 저장되는 하나 이상의 개념 또는 데이터에 포인팅하는 링크를 제공할 수 있다. 또 다른 실시예들에서, 데이터 주석화 응답(846) 내의 주석화 결과 엘리먼트(들)는, 그로부터 주석화 개념들이 결정 및/또는 취득될 수 있는 기준 데이터 스트림들을 나타낼 수 있다. 블럭 847에서, IoT 노드(830)는 적절한 데이터 아이템들, 데이터 윈도우들, 및/또는 데이터 스트림들에 주석화를 적용한다. 일부 실시예들에서, IoT 노드(820)는 주석화 결과들을 IoT 노드(830)에 선조치로 보낼 수 있고, 이러한 경우에는 데이터 주석화 결과(841)를 보낼 및/또는 블럭(842)의 처리를 수행할 필요가 없을 수 있다는 점에 주목하자.
도 9는 주석화 개념 관리에 대한 예시적인 신호들 및 프로시저들을 도시하는 예시적이지만 비제한적인 신호 흐름(900)을 도시한다. IoT 디바이스, 게이트웨이, 또는 서버일 수 있는, IoT 노드(920)는, IoT 의미론적 개념 서버(910)에 주석화 개념 액세스 요청(931)을 보낼 수 있다. 주석화 개념 액세스 요청(931)은, 하나 이상의 주석화 개념들 또는 데이터의 발견, 하나 이상의 주석화 개념들 또는 데이터의 추가, 하나 이상의 주석화 개념들 또는 데이터의 삭제, 하나 이상의 주석화 개념들 또는 데이터 검색, 및/또는 하나 이상의 주석화 개념들 또는 데이터의 업데이트와 같은, IoT 의미론적 개념 서버(910)에서의 다양한 개념 동작들을 수행하는데 사용될 수 있다. 다른 추가적인 동작들은, 다수의 개념들 및/또는 데이터를 조합하는 것 및 다수의 개념들 및/또는 데이터간 상관들을 결정하는 것을 포함할 수 있다. IoT 의미론적 개념 서버(910)는 주석화 개념 액세스 요청(931)의 성공 또는 실패를 나타내는 주석화 개념 액세스 요청 응답(932)을 IoT 노드(920)에 보낼 수 있다.
도 10은 M2M 서비스 플랫폼들에서 데이터 주석화를 가능하게 할 수 있는 DAaaS 아키텍처(1000)를 도시한다. DAaaS는 서비스 능력 또는 서비스 레이어 플랫폼으로서 디바이스 서비스 엔티티(예를 들어, ETIS M2M 구현들에서의 DSCL(Device Services Capability Layer) 또는 oneM2M 구현들에서의 ASN-CSE(Application Service Node Common Service Entity)), 게이트웨이 서비스 엔티티(예를 들어, ETIS M2M 구현들에서의 GSCL(Gateway Services Capability Layer) 또는 oneM2M 구현들에서의 MN-CSE(Middle Node Common Service Entity)), 및/또는 네트워크 서비스 엔티티(예를 들어, ETIS M2M 구현들에서의 NSCL(Network Services Capability Layer) 또는 oneM2M 구현들에서의 IN-CSE(Infrastructure Node Common Service Entity)) 내에 통합될 수 있다. 도 10에서, 데이터 스트림(1021)을 처리하는 중일 수 있는, 디바이스 서비스 엔티티(1020)의 DAaaS(1022)는 게이트웨이 서비스 엔티티(1030)의 DAaaS(1032)와 통신할 수 있다. 디바이스 서비스 엔티티(1040)의 DAaaS(1042)는 또한 게이트웨이 서비스 엔티티(1030)의 DAaaS(1032)와 통신할 수 있다. DA(Device Application)(1010) 및/또는 NA(Network Application)(1070)는 인터페이스들을 통해 DAaaS(1032)와 통신하여 DAaaS(1032)의 데이터 주석화 기능성들을 시작 및/또는 조작할 수 있다. DA(Device Application)(1010)는 oneM2M 구현들에서의 ADN-AE(Application Dedicated Node Application Entity)일 수 있다는 점에 주목하자. NA(Network Application)(1070)는 oneM2M 구현들에서의 IN-AE(Infrastucture Node Application Entity)일 수 있다는 점에 또한 주목하자. 의미론적 개념 서버(1051)는 네트워크 서비스 엔티티(1050) 내에 통합될 수 있다는 점에 또한 주목하자. 대안적으로, 의미론적 개념 서버(1060)는 독립형 엔티티로서 구현될 수 있다. 임의의 서비스 엔티티에서의 DAaaS는 의미론적 개념 서버(1051)과 통신하도록 구성될 수 있다.
도 11은 일부 실시예들에서 DAaaS를 지원하는데 사용될 수 있는 예시적이지만 비제한적인 리소스 구조(1100)를 도시한다. 예를 들어, 구조(1100)는 개시되는 DAaaS 실시예들을 ETSI M2M 서비스 아키텍처 내에 구현하는데 사용될 수 있다. 구조(1100)는 다른 구조들 및 구현들에 또한 사용될 수 있다.
ETSI M2M 구현에서, 다른 리소스들에 의해 공유될 수 있는 <sclBase> 및/또는 <scl> 리소스일 수 있고, oneM2M 구현에서 <CSEbase> 및/또는 <remoteCSE>일 수 있는, 베이스 리소스(1101)는, 그 중 하나가 도 11에 서브 리소스 개념(1103)으로서 도시되는, 하나 이상의 주석화 개념들 또는 주석화 데이터를 유지하는데 사용될 수 있는 하나 이상의 개념 리소스들을 포함할 수 있는 수집 리소스 개념들(1102)을 포함할 수 있다. 개념(1103)은, 데이터 아이템, 데이터 윈도우, 데이터 스트림, 및/또는 다수의 전체 또는 파셜 데이터 스트림들을 주석화 또는 레이블화하는데 사용될 수 있다. 개념(1103)은 이벤트와 관련될 수 있다는 점에 주목하자. 개념(1103)은, 그 안에 포함되는 개념(예를 들어, "한 사람이 부엌에서 점심을 준비하고 있다"), 개념(1103)이 더 이상 유효하지 않을 시간을 나타내는 만료 시간, 및 개념(1103)이 링크에 의해 표시되는 위치에 저장될 수 있는 실제 개념과 관련되는 가상 개념이라는 것을 나타내는 링크를 설명하는 설명과 같은 속성들을 포함할 수 있다. 개념(1103)의 링크 속성의 값은 URI로서 표현될 수 있다.
구조(1100)는 컨테이너들 리소스(1110)를 또한 포함할 수 있다. 컨테이너들(1100) 내에는, 데이터 아이템들, 데이터 윈도우들, 데이터 스트림들, 및/또는 다수의 전체 또는 파셜 데이터 스트림들에 추가되는 주석들을 유지하는데 사용될 수 있는 수집 리소스 주석들(1111)이 있을 수 있다. 도 11에서, 몇몇 주석들(1111) 리소스들은 주석들(1111)이 구성될 수 있는 구조(1100) 내의 다양한 위치들을 예시하도록 도시된다는 점에 주목하자. 예를 들어, 주석들(1111)은, 대안적으로, 콘텐츠 인스턴스들 수집 리소스(1116), 및/또는 콘텐츠 인스턴스 리소스와 같은, 다른 리소스들의 서브 리소스일 수 있다. 주석들(1111)은, 베이스 리소스(1101) 바로 아래에 또한 위치될 수 있고, 컨테이너들(1110), 컨테이너(1112), 콘텐츠 인스턴스들(1114), 및/또는 콘텐츠 인스턴스(1116)과 같은, 다른 리소스들에 의해 공유될 수 있다.
각각의 주석은 서브 리소스 주석(1121)(도 11에서 주석들(1111)의 우측에 도시됨)에 의해 표현될 수 있다. 각각의 주석 리소스는, 해당 주석에 대한 표기 레이블을 나타낼 수 있고, 주석의 타입을 나타내는 주석 타입(예를 들어, 위치, 시간, 사람 액티비티, 날씨, 가전제품 상태 등), 기존 개념 리소스를 식별하는 개념 ID, 주석(1121)이 생성되었던 때를 나타내는 생성 시간, 주석(1121)이 무효화될 시간을 나타내는 만료 시간, 및 주석(1121)이 추가되는 리소스를 나타내었던 타겟화된 데이터와 같은 속성들을 포함할 수 있다. 주석(1121)의 타겟화된 데이터 속성은, 컨테이너들 수집 리소스(1110) 아래에 또는 콘텐츠 인스턴스 리소스(1116) 아래에 구성되는 주석들(1111) 수집 리소스 아래에 주석(1121)이 구성될 때, 옵션일 수 있다. 컨테이너(1112)와 같은 컨테이너 리소스 아래에 구성되는 주석들(1111) 수집 리소스 아래에 주석(1121)이 구성되는 경우, 타겟화된 데이터 속성은 주석 리소스들이 추가되는 데이터 윈도우를 나타내는데 사용될 수 있다.
구조(1100)에 구성될 수 있는 다른 리소스는 데이터 스트림의 데이터 윈도우들을 정의할 수 있는 수집 리소스 윈도우들(1115)이다. 일 실시예에서, 데이터 스트림은 컨테이너 리소스에 의해 표현될 수 있고, 따라서 윈도우들(1115)은 콘텐츠 인스턴스들(1114) 수집 리소스의 서브 리소스일 수 있다. 윈도우들(1115)은 하나 이상의 윈도우(1131) 서브 리소스들을 가질 수 있고, 이들 각각은 데이터 스트림의 데이터 윈도우를 표현할 수 있다. 데이터 윈도우는 하나 또는 하나 이상의 데이터 아이템을 포함할 수 있다. 윈도우(1131)는, 윈도우(1131)에 의해 표현되는 윈도우에 포함되는 데이터 아이템들의 수를 나타내는 윈도우 사이즈, 윈도우(1131)에 의해 표현되는 윈도우에서 최초 데이터 아이템을 표현하는 시작 데이터 아이템(콘텐츠 인스턴스 리소스에 의해 표현될 수 있음), 및 윈도우(1131)에 의해 표현되는 윈도우에서 최종 데이터 아이템을 표현할 수 있는 종료 데이터 아이템(콘텐츠 인스턴스 리소스에 의해 또한 표현될 수 있음)과 같은 속성들을 가질 수 있다.
도 12a는 서비스로서의 데이터 주석화를 위한 시스템들 및 방법들 중 하나 이상의 개시되는 실시예들이 구현될 수 있는 예시적인 M2M 또는 IoT 통신 시스템(10)의 도면이다. 일반적으로, M2M 기술들은 IoT에 대한 구성 요소들을 제공하고, 임의의 M2M 디바이스, 게이트웨이, 또는 서비스 플랫폼은 IoT 뿐만 아니라 IoT 서비스 레이어 등의 컴포넌트일 수 있다.
도 12a에 도시된 바와 같이, M2M/IoT 통신 시스템(10)은 통신 네트워크(12)를 포함한다. 통신 네트워크(12)는 고정 네트워크 또는 무선 네트워크(예를 들어, WLAN, 셀룰러 등) 또는 이종 네트워크들의 네트워크일 수 있다. 예를 들어, 통신 네트워크(12)는, 음성, 데이터, 비디오, 메시징, 방송 등을 다수의 사용자들에게 제공하는 다수의 액세스 네트워크들로 구성될 수 있다. 예를 들어, 통신 네트워크(12)는, CDMA(Code Division Multiple Access), TDMA(Time Division Multiple Access), FDMA(Frequency Division Multiple Access), OFDMA(Orthogonal FDMA), SC-FDMA(Singe-Carrier FDMA) 등과 같은 하나 이상의 채널 액세스 방법들을 채택할 수 있다. 또한, 통신 네트워크(12)는, 예를 들어, 코어 네트워크, 인터넷, 센서 네트워크, 산업적 제어 네트워크, 개인 영역 네트워크, 융합된 개인 네트워크, 위성 네트워크, 홈 네트워크, 또는 기업 네트워크와 같은 다른 네트워크들을 포함할 수 있다.
도 12a에 도시된 바와 같이, M2M/IoT 통신 시스템(10)은 M2M 게이트웨이 디바이스(14) 및 M2M 단말 디바이스들(18)을 포함할 수 있다. 임의의 수의 M2M 게이트웨이 디바이스들(14) 및 M2M 단말 디바이스들(18)이 원하는 바에 따라 M2M/IoT 통신 시스템(10)에 포함될 수 있다는 점이 이해될 것이다. M2M 게이트웨이 디바이스들(14) 및 M2M 단말 디바이스들(18) 각각은 통신 네트워크(12) 또는 직접 무선 링크를 통해 신호들을 송신 및 수신하도록 구성될 수 있다. M2M 게이트웨이 디바이스(14)는 고정 네트워크 M2M 디바이스들(예를 들어, PLC) 뿐만 아니라 무선 M2M 디바이스들(예를 들어, 셀룰러 및 논-셀룰러)이, 통신 네트워크(12)와 같은, 오퍼레이터 네트워크들을 통해, 또는 직접 무선 링크를 통해 통신하게 한다. 예를 들어, M2M 디바이스들(18)은, 통신 네트워크(12) 또는 직접 무선 링크를 통해, 데이터를 수집할 수 있고, M2M 애플리케이션(20) 또는 M2M 디바이스들(18)에 송신할 수 있다. M2M 디바이스들(18)은 또한 M2M 애플리케이션(20) 또는 M2M 디바이스(18)로부터 데이터를 수신할 수 있다. 또한, 데이터 및 신호들은, 이하 설명되는 바와 같이, M2M 서비스 플랫폼(22)을 통해 M2M 애플리케이션(20)에 송신될 수 있고 이로부터 수신될 수 있다. M2M 디바이스들(18) 및 게이트웨이들(14)은, 예를 들어, 셀룰러, WLAN, WPAN(예를 들어, 지그비(Zigbee), 6LoWPAN, 블루투스(Bluetooth)), 직접 무선 링크, 및 유선을 포함하는 다양한 네트워크들을 통해 통신할 수 있다. DAaaS를 구현하는 엔티티들, 주석화 요청기들, 엔티티들을 생성하는 데이터 스트림, 개념 서버들, IoT 노드들, 센서들, 및 본 명세서에 제시되는 임의의 다른 엔티티들 및 디바이스들과 같은, 본 명세서에서 설명되는 엔티티들 중 임의의 것은, M2M 디바이스들(18), 게이트웨이들(14), 및 서비스 플랫폼(22)과 같은 디바이스들 상에서, 일부가 또는 전부가, 구현되거나, 실행되거나, 또는 다른 방식으로 가능하게 될 수 있다. 모든 이러한 실시예들은 본 개시내용의 범위 내의 것으로서 고려된다.
도시된 M2M 서비스 플랫폼(22)은, M2M 애플리케이션(20), M2M 게이트웨이 디바이스들(14), M2M 단말 디바이스들(18), 및 통신 네트워크(12)에 대한 서비스들을 제공한다. M2M 서비스 플랫폼(22)은 원하는 바에 따라 임의의 수의 M2M 애플리케이션들, M2M 게이트웨이 디바이스들(14), M2M 단말 디바이스들(18), 및 통신 네트워크들(12)과 통신할 수 있다는 점이 이해될 것이다. M2M 서비스 플랫폼(22)은, 하나 이상의 서버들, 컴퓨터들 등에 의해 구현될 수 있다. M2M 서비스 플랫폼(22)은, M2M 단말 디바이스들(18) 및 M2M 게이트웨이 디바이스들(14)의 관리 및 모니터링과 같은 서비스들을 제공한다. M2M 서비스 플랫폼(22)은, 또한, 데이터를 수집하여, 상이한 타입들의 M2M 애플리케이션들(20)과 호환될 수 있도록 데이터를 변환할 수 있다. M2M 서비스 플랫폼(22)의 기능들은, 예를 들어, 웹 서버로서, 셀룰러 코어 네트워크에서, 클라우드에서 등 다양한 방식들로 구현될 수 있다.
또한, 도 12b를 참조하면, M2M 서비스 플랫폼은, 다양한 애플리케이션들 및 버티컬들(verticals)이 영향을 줄 수 있는 서비스 전달 능력들의 코어 세트를 제공하는 서비스 레이어(26)(예를 들어, 본 명세서에 설명되는 바와 같은 NSCL(Network Service Capability Layer))를 통상적으로 구현한다. 이러한 서비스 능력들은, M2M 애플리케이션들(20)이, 디바이스들과 상호작용하여, 데이터 수집, 데이터 분석, 디바이스 관리, 보안, 빌링(billing), 서비스/디바이스 발견 등과 같은 기능들을 수행할 수 있게 한다. 본질적으로, 이러한 서비스 능력들은 이러한 기능들을 구현하는 부담에서 애플리케이션들을 자유롭게 하며, 따라서 애플리케이션 개발을 단순하게 하며, 시장에 대한 비용 및 시간을 줄여준다. 서비스 레이어(26)는, 또한, M2M 애플리케이션들(20)이, 서비스 레이어(26)가 제공하는 서비스들과 관련하여 다양한 네트워크들(12)을 통해 통신할 수 있게 한다.
일부 실시예들에서, M2M 애플리케이션들(20)은 서비스로서의 데이터 주석화를 위한 시스템들 및 방법들의 개시된 것들을 사용할 수 있는 디바이스들을 포함하는 하나 이상의 피어-투-피어 네트워크들의 생성을 위한 기초를 형성하는 바람직한 애플리케이션들을 포함할 수 있다. M2M 애플리케이션들(20)은, 이에 제한되는 것은 아니지만, 수송, 건강 및 건강관리, 접속된 가정, 에너지 관리, 자산 추적, 및 보안 및 감시와 같은, 다양한 산업들에서의 애플리케이션들을 포함할 수 있다. 위에 언급된 바와 같이, 시스템의 디바이스들, 게이트웨이들, 및 다른 서버들에 걸쳐 실행되는, M2M 서비스 레이어는, 예를 들어, 데이터 수집, 디바이스 관리, 보안, 빌링(billing), 위치 추적/지오펜싱(geofencing), 디바이스/서비스 발견, 및 레거시 시스템들 통합과 같은 기능들을 지원하고, 이러한 기능들을 서비스들로서 M2M 애플리케이션들(20)에 제공한다. 설명된 서비스 레이어 및 오브젝트들이 상호작용하는 애플리케이션들은 M2M 애플리케이션들(20)의 것들과 같은 애플리케이션들일 수 있다.
도 12c는, 예를 들어, M2M 단말 디바이스(18) 또는 M2M 게이트웨이 디바이스(14)와 같은, 예시적인 M2M 디바이스(30)의 시스템 도면이다. 도 12c에 도시된 바와 같이, M2M 디바이스(30)는, 프로세서(32), 송수신기(34), 송신/수신 엘리먼트(36), 스피커/마이크로폰(38), 키패드(40), 디스플레이/터치패드/인디케이터들(예를 들어, 하나 이상의 LED들(Light Emitting Diodes))(42), 비-분리형 메모리(44), 분리형 메모리(46), 전원(48), GPS(Global Positioning System) 칩셋(50), 및 다른 주변기기들(52)을 포함할 수 있다. M2M 디바이스(40)는 실시예에 부합하면서 전술한 엘리먼트들의 임의의 서브-조합을 포함할 수 있다는 점이 이해될 것이다. 이러한 디바이스는 서비스로서의 데이터 주석화를 위해 개시된 시스템들 및 방법들을 사용하는 디바이스일 수 있다.
프로세서(32)는, 범용 프로세서, 특수 목적 프로세서, 종래의 프로세서, DSP(Digital Signal Processor), 복수의 마이크로프로세서들, DSP 코어와 관련된 하나 이상의 마이크로프로세서들, 컨트롤러, 마이크로컨트롤러, 하나 이상의 ASIC들(Application Specific Integrated Circuits), 하나 이상의 FPGA(Field Programmable Gate Array) 회로들, 임의의 다른 타입 및 수의 IC들(Integrated Circuits), 상태 머신 등일 수 있다. 프로세서(32)는, 신호 코딩, 데이터 처리, 전력 제어, 입력/출력 처리, 및/또는 M2M 디바이스(30)가 무선 환경에서 동작할 수 있게 하는 임의의 다른 기능을 수행할 수 있다. 프로세서(32)는 송신/수신 엘리먼트(36)에 연결될 수 있는 송수신기(34)에 연결될 수 있다. 도 12c는 프로세서(32)와 송수신기(34)를 별도의 컴포넌트들로서 묘사하지만, 프로세서(32)와 송수신기(34)는 전자 패키지 또는 칩 내에 함께 통합될 수 있다는 점이 이해될 것이다. 프로세서(32)는 애플리케이션-레이어 프로그램들(예를 들어, 브라우저들) 및/또는 RAN(Radio Access-Layer) 프로그램들 및/또는 통신을 수행할 수 있다. 프로세서(32)는, 예를 들어, 액세스 레이어 및/또는 애플리케이션 레이어에서와 같은, 인증, 보안 키 승낙, 및/또는 암호화 동작들과 같은, 보안 동작들을 수행할 수 있다.
송신/수신 엘리먼트(36)는 M2M 서비스 플랫폼(9)에 신호들을 송신하도록, 및/또는 이로부터의 신호들을 수신하도록 구성될 수 있다. 예를 들어, 일 실시예에서, 송신/수신 엘리먼트(36)는 RF 신호들을 송신 및/또는 수신하도록 구성되는 안테나일 수 있다. 송신/수신 엘리먼트(36)는, WLAN, WPAN, 셀룰러 등과 같은, 다양한 네트워크들 및 에어 인터페이스들을 지원할 수 있다. 일 실시예에서, 송신/수신 엘리먼트(36)는, 예를 들어, IR, UV, 또는 가시광 신호들을 송신 및/또는 수신하도록 구성되는 이미터/검출기일 수 있다. 또 다른 실시예에서, 송신/수신 엘리먼트(36)는 RF 및 광 신호들 양자 모두를 송신 및 수신하도록 구성될 수 있다. 송신/수신 엘리먼트(36)는 무선 또는 유선 신호들의 임의의 조합을 송신 및/또는 수신하도록 구성될 수 있다는 점이 이해될 것이다.
또한, 송신/수신 엘리먼트(36)가 단일 엘리먼트로서 도 12c에 묘사되지만, M2M 디바이스(30)는 임의의 수의 송신/수신 엘리먼트들(36)을 포함할 수 있다. 보다 구체적으로, M2M 디바이스(30)는 MIMO 기술을 채택할 수 있다. 따라서, 일 실시예에서, M2M 디바이스(30)는 무선 신호들을 송신 및 수신하기 위한 2개 이상의 송신/수신 엘리먼트들(36)(예를 들어, 다수의 안테나들)을 포함할 수 있다.
송수신기(34)는, 송신/수신 엘리먼트(36)에 의해 송신될 신호들을 변조하도록, 및 송신/수신 엘리먼트(36)에 의해 수신되는 신호들을 복조하도록 구성될 수 있다. 위에 언급된 바와 같이, M2M 디바이스(30)는 다수 모드의 능력들을 가질 수 있다. 따라서, 송수신기(34)는, M2M 디바이스(30)가, 예를 들어, UTRA 및 IEEE 802.11과 같은, 다수의 RAT들을 통해 통신할 수 있게 하는 다수의 송수신기들을 포함할 수 있다.
프로세서(32)는, 비-분리형 메모리(44) 및/또는 분리형 메모리(46)와 같은, 임의의 타입의 적절한 메모리로부터 정보를 액세스할 수 있고, 거기에 데이터를 저장할 수 있다. 비-분리형 메모리(44)는, RAM(Random-Access Memory), ROM(Read- Only Memory), 하드 디스크, 또는 다른 타입의 메모리 스토리지 디바이스를 포함할 수 있다. 분리형 메모리(46)는, SIM(Subscriber Identity Module) 카드, 메모리 스틱, SD(Secure Digital) 메모리 카드 등을 포함할 수 있다. 다른 실시예들에서, 프로세서(32)는, 서버 또는 가정용 컴퓨터와 같은, M2M 디바이스(30) 상에 물리적으로 위치되지 않는 메모리로부터 정보를 액세스할 수 있고, 거기에 데이터를 저장할 수 있다. 프로세서(32)는, 본 명세서에서 제시된 실시예들의 일부에서 설명되는 것들과 같은, 다양한 조건들 및 파라미터들에 응답하여, 디스플레이 또는 인디케이터들(42) 상의 점등 패턴들, 이미지들 또는 컬러들을 제어하도록 구성될 수 있다.
프로세서(32)는, 전원(48)으로부터 전력을 수신할 수 있고, M2M 디바이스(30) 내의 다른 컴포넌트들에 전력을 분배 및/또는 제어하도록 구성될 수 있다. 전원(48)은 M2M 디바이스(30)에 전력을 공급하에 적절한 임의의 디바이스일 수 있다. 예를 들어, 전원(48)은, 하나 이상의 드라이 셀 배터리들(예를 들어, 니켈-카드뮴(NiCd), 니켈-아연(NiZn), 니켈 금속 수소화물(NiMH), 리튬-이온(Li-이온) 등), 태양광 전지들, 연료 전지들 등을 포함할 수 있다.
프로세서(32)는, 또한, M2M 디바이스(30)의 현재 위치에 관한 위치 정보(예를 들어, 경도와 위도)를 제공하도록 구성될 수 있는, GPS 칩셋(50)에 연결될 수 있다. M2M 디바이스(30)는, 일 실시예에 부합하면서, 임의의 적절한 위치-결정 방법에 의해 위치 정보를 취득할 수 있다는 점이 이해될 것이다.
프로세서(32)는 다른 주변기기들(52)에 더 연결될 수 있는데, 이러한 주변기기들은, 추가적 특징들, 기능, 및/또는 유선 또는 무선 접속을 제공하는 하나 이상의 소프트웨어 및/또는 하드웨어 모듈들을 포함할 수 있다. 예를 들어, 주변기기들(52)은, 가속도계, e-컴파스, 위성 송수신기, 센서, (사진들 또는 비디오를 위한) 디지털 카메라, USB(Universal Serial Bus) 포트, 진동 디바이스, 텔레비전 송수신기, 핸즈 프리 헤드셋, Bluetooth® 모듈, FM(Frequency Modulated) 무선 유닛, 디지털 음악 플레이어, 미디어 플레이어, 비디오 게임 플레이어 모듈, 인터넷 브라우저 등을 포함할 수 있다.
도 12d는, 예를 들어, 도 12a 및 도 12b의 M2M 서비스 플랫폼(22)이 구현될 수 있는 예시적인 컴퓨팅 시스템(90)의 블럭도이다. 컴퓨팅 시스템(90)은, 컴퓨터 또는 서버를 포함할 수 있고, 주로 컴퓨터 판독가능 명령어들에 의해 제어될 수 있는데, 이러한 컴퓨터 판독가능 명령어들은, 소프트웨어의 형태일 수 있거나, 이러한 소프트웨어가 저장되거나 액세스되는, 어디서든지, 또는 어느 것에 의해 있을 수 있다. 이러한 컴퓨터 판독가능 명령어들은, 컴퓨팅 시스템(90)으로 하여금 작업하게 하도록 CPU(Central Processing Unit)(91) 내에서 실행될 수 있다. 많은 알려진 워크스테이션들, 서버들, 및 퍼스널 컴퓨터들에서, 중앙 처리 유닛(91)은 마이크로프로세서라 불리우는 단일 칩 CPU에 의해 구현된다. 다른 머신들에서, 중앙 처리 유닛(91)은 다수의 프로세서들을 포함할 수 있다. 코프로세서(81)는, 메인 CPU(91)와는 구별되며, 추가적 기능들을 수행하거나 또는 CPU(91)를 도와주는 옵션의 프로세서이다. CPU(91) 및/또는 코프로세서(81)는, 서비스로서의 데이터 주석화를 위해 개시되는 시스템들 및 방법들에 관련된 데이터를, 수신하고, 생성하고, 처리할 수 있다.
동작시에, CPU(91)는, 명령어들을, 페치, 디코딩, 및 실행하고, 컴퓨터의 메인 데이터 전송 경로, 시스템 버스(80)를 통해 다른 리소스들에 및 이들로부터 정보를 전송한다. 이러한 시스템 버스는, 컴퓨팅 시스템(90) 내의 컴포넌트들을 접속시키고, 데이터 교환을 위한 매체를 정의한다. 시스템 버스(80)는, 데이터를 보내기 위한 데이터 라인들, 어드레스들을 보내기 위한 어드레스 라인들, 인터럽트들을 보내고 시스템 버스를 동작시키기 위한 제어 라인들을 통상적으로 포함한다. 이러한 시스템 버스(80)의 일 예는 PCI(Peripheral Component Interconnect) 버스이다.
시스템 버스(80)에 연결되는 메모리 디바이스들은 RAM(Random Access Memory)(82) 및 ROM(Read Only Memory)(93)을 포함한다. 이러한 메모리들은 정보가 저장 및 검색되게 하는 회로를 포함한다. ROM들(93)은 쉽게 수정될 수 없는 저장된 데이터를 일반적으로 포함한다. RAM(82)에 저장되는 데이터는 CPU(91) 또는 다른 하드웨어 디바이스들에 의해 판독 또는 변경될 수 있다. RAM(82) 및/또는 ROM(93)에 대한 액세스는 메모리 제어기(92)에 의해 제어될 수 있다. 메모리 제어기(92)는 명령어들이 실행될 때 가상 어드레스들을 물리적 어드레스들로 변환하는 어드레스 변환 기능을 제공할 수 있다. 메모리 제어기(92)는, 또한, 시스템 내의 프로세스들을 격리시키고, 시스템 프로세스들을 사용자 프로세스들로부터 격리시키는 메모리 보호 기능을 제공할 수 있다. 따라서, 제1 모드에서 실행하는 프로그램은 자기 자신의 프로세스 가상 어드레스 공간에 의해 맵핑되는 메모리만을 액세스할 수 있다; 프로세스들 사이에 공유하는 메모리가 셋업되지 않으면 다른 프로세스의 가상 어드레스 공간 내의 메모리를 액세스할 수 없다.
또한, 컴퓨팅 시스템(90)은, 프린터(94), 키보드(84), 마우스(95), 및 디스크 드라이브(85)와 같은, 주변기기들에 CPU(91)로부터의 명령어들을 통신하는 것을 담당하는 주변기기 제어기(83)를 포함할 수 있다.
디스플레이 제어기(96)에 의해 제어되는 디스플레이(86)는, 컴퓨팅 시스템(90)에 의해 생성되는 가시적 출력을 디스플레이하는데 사용된다. 이러한 가시적 출력은, 텍스트, 그래픽, 애니메이션 그래픽, 및 비디오를 포함할 수 있다. 디스플레이(86)는, CRT 기반의 비디오 디스플레이, LCD 기반의 평면 패널 디스플레이, 가스 플라즈마 기반의 평면 패널 디스플레이, 또는 터치 패널로 구현될 수 있다. 디스플레이 제어기(96)는 디스플레이(86)에 보내어지는 비디오 신호를 생성하는데 요구되는 전자 컴포넌트들을 포함한다.
또한, 컴퓨팅 시스템(90)은, 도 12a 및 도 12b의 네트워크(12)와 같은, 외부 통신 네트워크에 컴퓨팅 시스템(90)을 접속하는 데 사용될 수 있는 네트워크 어댑터(97)를 포함할 수 있다. 일 실시예에서, 네트워크 어댑터(97)는 서비스로서의 데이터 주석화를 위해 개시되는 시스템들 및 방법들에 관련되는 데이터를 수신 및 송신할 수 있다.
본 명세서에 설명되는 시스템들, 방법들, 및 처리들 중 임의의 것 또는 모두는, 물리적 디바이스 또는 장치로서 구현되는 컴퓨터 판독가능 스토리지 매체 상에 저장되는 컴퓨터 실행가능 명령어들(즉 프로그램 코드)의 형태로 구현될 수 있다는 점이 이해된다. 이러한 명령어들은, 컴퓨터, 서버, M2M 단말 디바이스, M2M 게이트웨이 디바이스 등과 같은, 머신에 의해, 또는 머신 내에 구성되는 프로세서에 의해 실행될 때, 본 명세서에 설명되는 시스템들, 방법들, 및 프로세스들을 유발, 수행, 및/또는 구현한다. 특히, 위에 설명된 단계들, 동작들, 또는 기능들 중 임의의 것이 이러한 컴퓨터 실행가능 명령어들의 형태로 구현될 수 있다. 컴퓨터 판독가능 저장 매체는, 정보의 저장을 위해 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 분리형 및 비-분리형 매체 양자 모두를 포함하지만, 이러한 컴퓨터 판독가능 저장 매체는 신호들을 포함하는 것은 아니다. 컴퓨터 판독가능 저장 매체는, RAM, ROM, EEPROM, 플래시 메모리, 또는 다른 메모리 기술, CDROM, DVD(Digital Versatile Disk) 또는 다른 광 디스크 스토리지, 자기 카세트들, 자기 테이프, 자기 디스크 스토리지 또는 다른 자기 스토리지 디바이스들, 또는 원하는 정보를 저장하는데 사용될 수 있고 컴퓨터에 의해 액세스될 수 있는 임의의 다른 물리적 매체를 포함하지만, 이에 제한되는 것은 아니다.
본 개시내용의 대상의 바람직한 실시예들을 설명함에 있어서, 도면들에 도시된 바와 같이, 명료성을 위해 특정 용어가 채택된다. 그러나, 청구되는 대상은, 그렇게 선택된 특정 용어에 제한되는 것으로 의도된 것은 아니며, 각각의 특정 엘리먼트는 유사한 목적을 달성하기 위해 유사한 방식으로 동작하는 모든 기술적 균등물을 포함한다는 점이 이해되어야 한다.
본 작성된 설명은, 최상의 모드를 포함하여, 본 발명을 개시하는, 또한 통상의 기술자가, 임의의 디바이스들 또는 시스템들을 제조하고 사용하여, 임의의 포함되는 방법들을 수행하는 것을 포함하여, 본 발명을 실시할 수 있게 하는, 예들을 사용한다. 본 발명의 특허가능한 범위는, 청구항들에 의해 정의되며, 통상의 기술자에게 떠오르는 다른 예들을 포함할 수 있다. 이러한 다른 예들은, 그들이 청구항들의 기재와 다르지 않은 구조적 엘리먼트들을 가지는 경우에 또는 그들이 청구항들의 기재와의 미미한 차이를 갖는 등가의 구조적 엘리먼들을 포함하는 경우에, 청구항들의 범위 내에 있는 것으로 의도된다.

Claims (20)

  1. 방법으로서,
    접속되는 엔티티들의 네트워크에서의 주석화 엔티티에서, 접속되는 엔티티들의 상기 네트워크에서의 제1 엔티티로부터 제1 데이터를 수신하는 단계;
    상기 주석화 엔티티에서, 접속되는 엔티티들의 상기 네트워크에서의 제2 엔티티로부터 데이터 스트림 수신하는 단계;
    상기 주석화 엔티티에서, 상기 데이터 스트림에 적용될 데이터 주석화를 결정하는 단계; 및
    상기 주석화 엔티티에서, 상기 데이터 주석화에 기초하여 상기 데이터 스트림을 주석화하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 데이터 스트림에 적용될 상기 데이터 주석화를 결정하는 단계는, 상기 제1 데이터에 기초하여, 상기 데이터 스트림에 적용될 상기 데이터 주석화를 자동으로 결정하는 단계를 포함하는 방법.
  3. 제1항에 있어서,
    접속되는 엔티티들의 상기 네트워크에서의 제3 엔티티로부터 상기 데이터 스트림을 주석화하라는 요청을 수신하는 단계를 더 포함하고,
    상기 데이터 스트림에 적용될 상기 데이터 주석화를 결정하는 단계는, 상기 데이터 스트림을 주석화하라는 요청에 응답하여, 상기 데이터 스트림에 적용될 상기 데이터 주석화를 결정하는 단계를 포함하는 방법.
  4. 제1항에 있어서,
    접속되는 엔티티들의 상기 네트워크에서의 제3 엔티티로부터 제2 데이터를 수신하는 단계를 더 포함하고,
    상기 데이터 스트림에 적용될 상기 데이터 주석화를 결정하는 단계는, 상기 제2 데이터에 기초하여, 상기 데이터 스트림에 적용될 상기 데이터 주석화를 자동으로 결정하는 단계를 포함하는 방법.
  5. 제1항에 있어서,
    접속되는 엔티티들의 상기 네트워크에서의 제3 엔티티로부터 제2 데이터를 수신하는 단계를 더 포함하고,
    상기 데이터 주석화에 기초하여 상기 데이터 스트림을 주석화하는 단계는, 상기 데이터 주석화 및 상기 제2 데이터에 기초하여, 상기 데이터 스트림을 주석화하는 단계를 포함하는 방법.
  6. 제1항에 있어서,
    접속되는 엔티티들의 상기 네트워크에서의 제3 엔티티로부터 제2 데이터를 수신하는 단계; 및
    접속되는 엔티티들의 상기 네트워크에서의 제4 엔티티로부터 상기 데이터 스트림을 주석화하라는 요청을 수신하는 단계를 더 포함하고,
    상기 데이터 스트림에 적용될 상기 데이터 주석화를 결정하는 단계는, 상기 데이터 스트림을 주석화하라는 요청에 응답하여, 상기 데이터 스트림에 적용될 상기 데이터 주석화를 결정하는 단계를 포함하는 방법.
  7. 제1항에 있어서,
    접속되는 엔티티들의 상기 네트워크에서의 제3 엔티티에 응답하여 데이터 주석화를 송신하는 단계를 더 포함하는 방법.
  8. 접속되는 엔티티들의 네트워크에서의 주석화 엔티티로서,
    컴퓨터 판독가능 명령어들을 실행하도록 적응되는 프로세서; 및
    상기 프로세서에 통신가능하게 연결되고, 컴퓨터 판독가능 명령어들을 저장하는 메모리
    를 포함하고,
    상기 컴퓨터 판독가능 명령어들은, 상기 프로세서에 의해 실행될 때, 상기 프로세서로 하여금,
    접속되는 엔티티들의 상기 네트워크에서의 제1 엔티티로부터 제1 데이터를 수신하는 단계;
    접속되는 엔티티들의 상기 네트워크에서의 제2 엔티티로부터 데이터 스트림 수신하는 단계;
    상기 데이터 스트림에 적용될 데이터 주석화를 결정하는 단계; 및
    상기 데이터 주석화에 기초하여 상기 데이터 스트림을 주석화하는 단계
    를 포함하는 동작들을 유발하게 하는 주석화 엔티티.
  9. 제8항에 있어서,
    상기 데이터 주석화에 기초하여 상기 데이터 스트림을 주석화하는 단계의 동작은 상기 데이터 주석화에 기초하여 상기 데이터 스트림 내의 적어도 하나의 데이터 아이템을 주석화하는 단계를 포함하는 주석화 관리 엔티티.
  10. 제8항에 있어서,
    상기 데이터 주석화에 기초하여 상기 데이터 스트림을 주석화하는 단계의 동작은 상기 데이터 주석화에 기초하여 상기 데이터 스트림 내의 적어도 하나의 데이터 윈도우를 주석화하는 단계를 포함하는 주석화 관리 엔티티.
  11. 제8항에 있어서,
    상기 데이터 주석화에 기초하여 상기 데이터 스트림을 주석화하는 단계의 동작은 상기 데이터 주석화에 기초하여 상기 데이터 스트림 전부를 주석화하는 단계를 포함하는 주석화 관리 엔티티.
  12. 제8항에 있어서,
    상기 데이터 주석화에 기초하여 상기 데이터 스트림을 주석화하는 단계의 동작은 상기 데이터 주석화에 기초하여 상기 데이터 스트림의 일부 및 제2 데이터 스트림의 일부를 주석화하는 단계를 포함하는 주석화 관리 엔티티.
  13. 제8항에 있어서,
    상기 데이터 스트림에 적용될 상기 데이터 주석화를 결정하는 단계의 동작은 주석화 개념 엔티티로부터 상기 데이터 주석화를 취득하는 단계를 포함하는 주석화 관리 엔티티.
  14. 제13항에 있어서,
    상기 동작들은 접속되는 엔티티들의 상기 네트워크에서의 제3 엔티티로부터 상기 데이터 스트림을 주석화하라는 요청을 수신하는 단계를 더 포함하고, 상기 요청은 상기 데이터 주석화를 포함하는 주석화 관리 엔티티.
  15. 접속되는 엔티티들의 네트워크에서의 주석화 엔티티로서,
    컴퓨터 판독가능 명령어들을 실행하도록 적응되는 프로세서; 및
    상기 프로세서에 통신가능하게 연결되고, 컴퓨터 판독가능 명령어들을 저장하는 메모리
    를 포함하고,
    상기 컴퓨터 판독가능 명령어들은, 상기 프로세서에 의해 실행될 때, 상기 프로세서로 하여금,
    주석화 엔티티로부터 제1 주석화 개념에 대한 요청을 수신하는 단계;
    주석화 개념 엔티티에 제2 주석화 개념에 대한 요청을 송신하는 단계;
    상기 주석화 개념 엔티티로부터 상기 제2 주석화 개념을 수신하는 단계;
    상기 제2 주석화 개념에 기초하여 상기 제1 주석화 개념을 생성하는 단계; 및
    상기 제1 주석화 개념을 상기 주석화 엔티티에 송신하는 단계
    를 포함하는 동작들을 유발하게 하는 주석화 엔티티.
  16. 제15항에 있어서,
    상기 동작들은 상기 제1 주석화 개념에 대한 상기 요청에 기초하여 상기 주석화 개념 엔티티를 결정하는 단계를 더 포함하는 주석화 엔티티.
  17. 제15항에 있어서,
    상기 동작들은 상기 주석화 개념에 대한 주석화의 레벨을 결정하는 단계를 더 포함하고, 상기 주석화의 레벨은, 데이터 아이템 레벨, 데이터 윈도우 레벨, 데이터 스트림 레벨, 및 파셜 데이터 스트림 레벨 중 적어도 하나를 포함하는 주석화 엔티티.
  18. 제17항에 있어서,
    상기 제1 주석화 개념을 상기 주석화 엔티티에 송신하는 단계의 동작은 상기 주석화의 레벨을 상기 주석화 엔티티에 송신하는 단계를 포함하는 주석화 엔티티.
  19. 제15항에 있어서,
    상기 동작들은, 설명, 만료 시간, 링크, 및 생성 시간 중 적어도 하나를 포함하는 관련된 속성들과 함께 상기 제1 주석화 개념을 저장하는 단계를 더 포함하는 주석화 엔티티.
  20. 제15항에 있어서,
    상기 동작들은, 상기 제1 주석화 개념이 적용될 데이터 윈도우에 대한 데이터 윈도우 사이즈를 결정하는 단계를 더 포함하는 주석화 엔티티.
KR1020157035277A 2013-05-16 2014-05-16 Iot 시스템들에 대한 서비스로서의 데이터 주석화 KR101812398B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201361824061P 2013-05-16 2013-05-16
US61/824,061 2013-05-16
PCT/US2014/038420 WO2014186719A1 (en) 2013-05-16 2014-05-16 Data annotation as a service for iot systems

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020177036435A Division KR20170143018A (ko) 2013-05-16 2014-05-16 Iot 시스템들에 대한 서비스로서의 데이터 주석화

Publications (2)

Publication Number Publication Date
KR20160010513A true KR20160010513A (ko) 2016-01-27
KR101812398B1 KR101812398B1 (ko) 2017-12-26

Family

ID=50942917

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020177036435A KR20170143018A (ko) 2013-05-16 2014-05-16 Iot 시스템들에 대한 서비스로서의 데이터 주석화
KR1020157035277A KR101812398B1 (ko) 2013-05-16 2014-05-16 Iot 시스템들에 대한 서비스로서의 데이터 주석화

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020177036435A KR20170143018A (ko) 2013-05-16 2014-05-16 Iot 시스템들에 대한 서비스로서의 데이터 주석화

Country Status (6)

Country Link
US (1) US11172008B2 (ko)
EP (2) EP3779698A1 (ko)
JP (2) JP6231663B2 (ko)
KR (2) KR20170143018A (ko)
CN (1) CN105408865B (ko)
WO (1) WO2014186719A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102226606B1 (ko) * 2020-08-06 2021-03-11 주식회사 글로쿼드텍 홈 게이트웨이 장치, 센서 단말 및 그것의 수행 방법

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2015119003A1 (ja) * 2014-02-04 2017-03-23 株式会社Nttドコモ サービス制御システム、ユーザ装置、及びサービス制御方法
EP3178205B1 (en) * 2014-08-07 2020-04-29 Telefonaktiebolaget LM Ericsson (publ) Data transfer in a system of connected things
KR102427328B1 (ko) * 2014-10-17 2022-08-01 삼성전자주식회사 사물 인터넷 단말 및 그 동작 방법
US20180255446A1 (en) * 2015-09-01 2018-09-06 Provenance Assest Group LLC Remote access to an accessory device
CN106878916A (zh) * 2015-12-11 2017-06-20 中兴通讯股份有限公司 消息发送方法及装置
JP6623312B2 (ja) * 2016-04-25 2019-12-18 コンヴィーダ ワイヤレス, エルエルシー サービス層におけるデータ分析サービスを有効にする方法
US10650621B1 (en) 2016-09-13 2020-05-12 Iocurrents, Inc. Interfacing with a vehicular controller area network
US10552074B2 (en) * 2016-09-23 2020-02-04 Samsung Electronics Co., Ltd. Summarized data storage management system for streaming data
US10397594B2 (en) * 2017-04-28 2019-08-27 Hewlett Packard Enterprise Development Lp Real-time processing of IoT data
US11042596B2 (en) * 2017-09-29 2021-06-22 Verizon Media Inc. Preserving contextual relevance of content
US11700221B2 (en) * 2018-05-17 2023-07-11 Honeywell International Inc. Rule-based annotation service in a cloud platform
CN112236990A (zh) * 2018-06-22 2021-01-15 康维达无线有限责任公司 用于实现iot数据的高效分析的基于服务层的方法
US11102064B2 (en) * 2019-08-28 2021-08-24 International Business Machines Corporation Dynamically adapting an internet of things (IOT) device
US20220058177A1 (en) * 2020-08-21 2022-02-24 Sap Se Customized processing of sensor data
US11726846B2 (en) 2020-08-21 2023-08-15 Sap Se Interface for processing sensor data with hyperscale services
US11645247B2 (en) 2020-08-21 2023-05-09 Sap Se Ingestion of master data from multiple applications
CN113055942B (zh) * 2021-03-10 2022-04-05 重庆邮电大学 一种6tisch网络下数据聚合的方法
KR102657871B1 (ko) * 2021-05-06 2024-04-16 한국전자통신연구원 정보 중심 네트워크 기반 데이터 슬라이싱 방법 및 장치

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2003230823A1 (en) * 2002-04-05 2003-10-27 United States Of America As Represented By The Administrator Of The National Aeronautics And Space Polyimides from 2,3,3',4'-biphenyltetracarboxylic dianhydride and aromatic diamines
US7191119B2 (en) * 2002-05-07 2007-03-13 International Business Machines Corporation Integrated development tool for building a natural language understanding application
US7412383B1 (en) * 2003-04-04 2008-08-12 At&T Corp Reducing time for annotating speech data to develop a dialog application
US7797381B2 (en) * 2003-09-19 2010-09-14 International Business Machines Corporation Methods and apparatus for information hyperchain management for on-demand business collaboration
US8738614B2 (en) 2004-04-23 2014-05-27 Qualcomm Incorporated Methods and apparatus for providing hierarchical content flow in a data network
US7472341B2 (en) * 2004-11-08 2008-12-30 International Business Machines Corporation Multi-user, multi-timed collaborative annotation
US7944864B2 (en) * 2006-06-01 2011-05-17 International Business Machines Corporation Method and system for supporting dynamic stream attributes
JP5379693B2 (ja) 2006-11-13 2013-12-25 アイ・ピー・リザブワー・エル・エル・シー コプロセッサを使った構造化データおよび非構造化データの高性能の統合、処理および探索の方法およびシステム
EP2043008A1 (en) * 2007-09-26 2009-04-01 Alcatel Lucent System for synchronous delivery of annotated multimedia streams
US8340492B2 (en) * 2007-12-17 2012-12-25 General Instrument Corporation Method and system for sharing annotations in a communication network
JP5072880B2 (ja) * 2009-02-23 2012-11-14 日本電信電話株式会社 メタデータ抽出サーバ、メタデータ抽出方法およびプログラム
US9418069B2 (en) * 2010-05-26 2016-08-16 International Business Machines Corporation Extensible system and method for information extraction in a data processing system
US8913552B2 (en) * 2011-01-24 2014-12-16 International Business Machines Corporation Spatiotemporal annotation of data packets in wireless networks
US20130031457A1 (en) * 2011-07-28 2013-01-31 Peter Griffiths System for Creating and Editing Temporal Annotations of Documents
US20130031454A1 (en) * 2011-07-28 2013-01-31 Peter Griffiths System for Programmatically Accessing Document Annotations
CN102279746A (zh) * 2011-08-21 2011-12-14 中国海洋大学 基于传感器的监测软件开发平台系统及方法
DE102012218966B4 (de) * 2011-10-31 2018-07-12 International Business Machines Corporation Verfahren und System zum Kennzeichnen von durch Dinge im Internet der Dinge erzeugten Originaldaten
WO2013071978A1 (en) * 2011-11-18 2013-05-23 Telefonaktiebolaget Lm Ericsson (Publ) Data distribution platform
US20140281889A1 (en) * 2013-03-15 2014-09-18 Varda Treibach-Heck Research data collector and organizer (rdco)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102226606B1 (ko) * 2020-08-06 2021-03-11 주식회사 글로쿼드텍 홈 게이트웨이 장치, 센서 단말 및 그것의 수행 방법
KR20220018402A (ko) * 2020-08-06 2022-02-15 주식회사 텍쎈 홈 게이트웨이 장치, 센서 단말 및 그것의 수행 방법

Also Published As

Publication number Publication date
CN105408865A (zh) 2016-03-16
EP2997473A1 (en) 2016-03-23
US20160112487A1 (en) 2016-04-21
JP6231663B2 (ja) 2017-11-15
KR101812398B1 (ko) 2017-12-26
CN105408865B (zh) 2020-01-10
US11172008B2 (en) 2021-11-09
JP2018010699A (ja) 2018-01-18
WO2014186719A1 (en) 2014-11-20
JP2016522491A (ja) 2016-07-28
JP6479131B2 (ja) 2019-03-06
KR20170143018A (ko) 2017-12-28
EP3779698A1 (en) 2021-02-17

Similar Documents

Publication Publication Date Title
KR101812398B1 (ko) Iot 시스템들에 대한 서비스로서의 데이터 주석화
US11997160B2 (en) Lightweight IoT information model
JP6563439B2 (ja) 意味命名モデル
US11805166B2 (en) Enhanced M2M content management based on interest
EP3117586A1 (en) Cross-layer context management

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant