Understand and Visualize your Data with InfluxDB Cloud

Rate this content
Bookmark

Learn how you as a developer can use our InfluxDB Cloud web interface to ingest, explore, analyze, and understand your data. We'll highlight new capabilities and show you some tips and tricks to get the most out of the InfluxDB Cloud Platform.

This talk has been presented at React Summit Remote Edition 2021, check out the latest edition of this React Conference.

FAQ

InfluxDB is an open source, scalable time series platform designed for accumulating, analyzing, and acting on real-time data.

Time series data in InfluxDB is timestamped and can be generated at regular or irregular intervals. It typically involves high volumes and is most valuable when used in real-time, often losing relevance after 30 days.

Giraffe is a charting and mapping software customized for InfluxDB, utilizing the React framework. It is used to power visualizations on InfluxDB's dashboard and data explorer across all versions, including open source, enterprise, and cloud.

Giraffe accepts annotated CSV as its input, which is the typical output format from InfluxQL and Flux queries used to interact with InfluxDB.

Developers can reuse Giraffe visualizations created within InfluxDB in external applications such as websites, phone apps, or other custom applications by embedding the visualizations using JavaScript or React code.

Giraffe supports various types of visualizations including band charts, gauges, graphs, heat maps, histograms, scatter plots, single stats, tables, and more.

Data can be imported into Giraffe using a Flux query via a REST API in any supported programming language or through a JavaScript client specifically designed to simplify data handling.

Currently, Giraffe does not support server-side rendering, but it is a feature that is planned for future updates.

Kristina J. Robinson
Kristina J. Robinson
7 min
14 May, 2021

Comments

Sign in or register to post your comment.
Video Summary and Transcription
Christina Robinson introduces InfluxDB and Giraffe, a JavaScript library for visualizing timestamp data. Giraffe supports various visualizations and can be used in external applications. Data can be imported into Giraffe using Flux queries via the REST API. The plot is the base entity for visualization in Giraffe, requiring CSV data and a layers object to specify the plot type and properties.

1. Introduction to InfluxDB and Giraffe

Short description:

Hi everyone, my name is Christina Robinson. Today, I'm going to talk about visualizing timestamp data from InfluxDB using Giraffe. InfluxDB is an open-source time series platform with client server libraries for data ingestion. Giraffe is a JavaScript library customized for InfluxDB that powers visualizations in the InfluxDB dashboard and data explorer. It supports various types of visualizations and can be used in external applications. To get data into Giraffe, you can use Flux queries via the REST API.

Hi everyone, my name is Christina Robinson. I'm a Software Engineering Manager at Influx Data, and today I'm going to be talking to you about visualizing your timestamp data from InfluxDB using Giraffe. Let's go!

First of all, what is InfluxDB? InfluxDB is a time series platform. It's open source, scalable, analytics engine to accumulate, analyze and act on real-time data. We have client server libraries to ingest data, including JavaScript, Go, Python and other databases, as well as a lot more. We have almost 200 libraries now.

What is the characteristic of time series data? Basically, it's timestamped data. It can be generated in regular intervals, such as metrics, or irregular time periods, such as events. We have really high volumes and the data is most valuable in its real-time version. So, it's time sensitive. After 30 days, the data may not be relevant anymore.

What is Giraffe? Giraffe is a charting mapping software that's customized for InfluxDB. It's a JavaScript library, it uses the React framework, it's also open source and available in a GitHub repository. It takes annotated CSV as input. Why? Because that's the output from InfluxQL and FluxQueries, which is our own customized version of how we query the database. It's streamable and basically it's like your typical CSV data, but it has some headers at the top. It has group, data set, and default. Group contains entries of true false that tells you whether or not the data has been grouped and by what category. Data set describes each type of the data and then there's the result test set which is your traditional CSV values.

Why would you want to use Giraffe? Well, it powers the visualizations of the InfluxDB dashboard and data explorer in all of our versions. That includes our original open source version, our enterprise version, as well as our newest cloud version. Developers can reuse the visualizations that you create within InfluxDB in external applications such as websites, phone apps, or other custom applications. So let's take a look at what Giraffe looks like. We can produce band charts, gauges, graphs, graphs with a single stat overlaid, a heat map, histogram, scatter, just a plain old single stat, as well as table, and we have some more visualizations that are going to be coming up soon.

