IP Library Granted Patent US 10,805,374
Granted Patent B1
US 10,805,374 · App. 16/573,434 · Granted Oct 13, 2020

Systems and methods for providing real-time streaming data processing at edge servers

Inventors: Peter Wilczynski (San Francisco, CA); Daniel Zangri (San Francisco, CA); Jeffrey Martin (New York, NY); Robert Imig (Austin, TX); Wenshuai Hou (Arlington, VA)
Assignee: Palantir Technologies Inc.
H04L65/605H04L65/4069H04L67/289H04W4/021H04W4/029
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,805,374
App. No.
16/573,434
Granted
Oct 13, 2020
Kind
B1
Abstract

Systems and methods provide real-time processing in edge servers of a network. In one example, an edge server receives real-time streaming data from at least a first client device and processes, in real-time, the received real-time streaming data to produce real-time edge processed data. The edge server receives a request for real-time streaming data from at least a second client device and provides in real-time, the real-time edge processed data to the requesting second client device. In some embodiments the edge server forwards the received real-time streaming data, and if desired, the edge processed data to a central server or other server, for processing.

Claims (52)

1. A method for providing real-time streaming data, carried out by an edge server of a network, comprising:

receiving real-time streaming data from at least a first client device;

processing, within a first time duration that is in real-time, the received real-time streaming data to produce first edge processed data;

receiving a request for real-time streaming data from at least a second client device;

providing, in real-time, the first edge processed data from the edge server to the requesting second client device; and

forwarding second edge processed data to a central server for processing, the second edge processed data being different from or the same as the first edge processed data;

wherein the method is performed using one or more processors of the edge server.

2. The method of claim 1 comprising processing, within a second time duration, the received real-time streaming data to produce the second edge processed data, the second time duration being longer than or equal to the first time duration.

3. The method of claim 1 further comprising:

receiving real-time streaming data from the at least the second client device;

processing, within the first time duration that is in real-time, the received real-time streaming data from the second client device to produce the first edge processed data from real-time streaming data from both the at least first and second client devices; and

broadcasting the first edge processed data to the at least first and second client device in real-time.

4. The method of claim 3 wherein processing, within the first time duration that is in real-time comprises transforming the real-time streaming data and caching the transformed data and wherein processing within the second time duration comprises using the transformed data as input to a windowed compute operation to produce the second edge processed data.

5. The method of claim 4 further comprising providing the second edge processed data from the edge server to the requesting second client device.

6. The method of claim 1 wherein the received real-time streaming data is in a format different from a format needed by the second client device and wherein processing the received real-time streaming data comprises normalizing the data in real-time and wherein providing, in real-time, the first edge processed data from the edge server to the requesting second client device comprises broadcasting the normalized real-time streaming data to the second client device.

7. The method of claim 1 wherein processing the received real-time streaming data comprises performing one or more of: generating alerts for geo-fencing operations associated with the first and second client devices, format conversion of location information received from the first and second client devices, data compression on the real-time streaming data, pattern filtering on the real-time streaming data, geo registration based on the real-time streaming data and computing mapping tiles for the first and second client devices.

8. A system for providing real-time streaming data, the system comprising:

an edge server; and

a storage;

wherein the edge server is configured to:

receive real-time streaming data from at least a first client device;

process, within a first time duration that is in real-time, the received real-time streaming data to produce first edge processed data;

store the first edge processed data in the storage;

receive a request for real-time streaming data from at least a second client device;

provide in real-time the first edge processed data to the requesting second client device; and

forward second edge processed data to a central server for processing, the second edge processed data being different from or the same as the first edge processed data.

9. The system of claim 8 wherein the edge server is further configured to process, within a second time duration, the received real-time streaming data to produce the second edge processed data, the second time duration being longer than or equal to the first time duration.

10. The system of claim 8 wherein the edge server is configured to:

receive real-time streaming data from the at least the second client device;

