Enabling Context-Aware Data Analytics in Smart Environments: An Open Source Reference Implementation
Abstract
:1. Introduction
2. Related Work
2.1. Context-Aware System Architectures
2.2. Implementations of Context-Aware Systems to IoT-Based Smart Environments
3. Data Standardization
3.1. NGSI-LD
3.2. Smart Data Models
4. Architecture
4.1. Physical Layer
4.2. Middleware Layer
4.2.1. Preprocessing
4.2.2. Context Management
4.2.3. Context Processing
4.3. Application Layer
4.4. Security Layer
5. Implementation Using FIWARE
5.1. Physical Layer
- IoT Agent (FIWARE IoT Agents: https://github.com/FIWARE/catalogue/blob/master/iot-agents/README.md, accessed on 22 July 2021)—It is a set of software modules handling South IoT Specific protocols and the North OMA NGSI interaction. These agents allow for working with the IoT devices that use communication protocols like LWM2M over CoaP, JSON, or UltraLight over HTTP/MQTT, OPC-UA, Sigfox, or LoRaWAN. IoT agent abstracts the communication protocols used by devices by translating them to the FIWARE NGSI format. By using this component, the data collected by IoT devices can be sent to the Context Broker, where each device is represented as an NGSI entity. Additionally, the IoT agents GE allows for triggering commands to actuation devices just by updating specific command-related attributes in their NGSI representation in the Context Broker.
- Fast DDS (Data Distribution Service) (FIWARE Fast DDS (Data Distribution Service): https://github.com/eProsima/Fast-RTPS, accessed on 22 July 2021)—It is an incubated GE that has been adopted as the default middleware in ROS2 (Robot Operating System: https://docs.ros.org/en/foxy, accessed on 22 July 2021), the widely known Robot Operating System. Therefore, it helps to interface with ROS2-based robotics systems.
- OpenMTC (OpenMTC: https://fiware-openmtc.readthedocs.io, accessed on 22 July 2021)—The OpenMTC Incubated GE brings an open-source implementation of the OneM2M standard.
- Micro-XRCE-DDS (Micro-XRCE-DDS: https://github.com/eProsima/Micro-XRCE-DDS, accessed on 22 July 2021)—It is a GE that provides a lite version of the DDS middleware, adapted to run in extremely constrained resource devices (e.g., micro-controllers).
5.2. Middleware Layer
5.2.1. Context Management
- Orion-LD (FIWARE Orion: https://fiware-orion.readthedocs.io, accessed on 22 July 2021): The Context Broker (Orion-LD) GE manages the entire lifecycle of context information including updates, queries, registrations, and subscriptions. It manages context information through the implementation of a publish–subscribe system through an NGSI interface. Users can create context elements, query and update them, and subscribe to changes in context information that they can receive as notifications. Other elements interact with Orion through HTTP/HTTPS requests. The Context Broker offers the FIWARE NGSI-LD and NGSIv2 (Next Generation Service Interface) APIs and associated information model (entity, attribute, metadata) as the main interface for managing context data [41].
- Draco (FIWARE Draco: https://fiware-draco.readthedocs.io, accessed on 22 July 2021) is a dataflow management system based on Apache NiFi that supports powerful and scalable directed graphs of data routing, transformation, and system mediation logic using a set of processors and controllers. Draco is aimed at providing storage of historical context data, allowing for receiving data events and dynamically recording them with a predefined structure in several data storage systems. In the scope of this implementation, Draco is proposed to cover the historical context storage in the Context Management component.
5.2.2. Preprocessing
5.2.3. Context Processing
- Cosmos (FIWARE Cosmos: https://fiware-cosmos.readthedocs.io, accessed on 22 July 2021) provides an interface for integrating Apache Flink and Apache Spark with the rest of the components in the FIWARE Ecosystem. Over the last few years, Apache Flink and Apache Spark have established themselves as the most popular open-source data processing frameworks with the rest of the components of the FIWARE Ecosystem. This GE consists of a set of connectors that allow for receiving data from the Context Broker (through its subscription/notification feature) directly within data processing jobs running in these engines. These connectors allow processing context data in real time, as well as sending the result from this processing back to a given entity in the Context Broker, so other components in the architecture can subscribe to changes in its attributes.
5.3. Security Layer
- Keyrock (FIWARE Keyrock: https://fiware-idm.readthedocs.io, accessed on 22 July 2021) The Keyrock GE is responsible for Identity Management (IdM). Using Keyrock enables OAuth 2.0-based authentication and authorization security to services and applications, as described in [42,43]. In the context of this implementation, Keyrock plays the role of IdM: it manages authorization policies (PAP) and decides who can access which resources in smart environments.
- Wilma (FIWARE Wilma: https://fiware-pep-proxy.readthedocs.io, accessed on 22 July 2021): The Wilma GE brings support of proxy functions within OAuth 2.0-based authentication schemas. It also implements Policy Enforcement Point (PEP) functions within an XACML-based access control schema [35]. In the scope of this implementation, several Wilma instances might be needed depending on what service we want to provide or control the access to. Wilma is in charge of enforcing access policies over requests sent to a specific endpoint. When a user or device is authenticated through Keyrock, an OAuth 2.0 token is generated, which must be included in every request sent to any protected component. Wilma intercepts requests and asks Keyrock to validate the token, verifying the identity. Since Keyrock also acts as the Policy Decision Point (PDP), it checks the Data Consumer’s (DC’s) access authorization policies. In the case that the request complies with the established policies, Wilma grants access to the requested resource.
- AuthZForce (FIWARE AuthZForce: https://authzforce-ce-fiware.readthedocs.io, accessed on 22 July 2021): The AuthZForce GE brings additional support to PDP/PAP functions within an access control schema based on the XACML standard.
5.4. Application Layer
- Wirecloud (FIWARE Wirecloud: https://wirecloud.rtfd.io, accessed on 22 July 2021) brings a powerful web mashup platform that eases the development of operational dashboards which are highly customizable by end-users.
- Kurento (FIWARE Kurento: https://kurento.rtfd.io, accessed on 22 July 2021) enables real-time processing of media streams supporting the transformation of video cameras into sensors as well as the incorporation of advanced application functions (integrated audiovisual communications, augmented reality, flexible media playing and recording, etc.)
- FogFlow (FIWARE Fogflow: https://fogflow.rtfd.io, accessed on 22 July 2021) is a distributed execution framework that supports dynamic processing flows over cloud and edges.
6. Example Use Cases
6.1. Smart Farm
6.1.1. Data Modeling
6.1.2. IoT Devices
- Soil Sensor—It reports the quantity of humidity in the soil.
- Temperature Sensor—It measures the ambient or soil temperature at that instant.
- Filling Sensor—It shows the feed quantity available in a specific silo.
- Irrigation System—It is an actuator that can be activated and open the valves for a small period of time.
- Animal Collars—These are devices that allow for showing the current location, the health, and stress level of the animals.
- Farm Management Information Systems—These are devices installed in the agricultural machinery that allows communication (send/receive) messages or instructions to laborers, and monitor the current state of the work assigned.
6.1.3. Real-Time Processing and Big Data Analysis
- Two independent microservices using the FIWARE GEs:
- -
- The Orion Context Broker for managing the context data by receiving the NGSI-LD requests.
- -
- The FIWARE IoT Agent for UltraLight 2.0 which will receive southbound requests using NGSI-LD and convert them to UltraLight 2.0 commands for the devices.
- An Apache Spark cluster consisting of a single Cluster Manager and Worker Nodes.
- -
- The FIWARE Cosmos Orion Spark Connector will be deployed as part of the dataflow which will subscribe to context changes and make operations on them in real time.
- One MongoDB database:
- -
- Used by the Orion Context Broker to hold context data information such as data entities, subscriptions, and registrations.
- -
- Used by the IoT Agent to hold device information such as device URLs and Keys.
- This Application does the following:
- -
- Offers static @context files defining the context entities within the system.
- -
- Acts as a set of dummy agricultural IoT devices using the UltraLight 2.0.
6.1.4. Workflow
- The system begins to generate context data when the user starts some of the devices via the device monitoring interface (Context Provider, CP). For example, the user raises the temperature through Temperature Sensor (TS) in Farm001.
- The temperature value sent from Orion is in NGSI-LD format. Thus, the IoT Agent (IoTA), takes this value and transforms it into UltraLight 2.0.
- While the temperature TS in Farm001 is rising, the value of the Humidity Sensor (HS) is decreasing, the value of the HS is sent in a message to Orion via IoTA, converting the messages from UltraLight 2.0 to NGSI-LD beforehand.
- Orion receives the data generated by the HS and only when it detects that the humidity value is updated, it sends a notification to the Spark Job (SJ) via Cosmos.
- Since the application is running in the Spark cluster, it is ready for receiving the streaming data from Orion. Thus, when Orion sends a notification, the SJ reads this piece of data from the stream and extracts the humidity attribute value for determining if it is below or under the defined thresholds.
- Once the SJ detects that the humidity value is under the LOW_THRESHOLD (35), it sends an update for turning on the water faucet in the corresponding water entity hosted in the Orion.
- When Orion receives the update request from the SJ, it performs the update and sends a notification back to the Water Actuator (WA) via IoTA.
- IoTA translates to Ultralight the notification containing the update and translates it into a command to the WA and sends it.
- The WA finally receives the message and turns on the water faucet.
- This workflow continues until the HS value is above the HIGH_THRESHOLD (50). When this happens, the process is repeated by sending a command to turn off the water faucet to the correspondent device.
6.2. Supermarket Purchase Prediction
6.2.1. Data Modeling
6.2.2. Data Collection
6.2.3. Model Training
6.2.4. Prediction
6.2.5. Purchase Prediction System
- WWW—It represents a Node JS application that provides a GUI for allowing the users to make the request predictions choosing the date and time (see Figure 10).
- Orion—As the central piece of the architecture. It is in charge of managing the context requests from a web application and the prediction job.
- Cosmos—It runs a Spark cluster with one master and one worker with the capacity to scale according to the system needs. It is in this component where the prediction job is running.
- MongoDB—It is where the entities and subscriptions of the Context Broker are stored. In addition, it is used to store the historic context data of each entity.
- Draco—It is in charge of persisting the historic context of the prediction responses through the notifications sent by Orion.
6.2.6. Workflow
- The user sends a prediction request to the web application (WebApp).
- The WebApp generates a new prediction request to the entity. ReqTicketPrediction1 created in Orion.
- Orion updates the ReqTicketPrediction1 entity with the new values and sends a notification with this update to the running SparkJob.
- SparkJob uses the trained model to compute the prediction based on the values received in the notification.
- Once the prediction is generated, SparkJob sends a prediction response to the ResTicketPrediction1 entity stored in Orion.
- Orion updates the ResTicketPrediction1 entity and generates two notifications: one for the WebApp and the other for Draco.
- Once the ResTicketPrediction1 notification is received by the WebApp, it shows the prediction to the user.
- Finally, when Draco receives the notification about the update of the ReqsTicketPrediction1, it takes the values and persists the historic context data into MongoDB.
7. Conclusions and Future Work
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- Abowd, G.D.; Dey, A.K.; Brown, P.J.; Davies, N.; Smith, M.; Steggles, P. Towards a Better Understanding of Context and Context-Awareness; Springer: Berlin/Heidelberg, Germany, 1999; pp. 304–307. [Google Scholar]
- Alegre, U.; Augusto, J.C.; Clark, T. Engineering context-aware systems and applications: A survey. J. Syst. Softw. 2016, 117, 55–83. [Google Scholar] [CrossRef]
- Hong, J.y.; Suh, E.h.; Kim, S.J. Context-aware systems: A literature review and classification. Expert Syst. Appl. 2009, 36, 8509–8522. [Google Scholar] [CrossRef]
- Alberti, A.M.; Santos, M.A.S.; Souza, R.; Da Silva, H.D.L.; Carneiro, J.R.; Figueiredo, V.A.C.; Rodrigues, J.J.P.C. Platforms for Smart Environments and Future Internet Design: A Survey. IEEE Access 2019, 7, 165748–165778. [Google Scholar] [CrossRef]
- Ahmed, E.; Yaqoob, I.; Gani, A.; Imran, M.; Guizani, M. Internet-of-things-based smart environments: State of the art, taxonomy, and open research challenges. IEEE Wirel. Commun. 2016, 23, 10–16. [Google Scholar] [CrossRef]
- Abdellatif, A.A.; Mohamed, A.; Chiasserini, C.F.; Tlili, M.; Erbad, A. Edge computing for smart health: Context-aware approaches, opportunities, and challenges. IEEE Netw. 2019, 33, 196–203. [Google Scholar] [CrossRef] [Green Version]
- Perera, C.; Zaslavsky, A.; Christen, P.; Georgakopoulos, D. Context aware computing for the internet of things: A survey. IEEE Commun. Surv. Tutorials 2013, 16, 414–454. [Google Scholar] [CrossRef] [Green Version]
- Urbieta, A.; González-Beltrán, A.; Mokhtar, S.B.; Hossain, M.A.; Capra, L. Adaptive and context-aware service composition for IoT-based smart cities. Future Gener. Comput. Syst. 2017, 76, 262–274. [Google Scholar] [CrossRef] [Green Version]
- Sezer, O.B.; Dogdu, E.; Ozbayoglu, A.M. Context-aware computing, learning, and big data in internet of things: A survey. IEEE Internet Things J. 2017, 5, 1–27. [Google Scholar] [CrossRef]
- Afzal, B.; Alvi, S.A.; Shah, G.A.; Mahmood, W. Energy efficient context aware traffic scheduling for IoT applications. Ad Hoc Netw. 2017, 62, 101–115. [Google Scholar] [CrossRef]
- Baldauf, M.; Dustdar, S.; Rosenberg, F. A survey on context-aware systems. Int. J. Ad Hoc Ubiquitous Comput. 2007, 2, 263–277. [Google Scholar] [CrossRef] [Green Version]
- Symeonaki, E.; Arvanitis, K.; Piromalis, D. A context-aware middleware cloud approach for integrating precision farming facilities into the IoT toward agriculture 4.0. Appl. Sci. 2020, 10, 813. [Google Scholar] [CrossRef] [Green Version]
- Phithakkitnukoon, S.; Veloso, M.; Bento, C.; Biderman, A.; Ratti, C. Taxi-aware map: Identifying and predicting vacant taxis in the city. In International Joint Conference on Ambient Intelligence; Springer: Berlin/Heidelberg, Germany, 2010; pp. 86–95. [Google Scholar]
- Dobre, C.; Xhafa, F. Intelligent services for big data science. Future Gener. Comput. Syst. 2014, 37, 267–281. [Google Scholar] [CrossRef]
- Liu, H.; Tong, Y.; Han, J.; Zhang, P.; Lu, X.; Xiong, H. Incorporating multi-source urban data for personalized and context-aware multi-modal transportation recommendation. IEEE Trans. Knowl. Data Eng. 2020. [Google Scholar] [CrossRef]
- Najem, N.; Haddou, D.B.; Abid, M.R.; Darhmaoui, H.; Krami, N.; Zytoune, O. Context-aware wireless sensors for IoT-centeric energy-efficient campuses. In Proceedings of the 2017 IEEE International Conference on Smart Computing (SMARTCOMP), Hong Kong, China, 29–31 May 2017; IEEE: Piscataway, NJ, USA, 2017; pp. 1–6. [Google Scholar]
- Hangli, G.; Hamada, T.; Sumitomo, T.; Koshizuka, N. Precaelevator: Towards zero-waiting time on calling elevator by utilizing context aware platform in smart building. In Proceedings of the 2018 IEEE 7th Global Conference on Consumer Electronics (GCCE), Nara, Japan, 9–12 October 2021; IEEE: Piscataway, NJ, USA, 2018; pp. 566–570. [Google Scholar]
- Dobrescu, R.; Merezeanu, D.; Mocanu, S. Context-aware control and monitoring system with IoT and cloud support. Comput. Electron. Agric. 2019, 160, 91–99. [Google Scholar] [CrossRef]
- Gómez-Chabla, R.; Real-Avilés, K.; Morán, C.; Grijalva, P.; Recalde, T. IoT applications in agriculture: A systematic literature review. In Proceedings of the 2nd International Conference on ICTs in Agronomy and Environment, Guayaquil, Ecuador, 22–25 January 2019; Springer: Berlin/Heidelberg, Germany, 2019; pp. 68–76. [Google Scholar]
- Khanna, A.; Kaur, S. Evolution of Internet of Things (IoT) and its significant impact in the field of Precision Agriculture. Comput. Electron. Agric. 2019, 157, 218–231. [Google Scholar] [CrossRef]
- Symeonaki, E.G.; Arvanitis, K.G.; Piromalis, D.D. Current trends and challenges in the deployment of IoT technologies for climate smart facility agriculture. Int. J. Sustain. Agric. Manag. Inform. 2019, 5, 181–200. [Google Scholar] [CrossRef]
- Madushanki, R.; Wirasagoda, H.; Halgamuge, M. Adoption of the Internet of Things (IoT) in Agriculture and Smart Farming towards Urban Greening: A Review; Science and Information Organization: Bradford, UK, 2019. [Google Scholar]
- Martinez, R.; Pastor, J.A.; Alvarez, B.; Iborra, A. A Testbed to Evaluate the FIWARE-Based IoT Platform in the Domain of Precision Agriculture. Sensors 2016, 16, 1979. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Alonso, Á.; Pozo, A.; Cantera, J.M.; la Vega, F.; Hierro, J.J. Industrial Data Space Architecture Implementation Using FIWARE. Sensors 2018, 18, 2226. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Kamienski, C.; Soininen, J.P.; Taumberger, M.; Dantas, R.; Toscano, A.; Salmon Cinotti, T.; Filev Maia, R.; Torre Neto, A. Smart Water Management Platform: IoT-Based Precision Irrigation for Agriculture. Sensors 2019, 19, 276. [Google Scholar] [CrossRef] [Green Version]
- Zyrianoff, I.; Heideker, A.; Silva, D.; Kleinschmidt, J.; Soininen, J.P.; Salmon Cinotti, T.; Kamienski, C. Architecting and Deploying IoT Smart Applications: A Performance–Oriented Approach. Sensors 2020, 20, 84. [Google Scholar] [CrossRef] [Green Version]
- Muñoz, M.; Gil, J.D.; Roca, L.; Rodríguez, F.; Berenguel, M. An IoT Architecture for Water Resource Management in Agroindustrial Environments: A Case Study in Almería (Spain). Sensors 2020, 20, 596. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- López-Morales, J.A.; Martínez, J.A.; Skarmeta, A.F. Digital Transformation of Agriculture through the Use of an Interoperable Platform. Sensors 2020, 20, 1153. [Google Scholar] [CrossRef] [Green Version]
- Bibri, S.E.; Krogstie, J. Smart sustainable cities of the future: An extensive interdisciplinary literature review. Sustain. Cities Soc. 2017, 31, 183–212. [Google Scholar] [CrossRef]
- Subbu, K.P.; Vasilakos, A.V. Big data for context aware computing–perspectives and challenges. Big Data Res. 2017, 10, 33–43. [Google Scholar] [CrossRef]
- Sholla, S.; Naaz, R.; Chishti, M.A. Semantic smart city: Context aware application architecture. In Proceedings of the 2018 Second International Conference on Electronics, Communication and Aerospace Technology (ICECA), Coimbatore, India, 29–31 March 2018; IEEE: Piscataway, NJ, USA, 2018; pp. 721–724. [Google Scholar]
- De Prado, A.G.; Ortiz, G.; Boubeta-Puig, J. CARED-SOA: A context-aware event-driven service-oriented Architecture. IEEE Access 2017, 5, 4646–4663. [Google Scholar] [CrossRef]
- Al-Shdifat, A.; Emmanouilidis, C. Development of a Context-aware framework for the Integration of Internet of Things and Cloud Computing for Remote Monitoring Services. In Proceedings of the 7th International Conference on Through-life Engineering Services, Cranfield, UK, 3–4 November 2015. [Google Scholar] [CrossRef]
- Li, X.; Eckert, M.; Martinez, J.F.; Rubio, G. Context aware middleware architectures: Survey and challenges. Sensors 2015, 15, 20570–20607. [Google Scholar] [CrossRef] [Green Version]
- eXtensible Access Control Markup Language (XACML) Version 3.0. 2013. Available online: https://www.oasis-open.org/committees/tc_home.php (accessed on 3 June 2019).
- Sandhu, R.; Coyne, E.; Feinstein, H.; Youman, C. Role-based access control models. Computer 1996, 29, 38–47. [Google Scholar] [CrossRef] [Green Version]
- Yuan, E.; Tong, J. Attributed based access control (ABAC) for web services. In Proceedings of the IEEE International Conference on Web Services (ICWS’05), Orlando, FL, USA, 11–15 July 2005; IEEE: Piscataway, NJ, USA, 2005. [Google Scholar]
- Zhu, Y.; Huang, D.; Hu, C.J.; Wang, X. From RBAC to ABAC: Constructing Flexible Data Access Control for Cloud Storage Services. IEEE Trans. Serv. Comput. 2015, 8, 601–616. [Google Scholar] [CrossRef]
- Hardt, D. ; The OAuth 2.0 Authorization Framework; Internet Engineering Task Force (IETF): Wilmington, DE, USA, 2012. [Google Scholar]
- Digital CEF. Context Broker, Make Data-Driven Decisions in Real Time, at the Right Time. Available online: https://ec.europa.eu/cefdigital/wiki/display/CEFDIGITAL/Context+Broker (accessed on 3 September 2019).
- Alliance, O.M. NGSI Context Management; Technical Report; Open Mobile Alliance: San Diego, CA, USA, 2012. [Google Scholar]
- Alonso, Á.; Fernández, F.; Marco, L.; Salvachúa, J. IAACaaS: IoT Application-Scoped Access Control as a Service. Futur. Internet 2017, 9, 64. [Google Scholar] [CrossRef]
- Fernández, F.; Alonso, Á.; Marco, L.; Salvachúa, J. A model to enable application-scoped access control as a service for IoT using OAuth 2.0. In Proceedings of the 20th Conference on Innovations in Clouds, Internet and Networks (ICIN), Paris, France, 7–9 March 2017; pp. 322–324. [Google Scholar] [CrossRef] [Green Version]
- Vaglica, G.; Bono, F.; Renaldi, G. A JRC FIWARE Testbed for SMART Building and Infrastructures; Publications Office of the European Union: Luxembourg, 2020. [Google Scholar]
- Liaw, A.; Wiener, M. Classification and regression by randomForest. R News 2002, 2, 18–22. [Google Scholar]
- Conde, J.; Munoz-Arcentales, A.; Alonso, Á.; López-Pernas, S.; Salvachua, J. Modeling Digital Twin Data and Architecture: A Building Guide with FIWARE as Enabling Technology. IEEE Internet Comput. 2021, 25, 1. [Google Scholar] [CrossRef]
- Munoz-Arcentales, A.; López-Pernas, S.; Pozo, A.; Alonso, Á.; Salvachúa, J.; Huecas, G. Data Usage and Access Control in Industrial Data Spaces: Implementation Using FIWARE. Sustainability 2020, 12, 3885. [Google Scholar] [CrossRef]
- Munoz-Arcentales, A.; López-Pernas, S.; Pozo, A.; Alonso, Á.; Salvachúa, J.; Huecas, G. An Architecture for Providing Data Usage and Access Control in Data Sharing Ecosystems. In Proceedings of the 6th International Symposium on Emerging Information, Communication and Networks (EICN 2019), Coimbra, Portugal, 4–7 November 2019; Volume 160, pp. 590–597. [Google Scholar] [CrossRef]
- Alonso, Á.; Pozo, A.; Gordillo, A.; López-Pernas, S.; Munoz-Arcentales, A.; Marco, L.; Barra, E. Enhancing University Services by Extending the eIDAS European Specification with Academic Attributes. Sustainability 2020, 12, 770. [Google Scholar] [CrossRef] [Green Version]
References | Field | Context Data | Context Processing | Identified Issues | Platform |
---|---|---|---|---|---|
[13] | Smart Transportation | Time day Day Weather | Naïve Bayesian classifier | Scalability | Ad-hoc |
[14] | Dates Location User activities | Context ontology, XML rules | Scalability | Ad-hoc | |
[15] | User location, Vehicle data, Urban Data | Gradient boosting Decision tree Deep learning | Scalability | Ad-hoc | |
[16] | Smart Buildings | Temperature Room User location | Rule based threshold | Heterogenous data not addressed | Ad-hoc |
[17] | Elevator position User location | Graph based rules | Heterogenous data not addressed Scalability | Ad-hoc | |
[18] | Smart Farming | Temperature Humidity | Rule Based classifiers | Heterogenous data not addressed Scalability | IBM Bluemix for IoT |
[12] | Temperature HumiditySoil Moisture | Rule Based classifiers ML Algorithms | Heterogenous data not addressed Scalability | Cloud-Based | |
[23,24,25,27] | Temperature Humidity Soil Moisture Weather | Rule Based classifiers ML Algorithms | Outdated standard version | Cloud Based FIWARE |
Time | Day | Month | Year | Weekday | Purchases |
---|---|---|---|---|---|
6 | 14 | 1 | 2016 | 3 | 12 |
7 | 14 | 1 | 2016 | 3 | 12 |
8 | 14 | 1 | 2016 | 3 | 23 |
9 | 14 | 1 | 2016 | 3 | 45 |
10 | 14 | 1 | 2016 | 3 | 55 |
11 | 14 | 1 | 2016 | 3 | 37 |
12 | 14 | 1 | 2016 | 3 | 42 |
13 | 14 | 1 | 2016 | 3 | 41 |
14 | 14 | 1 | 2016 | 3 | 38 |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Munoz-Arcentales, A.; López-Pernas, S.; Conde, J.; Alonso, Á.; Salvachúa, J.; Hierro, J.J. Enabling Context-Aware Data Analytics in Smart Environments: An Open Source Reference Implementation. Sensors 2021, 21, 7095. https://doi.org/10.3390/s21217095
Munoz-Arcentales A, López-Pernas S, Conde J, Alonso Á, Salvachúa J, Hierro JJ. Enabling Context-Aware Data Analytics in Smart Environments: An Open Source Reference Implementation. Sensors. 2021; 21(21):7095. https://doi.org/10.3390/s21217095
Chicago/Turabian StyleMunoz-Arcentales, Andres, Sonsoles López-Pernas, Javier Conde, Álvaro Alonso, Joaquín Salvachúa, and Juan José Hierro. 2021. "Enabling Context-Aware Data Analytics in Smart Environments: An Open Source Reference Implementation" Sensors 21, no. 21: 7095. https://doi.org/10.3390/s21217095