# Bloom Filter Approach for Autonomous Data Acquisition in the Edge-Based MCS Scenario +
###### Abstract
In such distributed environment, mobile edge (ME) servers, placed between physical sensing devices and the cloud, take responsibility for device management in their geographical area. In particular, they keep track of available (and connected) devices, monitor sensor data acquisition, and aggregate received data readings before sending a final result to the cloud. Such hierarchical processing reduces the amount of raw data that is transmitted over the network, as edge MCS components (i.e., ME hosts) control the data acquisition process in their deployment area by providing instructions to mobile devices on whether to send their data readings or not. In this paper, we address the problem of data optimization, which entails reducing the amount of data transmitted over the network while also providing adequate data coverage following application requirements because collecting and transmitting all data is resource-intensive and usually not necessary. Specifically, we present a distributed algorithm based on the Bloom filter (BF) data structure, which tries to filter redundant data close to its origin and thus reduce the amount of transmitted raw data as much as feasible. By using the BF structure, we enable mobile devices to autonomously decide whether to collect and transmit data readings or not, without the need for cloud-based supervision and coordination. More specifically, each end-user device can independently decide whether sensed data is redundant (and should be discarded) or valuable (and should be sent to the ME host for further processing) based on its BF data structure filled with sent data readings. At the same time, the edge MCS service performs data aggregation, keeps the BF structure up-to-date, and disseminates BF to mobile devices located in its deployment area when it recognizes that a data source is not synced. The BF data structure carries information about data readings obtained from physically collocated devices (i.e., located in the same geographical area), and it does not provide a significant overhead in termsof processing, memory, and bandwidth consumption. An initial version of our BF-based distributed algorithm was introduced in [9]. In contrast to the previous publication, this paper includes the following new contributions:  
* We present an extended version of the BF algorithm which can accept multiple data readings of the same type at the same location, both at the end-user device and ME host, as otherwise, the data production will be immediately stopped on all devices due to a BF structure inherent characteristics (i.e., inserted elements cannot be removed from a BF structure), to allow to compare similar data readings from multiple sources if MCS task requires such functionality in the edge-based distributed MCS environment. * We outline the main procedures of the proposed BF algorithm. * We run the same experiments as in [9] to evaluate BF regarding filter size and probability of false positives and analyze the number of lost data readings on a new and significantly larger real-world dataset collected in Seoul, South Korea [10], and confirm our initial findings. * We include novel evaluation results on the same dataset to understand the overall behavior of the proposed BF approach by considering the overhead generated in communication between edge host and end-user devices when a user changes its location or sends redundant data reading. Our results on a real-world dataset indicate that a BF is a valuable data structure to orchestrate autonomous data acquisition on users participating in MCS tasks. In particular, we show that using the proposed BF algorithm makes it possible to obviate redundant user activity and achieve energy savings up to 62% compared to a baseline approach requiring all generated data. The main advantage of the proposed hierarchical architecture is that there is no central point of failure as the data processing is distributed across multiple ME hosts, and all end-user devices can autonomously decide when to transmit data.