MySQL for the Internet of Things

Book description

This book introduces the problems facing Internet of Things developers and explores current technologies and techniques to help you manage, mine, and make sense of the data being collected through the use of the world’s most popular database on the Internet - MySQL.

The IoT is poised to change how we interact with and perceive the world around us, and the possibilities are nearly boundless. As more and more connected devices generate data, we will need to solve the problem of how to collect, store, and make sense of IoT data by leveraging the power of database systems.

The book begins with an introduction of the MySQL database system and storage of sensor data. Detailed instructions and examples are provided to show how to add database nodes to IoT solutions including how to leverage MySQL high availability, including examples of how to protect data from node outages using advanced features of MySQL.

The book closes with a comparison of raw and transformed data showing how transformed data can improve understandability and help you cut through a clutter of superfluous data toward the goal of mining nuggets of useful knowledge.

Table of contents

  1. Cover
  2. Title
  3. Copyright
  4. Dedication
  5. Contents at a Glance
  6. Contents
  7. About the Author
  8. About the Technical Reviewer
  9. Introduction
  10. Acknowledgments
  11. Chapter 1 : The Internet of Things and Data
    1. IOT Solutions
      1. IOT Is More Than Just Connected to the Internet
      2. IOT Services
      3. Example IOT Solutions
    2. What Is IOT Data?
    3. IOT Predictions: Data Overload?
      1. Addressing IOT Devices
      2. IOT and Big Data
    4. IOT Security
      1. Common Security Threats
      2. Securing IOT Solutions
    5. Summary
  12. Chapter 2 : Hardware for IOT Solutions
    1. Microcontrollers
      1. What Is an Arduino?
      2. Arduino Models
      3. Arduino Clones
      4. Arduino Tutorial
      5. Additional Arduino Hardware
    2. Low-Powered Computing Platforms
      1. Arduino Hybrids
      2. Computer Boards
    3. Sensors
      1. Analog Sensors
      2. Digital Sensors
      3. Storing Sensor Data
      4. Examples of Sensors
    4. Computer Systems
    5. Summary
  13. Chapter 3 : How IOT Data Is Stored
    1. Distributed IOT
      1. Data Collectors
      2. Data Collectors with Storage
      3. Actionable Device
      4. Data Aggregators
      5. Database Server
    2. Local On-Device Storage
      1. Local Storage on the Raspberry Pi
      2. Local Storage on the Arduino
    3. Passing the Buck to Aggregators
    4. Database Storage
      1. Benefits
      2. Techniques
      3. Considerations
    5. Distributed IOT Network Best Practices
      1. Node Placement
      2. Data Storage
      3. Presentation
    6. Summary
  14. Chapter 4 : Data Transformation
    1. Making Sense of IOT Data
      1. What Is Being Observed?
      2. Is There Another Way to Make the Observation?
      3. How Often Do You Need to Record the Observation?
      4. What Type of Data Does the Sensor Produce?
      5. Are There Interpretations Needed for the Observation Data?
      6. What Level of Accuracy Do You Need?
      7. What Is the Lifetime of the Data?
    2. Annotation
      1. Recording the Sensor Name or Adding Notes
      2. Recording the Date and Time
      3. Data Type Transformations
      4. Adding Derived or Calculated Data
      5. Data Interpretations
    3. Aggregation
      1. Data from Multiple Sensors
      2. Data from Multiple Nodes
      3. Aggregate Calculations
    4. Summary
  15. Chapter 5 : MySQL Primer
    1. Getting Started
      1. How Do I Use MySQL?
      2. How to Get and Install MySQL
    2. How Data Is Stored and Retrieved
      1. How and Where MySQL Stores Data
    3. Common MySQL Commands and Concepts
      1. MySQL Commands
      2. MySQL Concepts
    4. Planning Database Storage for IOT Data
      1. Example 1: Plant-Monitoring System
      2. Recommendations and Best Practices
    5. Summary
  16. Chapter 6 : Building Low-Cost MySQL Data Nodes
    1. Introducing the Raspberry Pi
      1. Noble Origins
      2. Models
      3. A Tour of the Board
      4. Required Accessories
      5. Recommended Accessories
      6. Where to Buy
    2. Raspberry Pi Tutorial
      1. Choosing a Boot Image (Operating System)
      2. Booting Up
    3. MySQL Installation and Setup
      1. Partitioning and Formatting the Drive
      2. Setting Up Automatic Drive Mounting
      3. Installing MySQL Server
    4. Other Platforms
      1. BeagleBone Black
      2. pcDuino
      3. Intel Galileo
    5. MySQL Clients: How to Connect and Save Data
    6. IntroducingConnector/Arduino
      1. Introducing Connector/Python
    7. Summary
  17. Chapter 7 : High Availability IOT Solutions
    1. What Is High Availability?
    2. High Availability Options for IOT Solutions with MySQL
      1. Recovery
      2. Redundancy
      3. Scaling
      4. Fault Tolerance
    3. High Availability Techniques
      1. Backup and Recovery
      2. MySQL Replication Primer
      3. Fault Tolerance in IOT Nodes
    4. Summary
  18. Chapter 8 : Demonstration of High Availability Techniques
    1. MySQL Replication Techniques
      1. Transaction Processing
      2. Advanced Replication with Global Transaction Identifiers
      3. Replication and Database Maintenance Tips
      4. Example: Scaling Applications
    2. High Availability IOT Nodes
      1. Example: Redundant Data Collectors
      2. Example: Fault-Tolerant Data Collector
    3. Summary
  19. Index

Product information

  • Title: MySQL for the Internet of Things
  • Author(s): Charles Bell
  • Release date: February 2016
  • Publisher(s): Apress
  • ISBN: 9781484212936