Skip to content

Commit

Permalink
update license of dependencies; fix readme
Browse files Browse the repository at this point in the history
1. update license of dependencies;
2. fix readme to fit lint
  • Loading branch information
citrusreticulata committed Jul 28, 2022
1 parent d63c1f3 commit 0175dd9
Show file tree
Hide file tree
Showing 3 changed files with 68 additions and 36 deletions.
1 change: 1 addition & 0 deletions docs/LICENSE_OF_DEPENDENCIES.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ following works:
- github.com/antchfx/xpath [MIT License](https://github.com/antchfx/xpath/blob/master/LICENSE)
- github.com/apache/arrow/go/arrow [Apache License 2.0](https://github.com/apache/arrow/blob/master/LICENSE.txt)
- github.com/apache/thrift [Apache License 2.0](https://github.com/apache/thrift/blob/master/LICENSE)
- github.com/apache/iotdb-client-go [Apache License 2.0](https://github.com/apache/iotdb-client-go/blob/main/LICENSE)
- github.com/aristanetworks/glog [Apache License 2.0](https://github.com/aristanetworks/glog/blob/master/LICENSE)
- github.com/aristanetworks/goarista [Apache License 2.0](https://github.com/aristanetworks/goarista/blob/master/COPYING)
- github.com/armon/go-metrics [MIT License](https://github.com/armon/go-metrics/blob/master/LICENSE)
Expand Down
85 changes: 58 additions & 27 deletions plugins/outputs/iotdb/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,12 @@
# Apache IoTDB
# IoTDB Output Plugin

[English](./README.md) | [中文](./README_ZH.md)

The IoTDB output plugin saves Telegraf metric data to an IoTDB backend.
This plugin uses Apache IoTDB client for Golang to support session connection
and data insertion.

## Apache IoTDB

[![Main Mac and Linux](https://github.com/apache/iotdb/actions/workflows/main-unix.yml/badge.svg)](https://github.com/apache/iotdb/actions/workflows/main-unix.yml)
[![Main Win](https://github.com/apache/iotdb/actions/workflows/main-win.yml/badge.svg)](https://github.com/apache/iotdb/actions/workflows/main-win.yml)
Expand All @@ -14,12 +22,18 @@
[![Maven Version](https://maven-badges.herokuapp.com/maven-central/org.apache.iotdb/iotdb-parent/badge.svg)](http://search.maven.org/#search|gav|1|g:"org.apache.iotdb")
[![Slack Status](https://img.shields.io/badge/slack-join_chat-white.svg?logo=slack&style=social)](https://join.slack.com/t/apacheiotdb/shared_invite/zt-qvso1nj8-7715TpySZtZqmyG5qXQwpg)

Apache IoTDB (Database for Internet of Things) is an IoT native database with high performance for data management and analysis, deployable on the edge and the cloud. Due to its light-weight architecture, high performance and rich feature set together with its deep integration with Apache Hadoop, Spark and Flink, Apache IoTDB can meet the requirements of massive data storage, high-speed data ingestion and complex data analysis in the IoT industrial fields.
Apache IoTDB (Database for Internet of Things) is an IoT native database with
high performance for data management and analysis, deployable on the edge and
the cloud. Due to its light-weight architecture, high performance and rich
feature set together with its deep integration with Apache Hadoop, Spark and
Flink, Apache IoTDB can meet the requirements of massive data storage,
high-speed data ingestion and complex data analysis in the IoT industrial
fields.

Apache IoTDB website: <https://iotdb.apache.org>
Apache IoTDB Github: <https://github.com/apache/iotdb>

# Apache IoTDB Client for Golang
## Apache IoTDB Client for Golang

[![E2E Tests](https://github.com/apache/iotdb-client-go/actions/workflows/e2e.yml/badge.svg)](https://github.com/apache/iotdb-client-go/actions/workflows/e2e.yml)
[![GitHub release](https://img.shields.io/github/release/apache/iotdb-client-go.svg)](https://github.com/apache/iotdb-client-go/releases)
Expand All @@ -28,36 +42,50 @@ Apache IoTDB Github: <https://github.com/apache/iotdb>
![platform](https://img.shields.io/badge/platform-win10%20%7C%20macos%20%7C%20linux-yellow.svg)
[![IoTDB Website](https://img.shields.io/website-up-down-green-red/https/shields.io.svg?label=iotdb-website)](https://iotdb.apache.org/)

There is an Apache IoTDB Client for Golang, using native Golang API to inserting, deleting, modifying records.
There is an Apache IoTDB Client for Golang, using native Golang API to
inserting, deleting, modifying records.

Apache IoTDB Golang Client Github: <https://github.com/apache/iotdb>

# IoTDB Output Plugin

[English](./README.md) | [中文](./README_ZH.md)

The IoTDB output plugin saves Telegraf metric data to an IoTDB backend. This plugin uses Apache IoTDB client for Golang to support session connection and data insertion.

## Getting started

Before using this plugin, please configure the IP address, port number, user name, password and other information of the database server, as well as some data type conversion, time unit and other configurations.
Before using this plugin, please configure the IP address, port number,
user name, password and other information of the database server,
as well as some data type conversion, time unit and other configurations.

There is a sample configuration: [English Configuration](./sample.conf). And there is one in Chinese: [中文配置样例](./sample_zh.conf). The configuration is also provided at the end of this readme.
There is a sample configuration: [English Configuration](./sample.conf).
And there is one in Chinese: [中文配置样例](./sample_zh.conf).
The configuration is also provided at the end of this readme.

## Please pay attention to these points

1. IoTDB (version 0.13.x or older) **DO NOT support unsigned integer**. There are three available options of converting uint64, which are specified by parameter `convertUint64To`.

- `ToInt64`, default option. If an unsigned integer is greater than `math.MaxInt64`, save it as `int64`; else save `math.MaxInt64`(9223372036854775807).
- `ForceToInt64`, force converting an unsigned integer to a`int64`, no mater the value it is. This option may lead to exception if the value is greater than `int64`.
- `Text`force converting an unsigned integer to a string, no mater the value it is.

2. IoTDB supports a variety of time precision, but no matter what precision, timestamp is stored in `Int64`, so users need to specify the unit of timestamp. Default unit is `nanosecond`.

3. Till now, IoTDB can not support Tag indexing well. To see current process method, please refer to [InfluxDB-Protocol Adapter](https://iotdb.apache.org/UserGuide/Master/API/InfluxDB-Protocol.html). There are two available options of converting tags, which are specified by parameter `treateTagsAs`:

- `Measurements`. Treat Tags as measurements. For each Key:Value in Tag, convert them into Measurement, Value, DataType, which are supported in IoTDB.
- `DeviceID_subtree`, default option. Treat Tags as part of device id. Tags is subtree of 'Name'.
1. IoTDB (version 0.13.x or older) **DO NOT support unsigned integer**.
There are three available options of converting uint64, which are specified by
parameter `convertUint64To`.

- `ToInt64`, default option. If an unsigned integer is greater than
`math.MaxInt64`, save it as `int64`; else save `math.MaxInt64`
(9223372036854775807).
- `ForceToInt64`, force converting an unsigned integer to a`int64`,no mater
what the value it is. This option may lead to exception if the value is
greater than `int64`.
- `Text`force converting an unsigned integer to a string, no mater what the
value it is.

2. IoTDB supports a variety of time precision, but no matter what precision,
timestamp is stored in `Int64`, so users need to specify the unit of timestamp.
Default unit is `nanosecond`.

3. Till now, IoTDB can not support Tag indexing well. To see current process
method, please refer to [InfluxDB-Protocol Adapter](
https://iotdb.apache.org/UserGuide/Master/API/InfluxDB-Protocol.html).
There are two available options of converting tags, which are specified by
parameter `treateTagsAs`:

- `Measurements`. Treat Tags as measurements. For each Key:Value in Tag,
convert them into Measurement, Value, DataType, which are supported in IoTDB.
- `DeviceID_subtree`, default option. Treat Tags as part of device id. Tags
is subtree of 'Name'.

For example, there is a metric:

Expand All @@ -68,13 +96,16 @@ There is a sample configuration: [English Configuration](./sample.conf). And the

## Testing

**Please prepare running database before testing**. Target address is `localhost:6667` by default, which can be edit in `iotdb_test.go`. `test_host` is the target ip address of database server.
**Please prepare running database before testing**.
Target address is`localhost:6667` by default, which can be edit in
`iotdb_test.go`. `test_host` is the target ip address of database server.

Testing contains: network connection, error correction, datatype conversion, data writing.
Testing contains: network connection, error correction, datatype conversion,
data writing.

## Configuration

```properties
```toml @sample.conf
# Save metrics to an IoTDB Database
[[outputs.iotdb]]
## Configuration of IoTDB server
Expand Down
18 changes: 9 additions & 9 deletions plugins/outputs/iotdb/README_ZH.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,10 @@
# Apache IoTDB
# IoTDB 输出插件

[English](./README.md) | [中文](./README_ZH.md)

IoTDB 输出插件可以把 Telegraf 采集到的数据保存到IoTDB数据库。该插件使用了go语言客户端的接口,能够支持会话连接、数据插入。

## Apache IoTDB

[![Main Mac and Linux](https://github.com/apache/iotdb/actions/workflows/main-unix.yml/badge.svg)](https://github.com/apache/iotdb/actions/workflows/main-unix.yml)
[![Main Win](https://github.com/apache/iotdb/actions/workflows/main-win.yml/badge.svg)](https://github.com/apache/iotdb/actions/workflows/main-win.yml)
Expand All @@ -21,7 +27,7 @@ Apache IoTDB可以满足物联网工业领域的海量数据存储、高速数
Apache IoTDB website: <https://iotdb.apache.org>
Apache IoTDB Github: <https://github.com/apache/iotdb>

# Apache IoTDB Go语言客户端
## Apache IoTDB Go语言客户端

[![E2E Tests](https://github.com/apache/iotdb-client-go/actions/workflows/e2e.yml/badge.svg)](https://github.com/apache/iotdb-client-go/actions/workflows/e2e.yml)
[![GitHub release](https://img.shields.io/github/release/apache/iotdb-client-go.svg)](https://github.com/apache/iotdb-client-go/releases)
Expand All @@ -34,12 +40,6 @@ Apache IoTDB 有一个go语言客户端,能够使用go语言原生接口支持

Apache IoTDB Golang Client Github: <https://github.com/apache/iotdb>

# IoTDB 输出插件

[English](./README.md) | [中文](./README_ZH.md)

IoTDB 输出插件可以把 Telegraf 采集到的数据保存到IoTDB数据库。该插件使用了go语言客户端的接口,能够支持会话连接、数据插入。

## 快速上手

使用该插件前,需要配置数据库服务器的ip地址、所使用的端口号、用户名、密码等信息,以及一些数据类型转换、时间单位等配置。
Expand Down Expand Up @@ -73,7 +73,7 @@ IoTDB 输出插件可以把 Telegraf 采集到的数据保存到IoTDB数据库

## 配置文件

```properties
```toml @sample_zh.conf
# 将采集到的数据保存到IoTDB
[[outputs.iotdb]]
## IoTDB 服务器配置
Expand Down

0 comments on commit 0175dd9

Please sign in to comment.