Let's take a look at the basics of Giraffe. First of all, you have to get your data into Giraffe. This is annotated CSV, as I mentioned earlier. There are two ways of getting that in. The first is by using what's called a Flux query. You basically will use REST API in whatever language you like, because we have over 200 libraries, and you can write your Flux and get the data back.

2. Visualization Basics and Plot Configuration

Short description:

We have a JavaScript client that simplifies the usage of REST APIs. The plot is the base entity for visualization in Giraffe. It is imported into React code and requires a prop containing the CSV data and a layers object to specify the plot type and its properties.

Or, if you don't want to mess with REST APIs, we actually have a JavaScript client that's specifically written, and it takes care of a lot of the shortcuts for you. Then, we talk about the basics of the visualization. First of all, there's the base entity which is called the plot. This is what you'll import into your React code. Next, we have a prop for plot, and that prop contains the CSV data itself that you're going to pass in, as well as a layers object. The layers object, which is basically a property of config, allows you to specify which plot type it is and all of its properties.

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Full-stack & typesafe React (+Native) apps with tRPC.io
React Advanced 2021React Advanced 2021
6 min
Full-stack & typesafe React (+Native) apps with tRPC.io
Top Content
Alex introduces tRPC, a toolkit for making end-to-end type-safe APIs easily, with auto-completion of API endpoints and inferred data from backend to frontend. tRPC works the same way in React Native and can be adopted incrementally. The example showcases backend communication with a database using queries and validators, with types inferred to the frontend and data retrieval done using Prisma ORM.
TypeScript and the Database: Who Owns the Types?
TypeScript Congress 2022TypeScript Congress 2022
27 min
TypeScript and the Database: Who Owns the Types?
Top Content
The Talk discusses the use of TypeScript and SQL together in software development. It explores different approaches, such as using an ORM like TypeORM or a schema generator like pg2ts. Query builders like connects JS and tools like PGTyped are also discussed. The benefits and trade-offs of using TypeScript and SQL are highlighted, emphasizing the importance of finding a middle ground approach.
I Would Never Use an ORM
JSNation 2023JSNation 2023
29 min
I Would Never Use an ORM
Top Content
Welcome to a talk on Object-Relational Mapping (ORM) and its potential pitfalls. The speaker discusses issues with modals and the MVC pattern, as well as the benefits of structuring code around system features instead. They introduce PlatformaticDB as a solution for easy backend development, showcasing its deployment and testing capabilities. The talk also covers integrating with Next.js, writing custom SQL queries, and the speaker's plans for future support and database compatibility.
APIs are Evolving. Again.
JSNation 2023JSNation 2023
28 min
APIs are Evolving. Again.
Matteo Collina
Luca Maraschi
2 authors
Technology is a spiral, with foundational ideas resurfacing. Java revolutionized enterprise applications. REST and JSON simplified building APIs and websites. Node.js enabled fast and custom development, leading to the microservices revolution. Platformatic aims to fill the gap in building, managing, and scaling microservices painlessly.
Database Access on the Edge with Cloudflare Workers & Prisma
Node Congress 2022Node Congress 2022
31 min
Database Access on the Edge with Cloudflare Workers & Prisma
This Talk discusses database access on the edge with CloudFlare workers and the challenges of serverless platforms. It explores solutions for database access, including CloudFlare-specific solutions and using Prisma data proxy. The Prisma toolkit and demo are showcased, demonstrating how to convert an application to use a database. The process of setting up Prisma Data Platform and deploying the application to CloudFlare workers is explained. The Talk concludes with insights on database usage and the differences between serverless, CDN, and the Edge.
Handling Data at Scale for React Developers
React Summit 2022React Summit 2022
23 min
Handling Data at Scale for React Developers
This Talk discusses handling data at scale for React developers, including scaling databases and the need for search. It explores different ways to fetch data in React, such as using useEffect, fetch, and setState. The Talk also introduces Suspense for data fetching and how it improves user experience. It covers controlling React Suspense, handling search, and using render-as-you-fetch. The Talk concludes with a discussion on the RFC status and fetching in event handlers.

