InfluxDB 3.0 Python Client

Community Python client for writing to and querying InfluxDB 3.0 time series data.

SDK
PyPI
v0.20.0
102stars
Apache License 2.0

Repository Health

Pre-computed score based on development activity, maintenance, community, maturity, and trend momentum.How we score it →
77/100Good
Development Activity80
Maintenance84
Community72
Maturity52
Momentum20

Technical Analysis

AI-assessed by reading the actual repository — architecture, code quality, innovation, and documentation.How we score it →
77/100Good
Architecture78
Code Quality80
Innovation72
Learning Curve78

influxdb3-python (the influxdb_client_3 module) is the community-supported Python client for InfluxDB 3.0. It provides a simple, convenient interface for writing points to InfluxDB and for querying data using the Apache Arrow Flight client, which lets you execute both SQL and InfluxQL against the time series database.

Built on pyarrow, the client returns query results as Arrow tables that convert directly into pandas or Polars DataFrames, and it supports line-protocol writes as well as batching, making it a practical bridge between InfluxDB 3.0 and the Python data ecosystem.

What You Get

  • A unified client for writing to and querying InfluxDB 3.0
  • SQL and InfluxQL query execution over the Apache Arrow Flight protocol
  • Query results as pyarrow tables convertible to pandas or Polars DataFrames
  • Line-protocol writes with batching support and a small CLI helper

Common Use Cases

  • Ingesting time series metrics into InfluxDB 3.0 from Python services
  • Querying InfluxDB with SQL and loading results into pandas for analysis
  • Streaming large query results efficiently via Arrow Flight

Under The Hood

Architecture - The influxdb_client_3 package wraps a write path (write_client, adapted from the v2 client for line-protocol ingestion) and a query path built on an Arrow Flight client that issues SQL/InfluxQL and returns Arrow record batches; a top-level client ties them together, with cli.py exposing a command helper and read_file.py supporting file-based ingestion. Tech Stack - Pure Python on top of pyarrow for the Flight transport and Arrow tables, with optional pandas/Polars for DataFrame conversion; packaged via pyproject/setuptools and tested under pytest. Code Quality - The repo maintains unit and integration tests (tests/), CodeQL analysis, CircleCI, and codecov reporting, ships py.typed, and is actively maintained by the InfluxData community. API Design - The surface is intentionally minimal — construct a client with host/token/database, then write and query — which keeps the getting-started path short, while advanced options (batching callbacks, Flight query modes, DataFrame output) are available for heavier workloads.

Join founders buildingwith open source

Opinionated takes, migration guides, cost-saving tips, and insights from the open source ecosystem.

Subscribe on Substack
Join 750+ subscribers

Search