SlideShare a Scribd company logo
| © Copyright 2022, InfluxData
1
Best Practices: How to
Analyze IoT Sensor Data with
InfluxDB
Brian Gilmore
September 2022
| © Copyright 2022, InfluxData
2
Agenda
● The basics of time series data and applications
● A platform overview — InfluxDB, Telegraf, and Flux
● How to start collecting data at the edge and use your
preferred IoT protocol (i.e. MQTT)
| © Copyright 2022, InfluxData
3
Brian Gilmore
Director of IoT and Emerging Technology
● Four amazing months at InfluxData
● Hospitals → Aquariums → Smart Buildings → Software
● Driven to democratize technology
● Passionate about diversity and inclusion
● Reach out for absolutely anything!
| © Copyright 2022, InfluxData
4
Key Drivers for Time Series Applications
Performance,
Availability, and
Security
Time Series Data
from Assets and
Applications
ACCESS ANALYZE ACT
Improve and Expand
the Business
| © Copyright 2022, InfluxData
5
Key Components of Time Series Applications
Data Source
Data Source
Data Source
Data Source
Data Source
Applications Infrastructure
Event Processing
• Detection
• Recognition
• Transformation
• Enrichment
• Routing
Database
Real-time Data
Historical Data
APIs
Automation
Customer Apps
Partner Apps
Internal Apps
• Supervisory Control
• Rules-based Exception Handling
• ML Model Distribution
• ML Training Data Distribution
Instrumentation Actuation Automation
Administration
Push Ingestion
Poll Ingestion
| © Copyright 2022, InfluxData
6 | © Copyright 2022, InfluxData
6
Time Series Data
| © Copyright 2022, InfluxData
7
What is Time Series Data?
• Weather conditions
• Stock prices
• CPU use
• Healthcare Metrics
• Logs
• Traces
Sensors
in the physical world
Instrumentation
of the virtual world
A sequence of data points, typically consisting of successive
measurements made from the same source over a time interval.
E X A M P L E S
| © Copyright 2022, InfluxData
8
Metrics, Events, and Traces
Usually derived through sampling, usually numeric, and
typically regular in period.
Usually emitted, on-event or on-exception. Can be either
numeric or strings. Irregular period by nature.
Bundled and uniquely labeled collections of related
metrics and events related to a specific transaction or
interaction. Irregular period and explicit duration.
Metrics
Events
Traces
| © Copyright 2022, InfluxData
9
How They Relate
Metrics (one/sec):
Events (varied):
Traces (bundled):
12s
3s
8.26s
Condition 1
Condition 2
Condition 3
Condition 4
Trace ID: 86ef2836-58fe-4a2e-ba69-3de4596072fd
duration 37 seconds
6s
| © Copyright 2022, InfluxData
10
Timestamp Precision
• Relative time - :since epoch:
• Ideal to create early and
maintain throughout pipeline
• Must consider implications of
aggregation vs truncation
• Use cases: event ordering,
correlation, time-bounded
analytics
| © Copyright 2022, InfluxData
11
Data Granularity
• Loosely coupled to precision
• Also referred to as “sample rate”
• Refers to the number of discrete
samples per series per window
of time
• Reduce granularity through
aggregation and roll-ups
• Ideally retain data shape
through advanced post
processing like SDA or
Holt-Winters or raw-retention
| © Copyright 2022, InfluxData
12 | © Copyright 2022, InfluxData
12
Time Series Data in InfluxDB
| © Copyright 2022, InfluxData
13
Functional Architecture
Sensors
Metrics
Events
Transactions
Instrumentation
InfluxDB Edge Nodes
(OSS)
Functions*:
Input configuration
Input monitoring
Timestamping
Linebreaking
Whitespace handling
In-stream processing
Line Protocol Conversion
Output configuration
Output routing
InfluxDB Clusters
(Enterprise or
Cloud)
REST API Client Libraries Data Explorer Notebooks Visualizations
Time Series Applications
Monitor, Troubleshoot, Alert, Predict, Automate
Edge Datacenter Cloud
Kafka
Kinesis
CSP Pub/Sub
Cloud Native
Telegraf
| © Copyright 2022, InfluxData
14
Line Protocol
ALL time series data is written to InfluxDB using Line Protocol, and
uses the following format:
<measurement>[,<tag-key>=<tag-value>] [<field-key>=<field-value>]
[unix-nano-timestamp]
Tag Set
hostname=server02, us_west=az
Measurement
cpu_load,
Field Set
temp=24.5, volts=7
Timestamp
1234567890000000
Where data is formatted as line protocol is user and use case specific. Telegraf provides significant
shortcuts for many popular data sources and formats, and new Cloud-Native Data Connectors
provide JSONPath and Regex parsing solutions to work with more unstructured data. Customers
often build telemetry pipelines specifically for LP delivery to InfluxDB
| © Copyright 2022, InfluxData
15
Fields and Tags
• Tags are like labels, designed to further
specify and disambiguate similar
signals. They are indexed for fast seek,
filtering, and grouping.
• Fields are the primary numerical and
other values to be monitored. They are
not indexed as stored values are highly
variable.
• Tags are best for metadata,
Fields are best for samples
sample time: Friday July 15 2022 15:40:50 GMT
machine id: SN0039992 (TAG)
lab id: MEDF-MA-US01 (TAG)
patient id: 123456789A (TAG)
sample volume: 23.24 (FIELD)
sample units: ml (TAG)
cell count: 234 (FIELD)
| © Copyright 2022, InfluxData
16
Considering Data Cardinality
Cardinality: The number of unique measurement, tag set, and field key combinations
in an InfluxDB bucket or database.
Bucket Measurement SensorID SensorName Fields Series #
myBucket Temperature SN001 Discharge Temp t=71.1 1
myBucket Temperature SN001 Discharge Temp t=72.4 1
myBucket Temperature SN001 Discharge Temp t=76.3 1
myBucket Temperature SN002 Inlet Temp temp=71.8 2
myBucket Humidity SN003 Discharge Hum h=60.6 3
myBucket Humidity SN004 Inlet Hum h=61.2 4
Series Cardinality = 4
For example:
1. Two distinct “Measurements,” impact of (2)
2. Four distinct “SensorIDs,” impact of (2) - two
unique for Temperature, two have a 1:1
relationship with Measurement
3. Four distinct “SensorNames,” with 1:1
relationship with SensorID, impact of (0)
4. Three distinct field keys, 1:1 relationship with
SensorName and SensorID, impact of (0)
Failure to normalize measurement names, tag names, and field keys is the quickest way to increased
cardinality. In the above example, if just one of the Discharge Temp Value’s field keys were changed to
“temp,” this would increase the series cardinality to 5.
High cardinality can impact the performance of very large databases where cardinality can reach hundreds
of millions of unique series. Poor data hygiene at this scale can have significant impact on search
performance. While this is uncommon - good data hygiene is always best
| © Copyright 2022, InfluxData
17 | © Copyright 2022, InfluxData
17
Flux: Built for Time Series
| © Copyright 2022, InfluxData
18
Flux is a Functional Scripting Language
API CLI
/api/v2/query influx query [query literal] [flags]
Basic Examples Capability Overview
Main Features:
• Source Data
• Filter Data
• Shape Data
• Process Data
Data Model Components:
• Tables
• Records
• Columns
• Streams
About Flux
Flux is a functional data scripting language designed to unify querying, processing,
analyzing, and acting on data into a single syntax.
InfluxDB
Bucket
CSV File
SQL Server
| © Copyright 2022, InfluxData
19
Flux Precepts
• Functional Language
• Declarative Language
• Strongly and Statically Typed
• Objects are Immutable
• Named Parameters
• Overloaded Parameters
• Pipe-Forward (|>)
• Operates on Streaming
Tables
• Map and Reduce capable
• Extensible Packages
• Imports
| © Copyright 2022, InfluxData
20
Common Flux Functions
Function Purpose
Parameters: default
(options)
Example
group() Regroup input data by
modifying group keys in
input tables
Columns: [] (*)
mode: by (by, except)
tables: (<-)
tables
|> group(columns: ["_time", "tag"])
aggregateWindow() Groups data into fixed
windows of time and
then applies aggregator
every: NA (*)
function: NA (min, max,
etc)
tables
|> aggregateWindow(every: 20s, fn: mean)
Conditional Logic Applies if, then, else
logic
if, else if, else if r._value > 95.0000001 and r._value <= 100.0
then
"critical"
else if r._value > 85.0000001 and r._value <=
95.0 then
"warning"
else if r._value > 70.0000001 and r._value <=
85.0 then
"high"
else
"normal"
| © Copyright 2022, InfluxData
21
Flux Secret Weapons
Function Purpose
Parameters: default
(options)
Example
map() Iterates through
table rows and
applies a function
fn: NA (function)
tables: <- (input data)
|> map(fn: (r) => ({time: r._time, source: r.tag,
alert: if r._value > 10 then true else false}))
stateDuration() Calculates
cumulative duration
of a given state
fn: NA (function)
column: stateDuration (*)
timeColumn: _time (*)
unit: 1s (ns,us,ms,s,m,h,d)
tables: <- (input data)
|> stateDuration(fn: (r) => r._value < 15)
Custom
Functions
Fully customize flux functionName: NA
functionParameters: NA
functionOperators: NA
// Function definition
multByX = (tables=<-, x) => tables
|> map(fn: (r) => ({r with _value: r._value *
x}))
// Function usage
from(bucket: "example-bucket")
|> range(start: -1m)
|> filter(fn: (r) => r._measurement == "mem" and
r._field == "used_percent")
|> multByX(x: 2.0)
| © Copyright 2022, InfluxData
22
Why Use Flux?
• Works natively with InfluxDB storage and
computing
• Runs against InfluxDB buckets, 1.x databases,
.csv files and SQL compliant stores
• Unified language for querying, processing,
and task execution
• Allows developers to run time series data
processing code inside the time series
database
Deeply Integrated Highly Functional
• Join and Union support
• Over 500 included functions
• Inputs
• Outputs
• Transformations
• Dynamic Queries
• Geotemporal support
• Task and Notification support
• Type Conversions
• Timestamp handling
| © Copyright 2022, InfluxData
23 | © Copyright 2022, InfluxData
23
New InfluxDB Features for IoT
| © Copyright 2022, InfluxData
24
InfluxData Edge Data Replication (EDR)
API CLI
/api/v2/remotes influx remote [create,delete,list,update]
/api/v2/replications influx replication [create,delete,list,update]
Cloud (InfluxDB Cloud) Database(s)
Enables:
• Raw data replication
• Hybrid downsampling
• Eventual consistency
Build:
• Database distribution
• Hybrid apps
• ML pipelines
Bucket Queue
Bucket Queue
Flux
Edge (InfluxDB) Databases
Disk
| © Copyright 2022, InfluxData
25
InfluxData Native Collectors
Apps & Devices
IOT OT IT Mobile
Logs
Metrics
&
Events
Traces Transactions
Sensors Assets Products Comms
Publish
InfluxDB
1. Configure
Subscriptions &
Connections
2. Define Parsing
Rules
(LP, JSON, RegEx)
3. Configure Routing
(Buckets)
Low-code UI Wizard
Subscribe
Brokers and Streaming APIs
Topics and Queues
iotdevices/amer/r23rr23042/temperature
iotdevices/asia/tower1/floor 81/humidity
mobile/apps/myapp/errors
servermon/server1/cpu
factory1/line1/machineA/output
| © Copyright 2022, InfluxData
26 | © Copyright 2022, InfluxData
26
Demo - Cloud Native MQTT
| © Copyright 2022, InfluxData
27
| © Copyright 2022, InfluxData
28
| © Copyright 2022, InfluxData
29
| © Copyright 2022, InfluxData
30
| © Copyright 2022, InfluxData
31
| © Copyright 2022, InfluxData
32
| © Copyright 2022, InfluxData
33
| © Copyright 2022, InfluxData
34
InfluxDB University
Free live and self-paced
training on:
• InfluxDB
• Telegraf
• Flux
• Kapacitor
• and more
Scan to explore
the course catalog
influxdbu.com
Enroll for free at influxdbu.com
Join InfluxDB University
Deeply technical,
single-track InfluxDB event
Join the two-day developer conference dedicated
to building IoT, analytics, and cloud applications
with InfluxDB.
November 2-3, 2022
Register today for free: influxdays.com
Taming the Telegraf Tiger Training
November 1, 2022
Virtual - Pacific Time
Free - Limit: 300
Register today for free: influxdays.com
Advanced Flux Training
November 8-9, 2022
In-Person - London, UK
£500 - Limit: 50
Taming the Telegraf Tiger Training
November 1, 2022
Virtual - Pacific Time
InfluxDays 2022 Conference
November 2-3, 2022
Virtual & In-Person
Register today for free: influxdays.com
Advanced Flux Training
November 8-9, 2022
In-Person - London, UK
| © Copyright 2022, InfluxData
40
T H A N K Y O U

