Go 和 InfluxDB

通过易于集成的强大性能,由 InfluxData 构建的开源数据连接器 Telegraf 提供支持。

50 亿+

Telegraf 下载量

#1

时间序列数据库
来源:DB Engines

10 亿+

InfluxDB 下载量

2,800+

贡献者

目录

强大的性能,无限的扩展能力

收集、组织和处理海量高速数据。当您将任何数据视为时间序列数据时,它会更有价值。借助 InfluxDB,这是 #1 的时间序列平台,旨在与 Telegraf 一起扩展。

查看入门方法

使用 Go 客户端库和 InfluxDB 构建物联网、分析和云应用程序。

为什么使用 InfluxDB Go 客户端库?

InfluxDB 是一个 API 优先的时间序列数据库,适用于您的 Go lang 应用程序。使用 InfluxDB 开源 Go API 客户端来写入和查询数据,甚至从您的应用程序内部管理您的 InfluxDB 实例。

主要功能

  • 提供对所有 InfluxDB 写入和读取功能、设置以及高级功能(如管理您的实例)的 API 访问,
  • 以 InfluxDB 行协议或点数据结构写入数据
  • 异步或同步写入数据
  • 失败时自动重试请求
  • 参数化查询(仅限 InfluxDB Cloud)
  • 检查服务器状态
    • 运行状况 - 有关服务器状态的详细信息,以及版本字符串 (OSS)
    • 就绪 - 服务器正常运行时间信息 (OSS)
    • Ping - 服务器是否启动

开始使用

Go 和 InfluxDB 入门

本教程介绍如何使用 InfluxDB Go 客户端库,创建与数据库的连接,以及存储和查询数据库中的数据。

了解更多

InfluxDB Go 客户端入门

想要构建一个应用程序,该应用程序可以快速并发获取数据并轻松进行二进制部署?那么请使用 InfluxDB Go 客户端。

了解更多

读取

写入


package main

import (
	"context"
	"fmt"

	influxdb2 "github.com/influxdata/influxdb-client-go/v2"
)

func main() {
	url := "https://us-west-2-1.aws.cloud2.influxdata.com"
	token := "my-token"
	org := "my-org"
	bucket := "my-bucket"

	client := influxdb2.NewClient(url, token)
	queryAPI := client.QueryAPI(org)
	query := fmt.Sprintf(`from(bucket: "%v") |> range(start: -1d)`, bucket)
	result, err := queryAPI.Query(context.Background(), query)
	if err != nil {
		panic(err)
	}
	for result.Next() {
		record := result.Record()
		fmt.Printf("%v %v: %v=%v\n", record.Time(), record.Measurement(), record.Field(), record.Value())
	}
	client.Close()
}

有关更多信息,请查看文档。

强大的性能,无限的扩展能力

收集、组织和处理海量高速数据。当您将任何数据视为时间序列数据时,它会更有价值。借助 InfluxDB,这是 #1 的时间序列平台,旨在与 Telegraf 一起扩展。

查看入门方法

相关集成