process, within the first time duration that is in real-time, the received real-time streaming data from the second client device to produce the first edge processed data from real-time streaming data from both the at least first and second client devices; and

broadcast the first edge processed data to the at least first and second client device in real-time.

11. The system of claim 10 wherein the edge server is configured to process, within the first time duration that is in real-time by transforming the real-time streaming data and caching the transformed data and process within the second time duration by using the transformed data as input to a windowed compute operation to produce the second edge processed data.

12. The system of claim 11 wherein the edge server is configured to provide the second edge processed data from the edge server to the requesting second client device.

13. The system of claim 8 wherein the received real-time streaming data is in a format different from a format needed by the second client device and wherein the edge server is configured to process the received real-time streaming data by normalizing the data in real-time and provide, in real-time, the first edge processed data from the edge server to the requesting second client device by broadcasting the normalized real-time streaming data to the second client device.

14. The system of claim 8 wherein the edge server is configured to process the received real-time streaming data by performing one or more of: generating alerts for geo-fencing operations associated with the first and second client devices, format conversion of location information received from the first and second client devices, data compression on the real-time streaming data, pattern filtering on the real-time streaming data, geo registration based on the real-time streaming data and computing mapping tiles for the first and second client devices.

15. A system for providing real-time streaming data, the system comprising:

an edge server comprising one or more processors;

memory comprising executable instructions that when executed by the one or more processors causes the one or more processors to:

receive real-time streaming data from a plurality of client devices;

process, within a first time duration that is in real-time, the received real-time streaming data to produce first edge processed data;

store the first edge processed data in a storage;

receive a request for real-time streaming data from at least some of the plurality of client devices;

broadcast in real-time the first edge processed data to the requesting client devices;

forward second edge processed data to a central server for processing, the second edge processed data being different from or the same as the first edge processed data;

receive a request from at least one of the plurality of client devices for non-real-time processing of the real-time streaming data from the central server;

obtain the non-real-time processed data from the central server; and

send the non-real-time processed data from the central server to the at least one requesting client device.

16. The system of claim 15 wherein the memory comprises executable instructions that when executed by the one or more processors causes the edge server to process, within a second time duration, the received real-time streaming data to produce the second edge processed data, the second time duration being longer than or equal to the first time duration.

17. The system of claim 15 wherein the memory comprises executable instructions that when executed by the one or more processors causes the edge server to process, within the first time duration that is in real-time by transforming the real-time streaming data and caching the transformed data and process within the second time duration by using the transformed data as input to a windowed compute operation to produce the second edge processed data.

18. The system of claim 17 wherein the memory comprises executable instructions that when executed by the one or more processors causes the edge server to provide the second edge processed data from the edge server to one or more requesting client devices of the plurality of client devices.

19. The system of claim 18 wherein the received real-time streaming data is in a format different from a format needed by other client devices and wherein the memory comprises executable instructions that when executed by the one or more processors causes the edge server to process the received real-time streaming data by normalizing the data in real-time and provide, in real-time, the first edge processed data from the edge server to one or more requesting client devices by broadcasting the normalized real-time streaming data to the plurality of client devices.

20. The system of claim 15 wherein the memory comprises executable instructions that when executed by the one or more processors causes the edge server to process the received real-time streaming data by performing one or more of: generating alerts for geo-fencing operations associated with the first and second client devices, format conversion of location information received from the first and second client devices, data compression on the real-time streaming data, pattern filtering on the real-time streaming data, geo registration based on the real-time streaming data and computing mapping tiles for the first and second client devices.

Assignments (2)
SECURITY INTEREST Recorded Jul 3, 2022
From: PALANTIR TECHNOLOGIES INC.
To: WELLS FARGO BANK, N.A.
Reel/Frame 060572/0506 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 10, 2020
From: WILCZYNSKI, PETER; ZANGRI, DANIEL; MARTIN, JEFFREY; IMIG, ROBERT; HOU, WENSHUAI
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 052896/0317 →
Cited By (1)
US 12,587,578