More Related Content

What's hot

Jenkins Pipelines
Jenkins PipelinesJenkins Pipelines
Jenkins Pipelines
Steffen Gebert
 
Docker introduction
Docker introductionDocker introduction
Docker introduction
Phuc Nguyen
 
Présentation Docker
Présentation DockerPrésentation Docker
Présentation Docker
Colin LEVERGER
 
Start Automating InfluxDB Deployments at the Edge with balena
Start Automating InfluxDB Deployments at the Edge with balena Start Automating InfluxDB Deployments at the Edge with balena
Start Automating InfluxDB Deployments at the Edge with balena
InfluxData
 
Apache Druid 101
Apache Druid 101Apache Druid 101
Apache Druid 101
Data Con LA
 
Slide DevSecOps Microservices
Slide DevSecOps Microservices Slide DevSecOps Microservices
Slide DevSecOps Microservices
Hendri Karisma
 
Monitoring Kubernetes with Prometheus
Monitoring Kubernetes with PrometheusMonitoring Kubernetes with Prometheus
Monitoring Kubernetes with Prometheus
Grafana Labs
 
[OpenStack Days Korea 2016] Track1 - 카카오는 오픈스택 기반으로 어떻게 5000VM을 운영하고 있을까?
[OpenStack Days Korea 2016] Track1 - 카카오는 오픈스택 기반으로 어떻게 5000VM을 운영하고 있을까?[OpenStack Days Korea 2016] Track1 - 카카오는 오픈스택 기반으로 어떻게 5000VM을 운영하고 있을까?
[OpenStack Days Korea 2016] Track1 - 카카오는 오픈스택 기반으로 어떻게 5000VM을 운영하고 있을까?
OpenStack Korea Community
 
