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