本文正在参与 “拥抱开源 | 涛思数据 TDengine有奖征稿
https://marketing.csdn.net/p/0ada836ca30caa924b9baae0fd33857c
系列背景
TDengine作为国产时序数据库的典范,开源了单机版和集群版,实在是国产软件开源的典范,因毕设需要,对其进行深入研究,此系列记录所学。
顺便为这款优秀的开源产品做推广~
TDengine研发背景就是基于物联网行业的数据特点:
1: 数据是时序的,一定带有时间戳;2:数据是结构化的;3:数据极少有更新或删除操作;4:无需传统数据库的事务处理;5:相对互联网应用,写多读少;6:用户关注的是一段时间的趋势,而不是某一特点时间点的值;7:数据是有保留期限的;8:数据的查询分析一定是基于时间段和地理区域的;9:除存储查询外,还往往需要各种统计和实时计算操作;10:数据量巨大,一天采集的数据 就可以超过100亿条
TDengine的适用场景:
采用 TDengine,可将典型的物联网、车联网、工业互联网大数据平台的整体成本降至现有的 1/5。同样的硬件资源,TDengine能将系统处理能力和容量增加五倍以上。但需要指 出的是,因充分利用了时序数据的特点,无法用来处理网络爬虫、微博、微信、电商、ERP、 CRM等通用型数据。
API接口准备
配置于宿主机,用于读取TDengine的数据
python3.7
pip install taos安装库
如果下载 taos-1.4.11-py2-none-any.whl离线安装,会报错不匹配平台,是因为这是py2的库。
虚拟机准备
用于安装TDengine
win10+VMware14 宿主机内存16GB,建议内存至少8GB
OS:纯Terminal,不带图形化
建议:做后台服务的服务器不要带GUI,浪费硬盘和运行内存
安装TDengine服务
官网安装包:
deb是Debian系统的,选ser6ver端的,所以是最后一个压缩包。
xFTP传输至虚拟机中
压缩包是编译好的二进制文件,所以跨平台架构的不能直接执行(这点从压缩包名x64即可看出)
安装:
解压软件包之后,会在解压目录下看到以下文件(目录): install.sh:主安装脚本,用于安装服务端及客户端程序(两者都会同时安装)
install_client.sh:仅安装客户端程序的脚本(在客户端节点上只执行这个脚本即可)
taos.tar.gz:主安装包
code:示例代码及部分脚本
driver:TDengine 客户端 driver
release_note: 版本更新内容总结
服务节点只能运行 install.sh 进行安装,默认客户端也安装了,便于测试。
安装过程中,会提示正在安装的节点是否要加入一个已经存在的 TDengine 集群,因为本机是第一个节点,所以直接回车即可创建一个新集群;反之需要输入该已有集群的任意一节点的 IP 地址,将该节点加入到已有集群中。
启动服务:
systemctl start taosd
查看状态running active
配置python API
官方的usermanual中路径已经失效,应改为pip install TDengine-client-2.0.9.0-Linux-x64\python3,其中python3为setup.py所在目录
执行安装后即可完成离线taos库安装 :
版本2.0.3
在线taos pip安装后为1.0.1老版本,init文件为空,无法使用
客户端检查
taosd服务正常开启,但如果要使用API连接,首先要保证client是可以正常连接交互的,所以在linux执行taos,报错连接失败,在未进行任何配置的情况下,首先考虑就是cfg文件。
cfg中默认hostname:6030,所以修改为localhost或主机名“centos7”,restart taosd后,仍报错。
验证ping 主机名失败,考虑是hosts配置,修改后无需重启taosd服务(因为没有修改cfg文件)即可连接服务端。
登录密码修改
taos命令默认是root登录的,root 用户的缺省密码:taosdata,
登录后修改密码:
ALTER USER user_name PASS ‘password’
使用taos -u root -p 登录,输入密码即可
修改密码后直接taos登录authentic failure
使用taos -p登录
taos目录结构
• 执行文件目录:/usr/local/bin/taos 该目录包含 TDengine 的可执行文件及网页配置文件,分别是:
taosd | taosdump | remove.sh | web |
---|---|---|---|
TDengine 后台服务,开机自动启动 | 数据导出程序 | TDengine 系统的卸载脚本 | 网页配置文件夹 |
• 配置文件目录:/etc/taos/taos.cfg;
• 数据文件目录:/var/lib/taos 该目录包含 TDengine 存储的数据文件,所有的数据都存储在这些文件中。请不要尝试删除或移动该目录下的文件,否则将导致数据丢失的灾难性后果。
• 日志文件目录:/var/log/taos 该目录包含 TDengine 产生的日志信息。日志文件大小、输出内容均可通过配置文件进行控制。日志文件是解决系统运行过程中出现问题的重要依据,系统管理员可以通过阅读分析日志,定位并排除系统故障。
用户可以通过修改配置文件taos.cfg中相应配置项dataDir和logDir,调整数据文件目录、日志文件目录的位置
API连接
ip addr:192.168.43.2/24
ip addr:192.168.1.115/24
连接失败,使用客户端远程连接进行测试:
测试思路:宿主机win10执行taos命令远程连接虚拟机centos7的taos服务。
测试流程:1.root远程登录2.test用户远程登录3.hosts配置均失败
测试结果:根据TDengine_User_Manual_cn.pdf最后的issue Q&A放置taos.dll到系统路径后仍无法建立远程连接,API调用同样也失败了(未解决!)
故障重启测试
直接强制关机(宿主机)后
VMware有自动保护功能,重新开虚拟机即可
taosd服务确认开机自动启动
taos问题上报
TDengine_User_Manual_cn.pdf p49 库的格式->库的个数
不知道是否是我配置的问题:
taos2.0.9.0版本无法实现远程客户端连接,只能实现localhost的本地客户端连接,导致API接口无法使用,无法使用程序完成数据的入库、读库等操作。
本文正在参与 “拥抱开源 | 涛思数据 TDengine有奖征稿
https://marketing.csdn.net/p/0ada836ca30caa924b9baae0fd33857c