Intro to InfluxDB
Intro to InfluxDBIntro to InfluxDB
Intro to InfluxDB
InfluxData
 
Introduction to Docker Compose
Introduction to Docker ComposeIntroduction to Docker Compose
Introduction to Docker Compose
Ajeet Singh Raina
 
Kafka 101
Kafka 101Kafka 101
Kafka 101
Clement Demonchy
 
Introduction To Containers - Builders Day Israel
Introduction To Containers - Builders Day IsraelIntroduction To Containers - Builders Day Israel
Introduction To Containers - Builders Day Israel
Amazon Web Services
 
Apache flink
Apache flinkApache flink
Apache flink
pranay kumar
 
Influxdb and time series data
Influxdb and time series dataInfluxdb and time series data
Influxdb and time series data
Marcin Szepczyński
 
InfluxDB & Grafana
InfluxDB & GrafanaInfluxDB & Grafana
InfluxDB & Grafana
Pedro Salgado
 
Apache Zookeeper
Apache ZookeeperApache Zookeeper
Apache Zookeeper
Nguyen Quang
 
Understanding MicroSERVICE Architecture with Java & Spring Boot
Understanding MicroSERVICE Architecture with Java & Spring BootUnderstanding MicroSERVICE Architecture with Java & Spring Boot
Understanding MicroSERVICE Architecture with Java & Spring Boot
Kashif Ali Siddiqui
 
Amazon GuardDuty Threat Detection and Remediation
Amazon GuardDuty Threat Detection and RemediationAmazon GuardDuty Threat Detection and Remediation
Amazon GuardDuty Threat Detection and Remediation
Amazon Web Services
 
Stream processing using Kafka
Stream processing using KafkaStream processing using Kafka
Stream processing using Kafka
Knoldus Inc.
 
Grafana vs Kibana
Grafana vs KibanaGrafana vs Kibana
Grafana vs Kibana
jeetendra mandal
 

What's hot (20)

Jenkins Pipelines
Jenkins PipelinesJenkins Pipelines
Jenkins Pipelines
 
Docker introduction
Docker introductionDocker introduction
Docker introduction
 
Présentation Docker
Présentation DockerPrésentation Docker
Présentation Docker
 
Start Automating InfluxDB Deployments at the Edge with balena
Start Automating InfluxDB Deployments at the Edge with balena Start Automating InfluxDB Deployments at the Edge with balena
Start Automating InfluxDB Deployments at the Edge with balena
 
Apache Druid 101
Apache Druid 101Apache Druid 101
Apache Druid 101
 
Slide DevSecOps Microservices
Slide DevSecOps Microservices Slide DevSecOps Microservices
Slide DevSecOps Microservices
 
Monitoring Kubernetes with Prometheus
Monitoring Kubernetes with PrometheusMonitoring Kubernetes with Prometheus
Monitoring Kubernetes with Prometheus
 
[OpenStack Days Korea 2016] Track1 - 카카오는 오픈스택 기반으로 어떻게 5000VM을 운영하고 있을까?
[OpenStack Days Korea 2016] Track1 - 카카오는 오픈스택 기반으로 어떻게 5000VM을 운영하고 있을까?[OpenStack Days Korea 2016] Track1 - 카카오는 오픈스택 기반으로 어떻게 5000VM을 운영하고 있을까?
[OpenStack Days Korea 2016] Track1 - 카카오는 오픈스택 기반으로 어떻게 5000VM을 운영하고 있을까?
 
Intro to InfluxDB
Intro to InfluxDBIntro to InfluxDB
Intro to InfluxDB
 
Introduction to Docker Compose
Introduction to Docker ComposeIntroduction to Docker Compose
Introduction to Docker Compose
 
Kafka 101
Kafka 101Kafka 101
Kafka 101
 
Introduction To Containers - Builders Day Israel
Introduction To Containers - Builders Day IsraelIntroduction To Containers - Builders Day Israel
Introduction To Containers - Builders Day Israel
 
Apache flink
Apache flinkApache flink
Apache flink
 
Influxdb and time series data
Influxdb and time series dataInfluxdb and time series data
Influxdb and time series data
 
InfluxDB & Grafana
InfluxDB & GrafanaInfluxDB & Grafana
InfluxDB & Grafana
 
Apache Zookeeper
Apache ZookeeperApache Zookeeper
Apache Zookeeper
 
Understanding MicroSERVICE Architecture with Java & Spring Boot
Understanding MicroSERVICE Architecture with Java & Spring BootUnderstanding MicroSERVICE Architecture with Java & Spring Boot
Understanding MicroSERVICE Architecture with Java & Spring Boot
 
Amazon GuardDuty Threat Detection and Remediation
Amazon GuardDuty Threat Detection and RemediationAmazon GuardDuty Threat Detection and Remediation
Amazon GuardDuty Threat Detection and Remediation
 
Stream processing using Kafka
Stream processing using KafkaStream processing using Kafka
Stream processing using Kafka
 
Grafana vs Kibana
Grafana vs KibanaGrafana vs Kibana
Grafana vs Kibana
 

Similar to Best Practices: How to Analyze IoT Sensor Data with InfluxDB

InfluxDB 101 – Concepts and Architecture by Michael DeSa, Software Engineer |...
InfluxDB 101 – Concepts and Architecture by Michael DeSa, Software Engineer |...InfluxDB 101 – Concepts and Architecture by Michael DeSa, Software Engineer |...
InfluxDB 101 – Concepts and Architecture by Michael DeSa, Software Engineer |...
InfluxData
 
