| CPC G06F 16/2455 (2019.01) [G05D 1/0291 (2013.01); G05D 1/69 (2024.01); G06F 16/182 (2019.01); G06F 16/24537 (2019.01); G06F 16/24544 (2019.01); G06F 16/24552 (2019.01); G06F 16/2456 (2019.01); G06F 16/2462 (2019.01); G06F 16/2471 (2019.01); G06F 16/27 (2019.01); G06F 16/278 (2019.01); G06Q 10/06315 (2013.01); G06Q 10/0833 (2013.01); G06Q 10/087 (2013.01); G06Q 20/389 (2013.01); G06Q 30/0202 (2013.01); G06Q 30/0206 (2013.01); G06V 10/774 (2022.01); H04N 23/675 (2023.01); G05B 2219/49023 (2013.01); G06Q 2220/00 (2013.01)] | 14 Claims |

|
1. A method for processing a distributed join query for data stored in a distributed database including a network of edge devices, the method comprising:
receiving, at an aggregator, the query for data stored in the distributed database from a query device, wherein the query is a request for at least one of: data stored at an edge device or data stored at other edge devices in the distributed database;
generating, by the aggregator, a query plan based on the query, wherein the query plan includes instructions for the edge device to generate an approximate response to the query; and
executing, by the edge device, the query plan based on the instructions, wherein the executing the query plan includes:
generating, by the edge device, partial query results using one or more distributed reference tables stored at the edge device,
wherein the one or more distributed reference tables include various data and metadata describing a structure of the data stored at the other edge devices in the distributed database, and
wherein the partial query results include at least one of: a portion of the data stored at the edge device or a portion of the data stored at the other edge devices;
generating, by the edge device, statistical information based on the partial query results;
determining, by the edge device, a statistical confidence associated with the partial query results based on the statistical information; and
in response to the statistical confidence exceeding a confidence interval threshold:
generating, by the edge device, the approximate response to the query based on the statistical information; and
transmitting, by the edge device, the approximate response to the query device.
|