03-connector.mdx 5.6 KB
Newer Older
D
dingbo 已提交
1 2 3
---
title: 连接器
---
B
Bo Ding 已提交
4 5 6 7 8

TDengine 提供了丰富的应用程序开发接口,其中包括 C/C++、Java、Python、Go、Node.js、C# 、RESTful 等,便于用户快速开发应用。

![image-connecotr](/img/connector.png)

B
Bo Ding 已提交
9 10
## 支持的系统

B
Bo Ding 已提交
11 12
目前 TDengine 的连接器可支持的平台广泛,包括:X64/X86/ARM64/ARM32/MIPS/Alpha 等硬件平台,以及 Linux/Win64/Win32 等开发环境。对照矩阵如下:

B
Bo Ding 已提交
13 14 15 16 17 18 19 20 21 22 23
| **CPU**        | **OS**    | **JDBC** | **Python** | **Go** | **Node.js** | **C#** | **Rust** | **RESTful** |
| -------------- | --------- | -------- | ---------- | ------ | ----------- | ------ | -------- | ----------- |
| **X86 64bit**  | **Linux** | ●        | ●          | ●      | ●           | ●      | ●        | ●           |
| **X86 64bit**  | **Win64** | ●        | ●          | ●      | ●           | ●      | ●        | ●           |
| **X86 64bit**  | **Win32** | ●        | ●          | ●      | ●           | ○      | ○        | ●           |
| **X86 32bit**  | **Win32** | ○        | ○          | ○      | ○           | ○      | ○        | ●           |
| **ARM64**      | **Linux** | ●        | ●          | ●      | ●           | ○      | ○        | ●           |
| **ARM32**      | **Linux** | ●        | ●          | ●      | ●           | ○      | ○        | ●           |
| **MIPS 龙芯**  | **Linux** | ○        | ○          | ○      | ○           | ○      | ○        | ○           |
| **Alpha 申威** | **Linux** | ○        | ○          | --     | --          | --     | --       | ○           |
| **X86 海光**   | **Linux** | ○        | ○          | ○      | --          | --     | --       | ○           |
B
Bo Ding 已提交
24 25 26

其中 ● 表示官方测试验证通过,○ 表示非官方测试验证通过,-- 表示未经验证。

B
Bo Ding 已提交
27 28
## 特性矩阵

29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
连接器对 TDengine 特性的支持对照矩阵如下[1]:

| **Feature**        | **Java**  | **Python** | **Go**   | **C#**   | **Node.js** | **Rust** |
| ------------------ | --------- | ---------- | -------- | -------- | ----------- | -------- |
| **连接管理**       | 支持      | 支持       | 支持     | 支持     | 支持        | 支持     |
| **同步查询**       | 支持      | 支持       | 支持     | 支持     | 支持        | 支持     |
| **异步查询**       | 不支持[2] | 支持       | 支持     | 支持     | 支持        | 暂不支持 |
| **参数绑定**       | 支持      | 支持       | 支持     | 支持     | 支持        | 支持     |
| **获取系统信息**   | 暂不支持  | 支持       | 暂不支持 | 暂不支持 | 支持        | 暂不支持 |
| **错误信息**       | 支持      | 支持       | 支持     | 支持     | 支持        | 支持     |
| **订阅功能**       | 支持      | 支持       | 支持     | 支持     | 支持        | 暂不支持 |
| **Schemaless**     | 支持      | 支持       | 支持     | 支持     | 支持        | 支持     |
| **RESTful 连接**   | 支持      | 支持       | 支持     | 暂不支持 | 支持        | 支持     |
| **批量拉取(WS)** | 支持      | 暂不支持   | 暂不支持 | 暂不支持 | 暂不支持    | 暂不支持 |

备注:

[1]: 由于不同语言数据库框架规范不同,并不意味着所有 C/C++ 接口都需要对应支持。

[2]: JDBC 标准为同步查询。

B
Bo Ding 已提交
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
:::warning

- 在没有安装 TDengine 服务端软件的系统中使用连接器(除 RESTful 外)访问 TDengine 数据库,需要安装相应版本的客户端安装包来使应用驱动(Linux 系统中文件名为 libtaos.so,Windows 系统中为 taos.dll)被安装在系统中,否则会产生无法找到相应库文件的错误。
- 所有执行 SQL 语句的 API,例如 C/C++ Connector 中的 `tao_query`、`taos_query_a`、`taos_subscribe` 等,以及其它语言中与它们对应的 API,每次都只能执行一条 SQL 语句,如果实际参数中包含了多条语句,它们的行为是未定义的。
- 升级 TDengine 到 2.0.8.0 版本的用户,必须更新 JDBC。连接 TDengine 必须升级 taos-jdbcdriver 到 2.0.12 及以上。详细的版本依赖关系请参见 [taos-jdbcdriver 文档](https://www.taosdata.com/cn/documentation/connector/java#version)。
- 无论选用何种编程语言的连接器,2.0 及以上版本的 TDengine 推荐数据库应用的每个线程都建立一个独立的连接,或基于线程建立连接池,以避免连接内的“USE statement”状态量在线程之间相互干扰(但连接的查询和写入操作都是线程安全的)。

:::

import Tabs from "@theme/Tabs";
import TabItem from "@theme/TabItem";
import InstallOnWindows from "./_linux_install.mdx";
import InstallOnLinux from "./_windows_install.mdx";
import VarifyWindows from "./_varify_linux.mdx";
import VarifyLinux from "./_varify_windows.mdx";

## 安装客户端驱动

:::info
只有在没有安装 TDengine 服务端软件的系统上使用非 RESTFful 连接器才需要安装客户端驱动。

:::

### 安装步骤

<Tabs defaultValue="linux" groupId="os">
  <TabItem value="linux" label="Linux">
    <InstallOnWindows />
  </TabItem>
  <TabItem value="windows" label="Windows">
    <InstallOnLinux />
  </TabItem>
</Tabs>

### 安装验证

以上安装和配置完成后,并确认 TDengine 服务已经正常启动运行,此时可以执行 taos 客户端进行登录。

<Tabs defaultValue="linux" groupId="os">
  <TabItem value="linux" label="Linux">
    <VarifyLinux />
  </TabItem>
  <TabItem value="windows" label="Windows">
    <VarifyWindows />
  </TabItem>
</Tabs>