Big Data Berlin v8.0 Stream Processing with Apache Apex
Big Data Berlin v8.0 Stream Processing with Apache Apex Big Data Berlin v8.0 Stream Processing with Apache Apex
Big Data Berlin v8.0 Stream Processing with Apache Apex
Apache Apex
 
Thomas Weise, Apache Apex PMC Member and Architect/Co-Founder, DataTorrent - ...
Thomas Weise, Apache Apex PMC Member and Architect/Co-Founder, DataTorrent - ...Thomas Weise, Apache Apex PMC Member and Architect/Co-Founder, DataTorrent - ...
Thomas Weise, Apache Apex PMC Member and Architect/Co-Founder, DataTorrent - ...
Dataconomy Media
 
Why You Should NOT Be Using an RDBMS for Time-stamped Data
Why You Should NOT Be Using an RDBMS for Time-stamped DataWhy You Should NOT Be Using an RDBMS for Time-stamped Data
Why You Should NOT Be Using an RDBMS for Time-stamped Data
DevOps.com
 
Why You Should NOT Be Using an RDBS for Time-stamped Data
 Why You Should NOT Be Using an RDBS for Time-stamped Data Why You Should NOT Be Using an RDBS for Time-stamped Data
Why You Should NOT Be Using an RDBS for Time-stamped Data
DevOps.com
 
Intro to Time Series
Intro to Time Series Intro to Time Series
Intro to Time Series
InfluxData
 
Influx data basic
Influx data basicInflux data basic
Influx data basic
Сергій Саварин
 
Intro to Kapacitor for Alerting and Anomaly Detection
Intro to Kapacitor for Alerting and Anomaly DetectionIntro to Kapacitor for Alerting and Anomaly Detection
Intro to Kapacitor for Alerting and Anomaly Detection
InfluxData
 
Tracing-for-fun-and-profit.pptx
Tracing-for-fun-and-profit.pptxTracing-for-fun-and-profit.pptx
Tracing-for-fun-and-profit.pptx
Hai Nguyen Duy
 
Introduction to Time Series Analytics with Microsoft Azure
Introduction to Time Series Analytics with Microsoft AzureIntroduction to Time Series Analytics with Microsoft Azure
Introduction to Time Series Analytics with Microsoft Azure
Codit
 
Virtual training intro to InfluxDB - June 2021
Virtual training  intro to InfluxDB  - June 2021Virtual training  intro to InfluxDB  - June 2021
Virtual training intro to InfluxDB - June 2021
InfluxData
 
Real Time Event Processing and In-­memory analysis of Big Data - StampedeCon ...
Real Time Event Processing and In-­memory analysis of Big Data - StampedeCon ...Real Time Event Processing and In-­memory analysis of Big Data - StampedeCon ...
Real Time Event Processing and In-­memory analysis of Big Data - StampedeCon ...
StampedeCon
 
Real Time Test Data with Grafana
Real Time Test Data with GrafanaReal Time Test Data with Grafana
Real Time Test Data with Grafana
Ioannis Papadakis
 
Feature drift monitoring as a service for machine learning models at scale
Feature drift monitoring as a service for machine learning models at scaleFeature drift monitoring as a service for machine learning models at scale
Feature drift monitoring as a service for machine learning models at scale
Noriaki Tatsumi
 
Intro to Apache Apex - Next Gen Platform for Ingest and Transform
Intro to Apache Apex - Next Gen Platform for Ingest and TransformIntro to Apache Apex - Next Gen Platform for Ingest and Transform
Intro to Apache Apex - Next Gen Platform for Ingest and Transform
Apache Apex
 
Reduce SRE Stress: Minimizing Service Downtime with Grafana, InfluxDB and Tel...
Reduce SRE Stress: Minimizing Service Downtime with Grafana, InfluxDB and Tel...Reduce SRE Stress: Minimizing Service Downtime with Grafana, InfluxDB and Tel...
Reduce SRE Stress: Minimizing Service Downtime with Grafana, InfluxDB and Tel...
InfluxData
 
Webinar: Data Modeling and Shortcuts to Success in Scaling Time Series Applic...
Webinar: Data Modeling and Shortcuts to Success in Scaling Time Series Applic...Webinar: Data Modeling and Shortcuts to Success in Scaling Time Series Applic...
Webinar: Data Modeling and Shortcuts to Success in Scaling Time Series Applic...
DATAVERSITY
 
Teradata Partner 2016 Gas_Turbine_Sensor_Data
Teradata Partner 2016 Gas_Turbine_Sensor_DataTeradata Partner 2016 Gas_Turbine_Sensor_Data
Teradata Partner 2016 Gas_Turbine_Sensor_Data
pepeborja
 
Exploring Neo4j Graph Database as a Fast Data Access Layer
Exploring Neo4j Graph Database as a Fast Data Access LayerExploring Neo4j Graph Database as a Fast Data Access Layer
Exploring Neo4j Graph Database as a Fast Data Access Layer
Sambit Banerjee
 
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...
Nesma
 

Similar to Best Practices: How to Analyze IoT Sensor Data with InfluxDB (20)

InfluxDB 101 – Concepts and Architecture by Michael DeSa, Software Engineer |...
InfluxDB 101 – Concepts and Architecture by Michael DeSa, Software Engineer |...InfluxDB 101 – Concepts and Architecture by Michael DeSa, Software Engineer |...
InfluxDB 101 – Concepts and Architecture by Michael DeSa, Software Engineer |...
 
Big Data Berlin v8.0 Stream Processing with Apache Apex
Big Data Berlin v8.0 Stream Processing with Apache Apex Big Data Berlin v8.0 Stream Processing with Apache Apex
Big Data Berlin v8.0 Stream Processing with Apache Apex
 
Thomas Weise, Apache Apex PMC Member and Architect/Co-Founder, DataTorrent - ...
Thomas Weise, Apache Apex PMC Member and Architect/Co-Founder, DataTorrent - ...Thomas Weise, Apache Apex PMC Member and Architect/Co-Founder, DataTorrent - ...
Thomas Weise, Apache Apex PMC Member and Architect/Co-Founder, DataTorrent - ...
 
Why You Should NOT Be Using an RDBMS for Time-stamped Data
Why You Should NOT Be Using an RDBMS for Time-stamped DataWhy You Should NOT Be Using an RDBMS for Time-stamped Data
Why You Should NOT Be Using an RDBMS for Time-stamped Data
 
Why You Should NOT Be Using an RDBS for Time-stamped Data
 Why You Should NOT Be Using an RDBS for Time-stamped Data Why You Should NOT Be Using an RDBS for Time-stamped Data
Why You Should NOT Be Using an RDBS for Time-stamped Data
 