Workshops on related topic

How to Solve Real-World Problems with Remix
Remix Conf Europe 2022Remix Conf Europe 2022
195 min
How to Solve Real-World Problems with Remix
Featured Workshop
Michael Carter
Michael Carter
- Errors? How to render and log your server and client errorsa - When to return errors vs throwb - Setup logging service like Sentry, LogRocket, and Bugsnag- Forms? How to validate and handle multi-page formsa - Use zod to validate form data in your actionb - Step through multi-page forms without losing data- Stuck? How to patch bugs or missing features in Remix so you can move ona - Use patch-package to quickly fix your Remix installb - Show tool for managing multiple patches and cherry-pick open PRs- Users? How to handle multi-tenant apps with Prismaa - Determine tenant by host or by userb - Multiple database or single database/multiple schemasc - Ensures tenant data always separate from others
Relational Database Modeling for GraphQL
GraphQL Galaxy 2020GraphQL Galaxy 2020
106 min
Relational Database Modeling for GraphQL
Top Content
WorkshopFree
Adron Hall
Adron Hall
In this workshop we'll dig deeper into data modeling. We'll start with a discussion about various database types and how they map to GraphQL. Once that groundwork is laid out, the focus will shift to specific types of databases and how to build data models that work best for GraphQL within various scenarios.
Table of contentsPart 1 - Hour 1      a. Relational Database Data Modeling      b. Comparing Relational and NoSQL Databases      c. GraphQL with the Database in mindPart 2 - Hour 2      a. Designing Relational Data Models      b. Relationship, Building MultijoinsTables      c. GraphQL & Relational Data Modeling Query Complexities
Prerequisites      a. Data modeling tool. The trainer will be using dbdiagram      b. Postgres, albeit no need to install this locally, as I'll be using a Postgres Dicker image, from Docker Hub for all examples      c. Hasura
Building a Hyper Fast Web Server with Deno
JSNation Live 2021JSNation Live 2021
156 min
Building a Hyper Fast Web Server with Deno
WorkshopFree
Matt Landers
Will Johnston
2 authors
Deno 1.9 introduced a new web server API that takes advantage of Hyper, a fast and correct HTTP implementation for Rust. Using this API instead of the std/http implementation increases performance and provides support for HTTP2. In this workshop, learn how to create a web server utilizing Hyper under the hood and boost the performance for your web apps.
Scaling up Your Database With ReadySet
Node Congress 2023Node Congress 2023
33 min
Scaling up Your Database With ReadySet
WorkshopFree
Aspen Smith
Nick Marino
2 authors
The database can be one of the hardest parts of a web app to scale. Many projects end up using ad-hoc caching systems that are complex, error-prone, and expensive to build. What if you could drop in a ready-built caching system to enable better throughput and latency with no code changes to your application?
Join developers Aspen Smith and Nick Marino to see how you can change one line of config in your app and use ReadySet to scale up your query performance by orders of magnitude today.
Database Workflows & API Development with Prisma
Node Congress 2022Node Congress 2022
98 min
Database Workflows & API Development with Prisma
WorkshopFree
Nikolas Burk
Nikolas Burk
Prisma is an open-source ORM for Node.js and TypeScript. In this workshop, you’ll learn the fundamental Prisma workflows to model data, perform database migrations and query the database to read and write data. You’ll also learn how Prisma fits into your application stack, building a REST API and a GraphQL API from scratch using SQLite as the database.
Table of contents:
- Setting up Prisma, data modeling & migrations- Exploring Prisma Client to query the database- Building REST API routes with Express- Building a GraphQL API with Apollo Server
Build a Full Stack React Native App with Oracle 23ai
React Summit 2024React Summit 2024
37 min
Build a Full Stack React Native App with Oracle 23ai
WorkshopFree
Doug Drechsel
Doug Drechsel
In this workshop, you will set up a local full-stack environment and create a React Native Mobile app that runs against that stack. 
Agenda:- Install Oracle 23ai Docker container- Build and run Parse Server with the new Oracle Storage Adapter - Build and run a Walking History React Native mobile app against the stack
Walking History is a React Native application that allows you to walk around New York City (or simulate that in a device emulator) and it tells you about the closest attraction or point of interest.