IP Library Granted Patent US 10,956,423
Granted Patent B2
US 10,956,423 · App. 16/096,510 · Granted Mar 23, 2021

Data stream analytics at service layer

Inventors: Sneha Aman Singh (Redmond, WA); Xu Li (Plainsboro, NJ); Quang Ly (North Wales, PA); Gregory S. Sternberg (Mt. Laurel, NJ); Shamim Akbar Rahman (Cote St. Luc, CA); Chonggang Wang (Princeton, NJ)
Assignee: Convida Wireless, LLC
G06F16/24568G06F16/00H04L12/28H04L12/2823H04L43/04H04L43/18H04L67/12H04W4/70H04W12/08H04L63/10H04L63/1425
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,956,423
App. No.
16/096,510
Granted
Mar 23, 2021
Kind
B2
Abstract

A modular and distributed architecture for data stream processing and analysis is described to incorporate data stream analytics capabilities, called Data Stream Analytics Service (DSAS) in the IoT/M2M service layer. Each service layer node hosting DSAS can be split into two independent modules, Stream Forwarder and Stream Analytics Engine. Stream Forwarder is a light weight processing modules that can be responsible for data preprocessing and routing. Stream Analytics Engine is responsible for performing actual analytics on the data stream. Separating the two functionalities enables the service layer nodes to efficiently distribute stream analytics tasks across multiple nodes.

Claims (40)

1. An apparatus comprising a processor, a memory, and communication circuitry, the apparatus being connected to a network via its communication circuitry, the apparatus further comprising computer-executable instructions stored in the memory of the apparatus which, when executed by the processor of the apparatus, cause the apparatus to perform operations comprising:

receiving, from each of a plurality of data sources, a plurality of data streams;

determining, by a service layer preprocessor, each unique data stream in the received plurality of data streams;

filtering, by the service layer preprocessor, each unique data stream, to determine at least one attribute in each unique data stream for use in executing at least one predetermined query;

sending, to a service layer data analytics engine, each filtered unique data stream;

causing execution, by the service layer data analytics engine, of the at least one predetermined query on each filtered unique data stream; and

sending, by the service layer data analytics engine, output of the at least one predetermined query based on at least one predetermined trigger.

2. The apparatus of claim 1 , wherein the filtering is based on one or more active queries.

3. The apparatus of claim 2 , wherein the one or more active queries are received from a client device.

4. The apparatus of claim 2 , wherein each filtered unique data stream is analyzed using a query operator based on the one or more active queries.

5. The apparatus of claim 1 , wherein the apparatus comprises a service layer component.

6. The apparatus of claim 1 , wherein at least one data source of the plurality of data sources comprises an Internet of Things (IoT) device.

7. The apparatus of claim 1 , wherein each unique data stream is parsed prior to the filtering.

8. The apparatus of claim 1 , wherein each unique data stream is preprocessed prior to the filtering to remove redundancy and noise.

9. The apparatus of claim 1 , wherein the at least one attribute comprises at least one property in the each unique data stream.

10. The apparatus of claim 9 , wherein the at least one property comprises at least one of: a timestamp, a latitude, a longitude, an altitude, and a speed.

11. The apparatus of claim 1 , further comprising computer-executable instructions stored in the memory of the apparatus which, when executed by the processor of the apparatus, cause the apparatus to perform further operations comprising:

causing authentication of each of the plurality of data sources prior to the receiving.

12. The apparatus of claim 1 , wherein each unique data stream is associated with an identifier.

13. A method comprising:

receiving, from each of a plurality of data sources, a plurality of data streams;

determining, by a service layer preprocessor, each unique data stream in the received plurality of data streams;

filtering, by the service layer preprocessor, each unique data stream, to determine at least one attribute in each unique data stream for use in executing at least one predetermined query;

sending, to a service layer data analytics engine, each filtered unique data stream;

causing execution, by the service layer data analytics engine, of the at least one predetermined query on each filtered unique data stream; and

sending, by the service layer data analytics engine, output of the at least one predetermined query based on at least one predetermined trigger.

14. The method of claim 13 , wherein at least one data source of the plurality of data sources comprises an Internet of Things (IoT) device.

15. The method of claim 13 , wherein the at least one attribute comprises at least one property in the each unique data stream, and wherein the at least one property comprises at least one of: a timestamp, a latitude, a longitude, an altitude, and a speed.

16. The method of claim 13 , further comprising:

causing authentication of each of the plurality of data sources prior to the receiving.

17. The method of claim 13 , wherein each unique data stream is associated with an identifier.

18. The method of claim 13 , wherein the filtering is based on one or more active queries and wherein the one or more active queries are received from a client device.

19. The method of claim 18 , wherein each filtered unique data stream is analyzed using a query operator based on the one or more active queries.

20. An apparatus comprising a processor, a memory, and communication circuitry, the apparatus being connected to a network via its communication circuitry, the apparatus further comprising computer-executable instructions stored in the memory of the apparatus which, when executed by the processor of the apparatus, cause the apparatus to perform operations comprising:

receiving, from each of a plurality of data sources, a plurality of data streams;

determining, by a service layer preprocessor, each unique data stream in the received plurality of data streams;

determining, by the service layer preprocessor, each data stream, to detect at least one attribute in each unique data stream for use in executing at least one predetermined query;

sending, to a service layer data analytics engine, each data stream;

causing execution, by the service layer data analytics engine, of the at least one predetermined query on each data stream; and

sending, by the service layer data analytics engine, output of the at least one predetermined query based on at least one predetermined trigger.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 1, 2025
From: CONVIDA WIRELESS, LLC
To: INTERDIGITAL PATENT HOLDINGS, INC.
Reel/Frame 071773/0735 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 11, 2019
From: SINGH, SNEHA AMAN; LI, XU; LY, QUANG; STERNBERG, GREGORY S.; RAHMAN, SHAMIM AKBAR; WANG, CHONGGANG
To: CONVIDA WIRELESS, LLC
Reel/Frame 048555/0937 →
Continuity (2)
Provisional Application 62326894 · Apr 25, 2016
Related Publication 20190138524A1 · May 9, 2019