Intro to Time Series
Intro to Time Series Intro to Time Series
Intro to Time Series
 
Influx data basic
Influx data basicInflux data basic
Influx data basic
 
Intro to Kapacitor for Alerting and Anomaly Detection
Intro to Kapacitor for Alerting and Anomaly DetectionIntro to Kapacitor for Alerting and Anomaly Detection
Intro to Kapacitor for Alerting and Anomaly Detection
 
Tracing-for-fun-and-profit.pptx
Tracing-for-fun-and-profit.pptxTracing-for-fun-and-profit.pptx
Tracing-for-fun-and-profit.pptx
 
Introduction to Time Series Analytics with Microsoft Azure
Introduction to Time Series Analytics with Microsoft AzureIntroduction to Time Series Analytics with Microsoft Azure
Introduction to Time Series Analytics with Microsoft Azure
 
Virtual training intro to InfluxDB - June 2021
Virtual training  intro to InfluxDB  - June 2021Virtual training  intro to InfluxDB  - June 2021
Virtual training intro to InfluxDB - June 2021
 
Real Time Event Processing and In-­memory analysis of Big Data - StampedeCon ...
Real Time Event Processing and In-­memory analysis of Big Data - StampedeCon ...Real Time Event Processing and In-­memory analysis of Big Data - StampedeCon ...
Real Time Event Processing and In-­memory analysis of Big Data - StampedeCon ...
 
Real Time Test Data with Grafana
Real Time Test Data with GrafanaReal Time Test Data with Grafana
Real Time Test Data with Grafana
 
Feature drift monitoring as a service for machine learning models at scale
Feature drift monitoring as a service for machine learning models at scaleFeature drift monitoring as a service for machine learning models at scale
Feature drift monitoring as a service for machine learning models at scale
 
Intro to Apache Apex - Next Gen Platform for Ingest and Transform
Intro to Apache Apex - Next Gen Platform for Ingest and TransformIntro to Apache Apex - Next Gen Platform for Ingest and Transform
Intro to Apache Apex - Next Gen Platform for Ingest and Transform
 
Reduce SRE Stress: Minimizing Service Downtime with Grafana, InfluxDB and Tel...
Reduce SRE Stress: Minimizing Service Downtime with Grafana, InfluxDB and Tel...Reduce SRE Stress: Minimizing Service Downtime with Grafana, InfluxDB and Tel...
Reduce SRE Stress: Minimizing Service Downtime with Grafana, InfluxDB and Tel...
 
Webinar: Data Modeling and Shortcuts to Success in Scaling Time Series Applic...
Webinar: Data Modeling and Shortcuts to Success in Scaling Time Series Applic...Webinar: Data Modeling and Shortcuts to Success in Scaling Time Series Applic...
Webinar: Data Modeling and Shortcuts to Success in Scaling Time Series Applic...
 
Teradata Partner 2016 Gas_Turbine_Sensor_Data
Teradata Partner 2016 Gas_Turbine_Sensor_DataTeradata Partner 2016 Gas_Turbine_Sensor_Data
Teradata Partner 2016 Gas_Turbine_Sensor_Data
 
Exploring Neo4j Graph Database as a Fast Data Access Layer
Exploring Neo4j Graph Database as a Fast Data Access LayerExploring Neo4j Graph Database as a Fast Data Access Layer
Exploring Neo4j Graph Database as a Fast Data Access Layer
 
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...
Nesma autumn conference 2015 - Is FPA a valuable addition to predictable agil...
 

More from InfluxData

Announcing InfluxDB Clustered
Announcing InfluxDB ClusteredAnnouncing InfluxDB Clustered
Announcing InfluxDB Clustered
InfluxData
 
Best Practices for Leveraging the Apache Arrow Ecosystem
Best Practices for Leveraging the Apache Arrow EcosystemBest Practices for Leveraging the Apache Arrow Ecosystem
Best Practices for Leveraging the Apache Arrow Ecosystem
InfluxData
 
How Bevi Uses InfluxDB and Grafana to Improve Predictive Maintenance and Redu...
How Bevi Uses InfluxDB and Grafana to Improve Predictive Maintenance and Redu...How Bevi Uses InfluxDB and Grafana to Improve Predictive Maintenance and Redu...
How Bevi Uses InfluxDB and Grafana to Improve Predictive Maintenance and Redu...
InfluxData
 
Power Your Predictive Analytics with InfluxDB
Power Your Predictive Analytics with InfluxDBPower Your Predictive Analytics with InfluxDB
Power Your Predictive Analytics with InfluxDB
InfluxData
 
How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base
How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base
How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base
InfluxData
 
Build an Edge-to-Cloud Solution with the MING Stack
Build an Edge-to-Cloud Solution with the MING StackBuild an Edge-to-Cloud Solution with the MING Stack
Build an Edge-to-Cloud Solution with the MING Stack
InfluxData
 
Meet the Founders: An Open Discussion About Rewriting Using Rust
Meet the Founders: An Open Discussion About Rewriting Using RustMeet the Founders: An Open Discussion About Rewriting Using Rust
Meet the Founders: An Open Discussion About Rewriting Using Rust
InfluxData
 
Introducing InfluxDB Cloud Dedicated
Introducing InfluxDB Cloud DedicatedIntroducing InfluxDB Cloud Dedicated
Introducing InfluxDB Cloud Dedicated
InfluxData
 
Gain Better Observability with OpenTelemetry and InfluxDB
Gain Better Observability with OpenTelemetry and InfluxDB Gain Better Observability with OpenTelemetry and InfluxDB
Gain Better Observability with OpenTelemetry and InfluxDB
InfluxData
 
How a Heat Treating Plant Ensures Tight Process Control and Exceptional Quali...
How a Heat Treating Plant Ensures Tight Process Control and Exceptional Quali...How a Heat Treating Plant Ensures Tight Process Control and Exceptional Quali...
How a Heat Treating Plant Ensures Tight Process Control and Exceptional Quali...
InfluxData
 
How Delft University's Engineering Students Make Their EV Formula-Style Race ...
How Delft University's Engineering Students Make Their EV Formula-Style Race ...How Delft University's Engineering Students Make Their EV Formula-Style Race ...
How Delft University's Engineering Students Make Their EV Formula-Style Race ...
InfluxData
 
Introducing InfluxDB’s New Time Series Database Storage Engine
Introducing InfluxDB’s New Time Series Database Storage EngineIntroducing InfluxDB’s New Time Series Database Storage Engine
Introducing InfluxDB’s New Time Series Database Storage Engine
InfluxData
 
Understanding InfluxDB’s New Storage Engine
Understanding InfluxDB’s New Storage EngineUnderstanding InfluxDB’s New Storage Engine
Understanding InfluxDB’s New Storage Engine
InfluxData
 
Streamline and Scale Out Data Pipelines with Kubernetes, Telegraf, and InfluxDB
Streamline and Scale Out Data Pipelines with Kubernetes, Telegraf, and InfluxDBStreamline and Scale Out Data Pipelines with Kubernetes, Telegraf, and InfluxDB
Streamline and Scale Out Data Pipelines with Kubernetes, Telegraf, and InfluxDB
InfluxData
 
Ward Bowman [PTC] | ThingWorx Long-Term Data Storage with InfluxDB | InfluxDa...
Ward Bowman [PTC] | ThingWorx Long-Term Data Storage with InfluxDB | InfluxDa...Ward Bowman [PTC] | ThingWorx Long-Term Data Storage with InfluxDB | InfluxDa...
Ward Bowman [PTC] | ThingWorx Long-Term Data Storage with InfluxDB | InfluxDa...
InfluxData
 
Scott Anderson [InfluxData] | New & Upcoming Flux Features | InfluxDays 2022
Scott Anderson [InfluxData] | New & Upcoming Flux Features | InfluxDays 2022Scott Anderson [InfluxData] | New & Upcoming Flux Features | InfluxDays 2022
Scott Anderson [InfluxData] | New & Upcoming Flux Features | InfluxDays 2022
InfluxData
 
Steinkamp, Clifford [InfluxData] | Closing Thoughts | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts | InfluxDays 2022Steinkamp, Clifford [InfluxData] | Closing Thoughts | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts | InfluxDays 2022
InfluxData
 
Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...
Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...
Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...
InfluxData
 
Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022
InfluxData
 
Paul Dix [InfluxData] The Journey of InfluxDB | InfluxDays 2022
Paul Dix [InfluxData] The Journey of InfluxDB | InfluxDays 2022Paul Dix [InfluxData] The Journey of InfluxDB | InfluxDays 2022
Paul Dix [InfluxData] The Journey of InfluxDB | InfluxDays 2022
InfluxData
 

More from InfluxData (20)

Announcing InfluxDB Clustered
Announcing InfluxDB ClusteredAnnouncing InfluxDB Clustered
Announcing InfluxDB Clustered
 
Best Practices for Leveraging the Apache Arrow Ecosystem
Best Practices for Leveraging the Apache Arrow EcosystemBest Practices for Leveraging the Apache Arrow Ecosystem
Best Practices for Leveraging the Apache Arrow Ecosystem
 
How Bevi Uses InfluxDB and Grafana to Improve Predictive Maintenance and Redu...
How Bevi Uses InfluxDB and Grafana to Improve Predictive Maintenance and Redu...How Bevi Uses InfluxDB and Grafana to Improve Predictive Maintenance and Redu...
How Bevi Uses InfluxDB and Grafana to Improve Predictive Maintenance and Redu...
 
Power Your Predictive Analytics with InfluxDB
Power Your Predictive Analytics with InfluxDBPower Your Predictive Analytics with InfluxDB
Power Your Predictive Analytics with InfluxDB
 
How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base
How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base
How Teréga Replaces Legacy Data Historians with InfluxDB, AWS and IO-Base
 
Build an Edge-to-Cloud Solution with the MING Stack
Build an Edge-to-Cloud Solution with the MING StackBuild an Edge-to-Cloud Solution with the MING Stack
Build an Edge-to-Cloud Solution with the MING Stack
 
Meet the Founders: An Open Discussion About Rewriting Using Rust
Meet the Founders: An Open Discussion About Rewriting Using RustMeet the Founders: An Open Discussion About Rewriting Using Rust
Meet the Founders: An Open Discussion About Rewriting Using Rust
 
Introducing InfluxDB Cloud Dedicated
Introducing InfluxDB Cloud DedicatedIntroducing InfluxDB Cloud Dedicated
Introducing InfluxDB Cloud Dedicated
 
Gain Better Observability with OpenTelemetry and InfluxDB
Gain Better Observability with OpenTelemetry and InfluxDB Gain Better Observability with OpenTelemetry and InfluxDB
Gain Better Observability with OpenTelemetry and InfluxDB
 
How a Heat Treating Plant Ensures Tight Process Control and Exceptional Quali...
How a Heat Treating Plant Ensures Tight Process Control and Exceptional Quali...How a Heat Treating Plant Ensures Tight Process Control and Exceptional Quali...
How a Heat Treating Plant Ensures Tight Process Control and Exceptional Quali...
 
How Delft University's Engineering Students Make Their EV Formula-Style Race ...
How Delft University's Engineering Students Make Their EV Formula-Style Race ...How Delft University's Engineering Students Make Their EV Formula-Style Race ...
How Delft University's Engineering Students Make Their EV Formula-Style Race ...
 
Introducing InfluxDB’s New Time Series Database Storage Engine
Introducing InfluxDB’s New Time Series Database Storage EngineIntroducing InfluxDB’s New Time Series Database Storage Engine
Introducing InfluxDB’s New Time Series Database Storage Engine
 
Understanding InfluxDB’s New Storage Engine
Understanding InfluxDB’s New Storage EngineUnderstanding InfluxDB’s New Storage Engine
Understanding InfluxDB’s New Storage Engine
 
Streamline and Scale Out Data Pipelines with Kubernetes, Telegraf, and InfluxDB
Streamline and Scale Out Data Pipelines with Kubernetes, Telegraf, and InfluxDBStreamline and Scale Out Data Pipelines with Kubernetes, Telegraf, and InfluxDB
Streamline and Scale Out Data Pipelines with Kubernetes, Telegraf, and InfluxDB
 
Ward Bowman [PTC] | ThingWorx Long-Term Data Storage with InfluxDB | InfluxDa...
Ward Bowman [PTC] | ThingWorx Long-Term Data Storage with InfluxDB | InfluxDa...Ward Bowman [PTC] | ThingWorx Long-Term Data Storage with InfluxDB | InfluxDa...
Ward Bowman [PTC] | ThingWorx Long-Term Data Storage with InfluxDB | InfluxDa...
 
Scott Anderson [InfluxData] | New & Upcoming Flux Features | InfluxDays 2022
Scott Anderson [InfluxData] | New & Upcoming Flux Features | InfluxDays 2022Scott Anderson [InfluxData] | New & Upcoming Flux Features | InfluxDays 2022
Scott Anderson [InfluxData] | New & Upcoming Flux Features | InfluxDays 2022
 
Steinkamp, Clifford [InfluxData] | Closing Thoughts | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts | InfluxDays 2022Steinkamp, Clifford [InfluxData] | Closing Thoughts | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts | InfluxDays 2022
 
Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...
Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...
Steinkamp, Clifford [InfluxData] | Welcome to InfluxDays 2022 - Day 2 | Influ...
 
Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022
Steinkamp, Clifford [InfluxData] | Closing Thoughts Day 1 | InfluxDays 2022
 
Paul Dix [InfluxData] The Journey of InfluxDB | InfluxDays 2022
Paul Dix [InfluxData] The Journey of InfluxDB | InfluxDays 2022Paul Dix [InfluxData] The Journey of InfluxDB | InfluxDays 2022
Paul Dix [InfluxData] The Journey of InfluxDB | InfluxDays 2022
 

Recently uploaded

Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Zilliz
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
Claudio Di Ciccio
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Vladimir Iglovikov, Ph.D.
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 

Recently uploaded (20)

Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...Building RAG with self-deployed Milvus vector database and Snowpark Container...
Building RAG with self-deployed Milvus vector database and Snowpark Container...
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 

Best Practices: How to Analyze IoT Sensor Data with InfluxDB

  • 1. | © Copyright 2022, InfluxData 1 Best Practices: How to Analyze IoT Sensor Data with InfluxDB Brian Gilmore September 2022
  • 2. | © Copyright 2022, InfluxData 2 Agenda ● The basics of time series data and applications ● A platform overview — InfluxDB, Telegraf, and Flux ● How to start collecting data at the edge and use your preferred IoT protocol (i.e. MQTT)
  • 3. | © Copyright 2022, InfluxData 3 Brian Gilmore Director of IoT and Emerging Technology ● Four amazing months at InfluxData ● Hospitals → Aquariums → Smart Buildings → Software ● Driven to democratize technology ● Passionate about diversity and inclusion ● Reach out for absolutely anything!
  • 4. | © Copyright 2022, InfluxData 4 Key Drivers for Time Series Applications Performance, Availability, and Security Time Series Data from Assets and Applications ACCESS ANALYZE ACT Improve and Expand the Business
  • 5. | © Copyright 2022, InfluxData 5 Key Components of Time Series Applications Data Source Data Source Data Source Data Source Data Source Applications Infrastructure Event Processing • Detection • Recognition • Transformation • Enrichment • Routing Database Real-time Data Historical Data APIs Automation Customer Apps Partner Apps Internal Apps • Supervisory Control • Rules-based Exception Handling • ML Model Distribution • ML Training Data Distribution Instrumentation Actuation Automation Administration Push Ingestion Poll Ingestion
  • 6. | © Copyright 2022, InfluxData 6 | © Copyright 2022, InfluxData 6 Time Series Data
  • 7. | © Copyright 2022, InfluxData 7 What is Time Series Data? • Weather conditions • Stock prices • CPU use • Healthcare Metrics • Logs • Traces Sensors in the physical world Instrumentation of the virtual world A sequence of data points, typically consisting of successive measurements made from the same source over a time interval. E X A M P L E S
  • 8. | © Copyright 2022, InfluxData 8 Metrics, Events, and Traces Usually derived through sampling, usually numeric, and typically regular in period. Usually emitted, on-event or on-exception. Can be either numeric or strings. Irregular period by nature. Bundled and uniquely labeled collections of related metrics and events related to a specific transaction or interaction. Irregular period and explicit duration. Metrics Events Traces
  • 9. | © Copyright 2022, InfluxData 9 How They Relate Metrics (one/sec): Events (varied): Traces (bundled): 12s 3s 8.26s Condition 1 Condition 2 Condition 3 Condition 4 Trace ID: 86ef2836-58fe-4a2e-ba69-3de4596072fd duration 37 seconds 6s
  • 10. | © Copyright 2022, InfluxData 10 Timestamp Precision • Relative time - :since epoch: • Ideal to create early and maintain throughout pipeline • Must consider implications of aggregation vs truncation • Use cases: event ordering, correlation, time-bounded analytics
  • 11. | © Copyright 2022, InfluxData 11 Data Granularity • Loosely coupled to precision • Also referred to as “sample rate” • Refers to the number of discrete samples per series per window of time • Reduce granularity through aggregation and roll-ups • Ideally retain data shape through advanced post processing like SDA or Holt-Winters or raw-retention
  • 12. | © Copyright 2022, InfluxData 12 | © Copyright 2022, InfluxData 12 Time Series Data in InfluxDB
  • 13. | © Copyright 2022, InfluxData 13 Functional Architecture Sensors Metrics Events Transactions Instrumentation InfluxDB Edge Nodes (OSS) Functions*: Input configuration Input monitoring Timestamping Linebreaking Whitespace handling In-stream processing Line Protocol Conversion Output configuration Output routing InfluxDB Clusters (Enterprise or Cloud) REST API Client Libraries Data Explorer Notebooks Visualizations Time Series Applications Monitor, Troubleshoot, Alert, Predict, Automate Edge Datacenter Cloud Kafka Kinesis CSP Pub/Sub Cloud Native Telegraf
  • 14. | © Copyright 2022, InfluxData 14 Line Protocol ALL time series data is written to InfluxDB using Line Protocol, and uses the following format: <measurement>[,<tag-key>=<tag-value>] [<field-key>=<field-value>] [unix-nano-timestamp] Tag Set hostname=server02, us_west=az Measurement cpu_load, Field Set temp=24.5, volts=7 Timestamp 1234567890000000 Where data is formatted as line protocol is user and use case specific. Telegraf provides significant shortcuts for many popular data sources and formats, and new Cloud-Native Data Connectors provide JSONPath and Regex parsing solutions to work with more unstructured data. Customers often build telemetry pipelines specifically for LP delivery to InfluxDB
  • 15. | © Copyright 2022, InfluxData 15 Fields and Tags • Tags are like labels, designed to further specify and disambiguate similar signals. They are indexed for fast seek, filtering, and grouping. • Fields are the primary numerical and other values to be monitored. They are not indexed as stored values are highly variable. • Tags are best for metadata, Fields are best for samples sample time: Friday July 15 2022 15:40:50 GMT machine id: SN0039992 (TAG) lab id: MEDF-MA-US01 (TAG) patient id: 123456789A (TAG) sample volume: 23.24 (FIELD) sample units: ml (TAG) cell count: 234 (FIELD)
  • 16. | © Copyright 2022, InfluxData 16 Considering Data Cardinality Cardinality: The number of unique measurement, tag set, and field key combinations in an InfluxDB bucket or database. Bucket Measurement SensorID SensorName Fields Series # myBucket Temperature SN001 Discharge Temp t=71.1 1 myBucket Temperature SN001 Discharge Temp t=72.4 1 myBucket Temperature SN001 Discharge Temp t=76.3 1 myBucket Temperature SN002 Inlet Temp temp=71.8 2 myBucket Humidity SN003 Discharge Hum h=60.6 3 myBucket Humidity SN004 Inlet Hum h=61.2 4 Series Cardinality = 4 For example: 1. Two distinct “Measurements,” impact of (2) 2. Four distinct “SensorIDs,” impact of (2) - two unique for Temperature, two have a 1:1 relationship with Measurement 3. Four distinct “SensorNames,” with 1:1 relationship with SensorID, impact of (0) 4. Three distinct field keys, 1:1 relationship with SensorName and SensorID, impact of (0) Failure to normalize measurement names, tag names, and field keys is the quickest way to increased cardinality. In the above example, if just one of the Discharge Temp Value’s field keys were changed to “temp,” this would increase the series cardinality to 5. High cardinality can impact the performance of very large databases where cardinality can reach hundreds of millions of unique series. Poor data hygiene at this scale can have significant impact on search performance. While this is uncommon - good data hygiene is always best
  • 17. | © Copyright 2022, InfluxData 17 | © Copyright 2022, InfluxData 17 Flux: Built for Time Series
  • 18. | © Copyright 2022, InfluxData 18 Flux is a Functional Scripting Language API CLI /api/v2/query influx query [query literal] [flags] Basic Examples Capability Overview Main Features: • Source Data • Filter Data • Shape Data • Process Data Data Model Components: • Tables • Records • Columns • Streams About Flux Flux is a functional data scripting language designed to unify querying, processing, analyzing, and acting on data into a single syntax. InfluxDB Bucket CSV File SQL Server
  • 19. | © Copyright 2022, InfluxData 19 Flux Precepts • Functional Language • Declarative Language • Strongly and Statically Typed • Objects are Immutable • Named Parameters • Overloaded Parameters • Pipe-Forward (|>) • Operates on Streaming Tables • Map and Reduce capable • Extensible Packages • Imports
  • 20. | © Copyright 2022, InfluxData 20 Common Flux Functions Function Purpose Parameters: default (options) Example group() Regroup input data by modifying group keys in input tables Columns: [] (*) mode: by (by, except) tables: (<-) tables |> group(columns: ["_time", "tag"]) aggregateWindow() Groups data into fixed windows of time and then applies aggregator every: NA (*) function: NA (min, max, etc) tables |> aggregateWindow(every: 20s, fn: mean) Conditional Logic Applies if, then, else logic if, else if, else if r._value > 95.0000001 and r._value <= 100.0 then "critical" else if r._value > 85.0000001 and r._value <= 95.0 then "warning" else if r._value > 70.0000001 and r._value <= 85.0 then "high" else "normal"
  • 21. | © Copyright 2022, InfluxData 21 Flux Secret Weapons Function Purpose Parameters: default (options) Example map() Iterates through table rows and applies a function fn: NA (function) tables: <- (input data) |> map(fn: (r) => ({time: r._time, source: r.tag, alert: if r._value > 10 then true else false})) stateDuration() Calculates cumulative duration of a given state fn: NA (function) column: stateDuration (*) timeColumn: _time (*) unit: 1s (ns,us,ms,s,m,h,d) tables: <- (input data) |> stateDuration(fn: (r) => r._value < 15) Custom Functions Fully customize flux functionName: NA functionParameters: NA functionOperators: NA // Function definition multByX = (tables=<-, x) => tables |> map(fn: (r) => ({r with _value: r._value * x})) // Function usage from(bucket: "example-bucket") |> range(start: -1m) |> filter(fn: (r) => r._measurement == "mem" and r._field == "used_percent") |> multByX(x: 2.0)
  • 22. | © Copyright 2022, InfluxData 22 Why Use Flux? • Works natively with InfluxDB storage and computing • Runs against InfluxDB buckets, 1.x databases, .csv files and SQL compliant stores • Unified language for querying, processing, and task execution • Allows developers to run time series data processing code inside the time series database Deeply Integrated Highly Functional • Join and Union support • Over 500 included functions • Inputs • Outputs • Transformations • Dynamic Queries • Geotemporal support • Task and Notification support • Type Conversions • Timestamp handling
  • 23. | © Copyright 2022, InfluxData 23 | © Copyright 2022, InfluxData 23 New InfluxDB Features for IoT
  • 24. | © Copyright 2022, InfluxData 24 InfluxData Edge Data Replication (EDR) API CLI /api/v2/remotes influx remote [create,delete,list,update] /api/v2/replications influx replication [create,delete,list,update] Cloud (InfluxDB Cloud) Database(s) Enables: • Raw data replication • Hybrid downsampling • Eventual consistency Build: • Database distribution • Hybrid apps • ML pipelines Bucket Queue Bucket Queue Flux Edge (InfluxDB) Databases Disk
  • 25. | © Copyright 2022, InfluxData 25 InfluxData Native Collectors Apps & Devices IOT OT IT Mobile Logs Metrics & Events Traces Transactions Sensors Assets Products Comms Publish InfluxDB 1. Configure Subscriptions & Connections 2. Define Parsing Rules (LP, JSON, RegEx) 3. Configure Routing (Buckets) Low-code UI Wizard Subscribe Brokers and Streaming APIs Topics and Queues iotdevices/amer/r23rr23042/temperature iotdevices/asia/tower1/floor 81/humidity mobile/apps/myapp/errors servermon/server1/cpu factory1/line1/machineA/output
  • 26. | © Copyright 2022, InfluxData 26 | © Copyright 2022, InfluxData 26 Demo - Cloud Native MQTT
  • 27. | © Copyright 2022, InfluxData 27
  • 28. | © Copyright 2022, InfluxData 28
  • 29. | © Copyright 2022, InfluxData 29
  • 30. | © Copyright 2022, InfluxData 30
  • 31. | © Copyright 2022, InfluxData 31
  • 32. | © Copyright 2022, InfluxData 32
  • 33. | © Copyright 2022, InfluxData 33
  • 34. | © Copyright 2022, InfluxData 34
  • 35. InfluxDB University Free live and self-paced training on: • InfluxDB • Telegraf • Flux • Kapacitor • and more Scan to explore the course catalog influxdbu.com
  • 36. Enroll for free at influxdbu.com Join InfluxDB University
  • 37. Deeply technical, single-track InfluxDB event Join the two-day developer conference dedicated to building IoT, analytics, and cloud applications with InfluxDB. November 2-3, 2022 Register today for free: influxdays.com
  • 38. Taming the Telegraf Tiger Training November 1, 2022 Virtual - Pacific Time Free - Limit: 300 Register today for free: influxdays.com Advanced Flux Training November 8-9, 2022 In-Person - London, UK £500 - Limit: 50
  • 39. Taming the Telegraf Tiger Training November 1, 2022 Virtual - Pacific Time InfluxDays 2022 Conference November 2-3, 2022 Virtual & In-Person Register today for free: influxdays.com Advanced Flux Training November 8-9, 2022 In-Person - London, UK
  • 40. | © Copyright 2022, InfluxData 40 T H A N K Y O U