tdengine源码分析(tdengine 开源)
本文目录一览:
- 1、linux下的 数据库 有哪些?
- 2、window 下 涛思客户端的安装配置 Python程序如何连接上涛思客户端
- 3、TDengine Server端不支持windows平台,是否可能通过cygwin打包成可在windows上运行?
linux下的 数据库 有哪些?
你要的全在下面:数据库已经有4代了产品很多。
DBA课程更新内容大纲:
序章 DBA职业体系与数据库产品趋势
What is DBA?
DBA成长体系与职业方向(0-30W-50W-100W-???)
数据库发展历史,产品迭代趋势与职业学习方向
第一部分 OLTP数据库-MySQL(约1天)
MySQL基础入门
MySQL数据库简介
什么是数据库?什么是OLTP?
为什么学习MySQL?MySQL产品迭代
一二线大厂MySQL主流版本功能使用与特性介绍(5.1,5.6,5.7,8.0)**独家**
MySQL部署与管理体系
5.7,8.0版本企业规范部署,启动
MySQL管理体系讲解
MySQL产品架构分析与基础管理
MySQL基础架构解析(一条SQL是如何执行的)
MySQL启动过程
MySQL连接的生命与使命
MySQL表结构实现原理
MySQL开发应用(约1.5天)
MySQL SQL基础应用
声明式式语言与SQL语言
SQL语言应用场景与sqlmode
MySQL开发工具选择与使用
MySQL字符串类型与字符集
MySQL语句类型介绍(DDL,DCL,DML,DQL)
SQL之查询基础
SQL之聚合与排序
SQL之数据更新
SQL之复杂查询
SQL之集合运算
MySQL SQL高级处理与开发
函数开发与应用
存储过程,触发器,事件
表分区管理及企业级应用场景
Online DDL解析与开源生态OPS
窗口函数讲解及应用场景
MySQL JSON开发及应用
一二线大厂MySQL企业级开发规范详解**独家**
MySQL核心技术
MySQL InnoDB索引实现原理及执行计划分析(约0.5天)
索引介绍
1. 索引的由来
2. 表和索引结构
3. 表聚簇与索引行
4. 表行与索引组织表
MySQL索引介绍
InnoDB索引B+ tree的索引设计
聚簇索引与二级索引
InnDB索引插入过程
数据类型对索引应用的使用影响
执行计划介绍及结果剖析
索引优化基础实战演练
企业级索引优化实战案例(亿万级QPS的索引优化与索引上线)**独家**
MySQL InnoDB存储引擎技术内幕与深入讲解(约1天)
Mysql存储引擎介绍与功能特性
InnoDB引擎源代码目录结构与存储引擎文件组织
InnoDB存储引擎核心架构介绍及解析
InnoDB数据存储结构
InnoDB事务详解及ACID特性解析
InnoDB 日志管理机制Undo与Redo
InnoDB事务与隔离级别
InnoDB MVCC及锁机制
MySQL日志管理与实战(0.5)
General log详解
Error log详解
企业级Binary log with Data pipeline **独家**
企业级Slowlog场景应用**独家**
MySQL备份恢复与迁移(0.5)
备份工具介绍与使用场景解析
一二线大厂过万数据节点备份策略**独家**
一二线大厂Mysqldump核心原理与企业级实战演练**独家**
一二线大厂Xtrabackup核心原理与企业级实战演练**独家**
Enterprise Backup企业级生态工具介绍与应用
MySQL主从复制深入(约1天)
主从复制简介与简单搭建
主从复制工作原理解析
主从数据一致性方案讲解(半同步,全同步)
MySQL主从复制实战
1. 延时复制
2. 过滤复制
3. 多源复制
MySQL GTID复制
企业级主从复制故障分析与处理方案
亿级QPS MySQL节点故障转移实战案例**独家**
MySQL高可用架构(1天)
一二线大厂过万集群规模高可用架构MHA+BLB企业级实战**独家**
Mycat,DBLE企业级实战
MySQL企业级优化与实战(约1天)
打造高性能MySQL
企业级MySQL参数优化实战**独家**
企业级T0级别故障案例解析**独家**
阿里云数据库产品(RDS与PolarDB)(选修二选一) (1天)
企业级RDS介绍,使用与故障案例(百度云RDS 运维DBA分享或交流)**独家**
企业级PolarDB业务场景解析(阿里团队PolarDB P7交付架构师分享或交流)**独家**
第二部分 NoSQL
Redis核心技术(2天)
Redis产品介绍与应用场景简析
Redis安装,部署,使用
Redis数据类型详解与应用
Redis集群架构讲解与实战(哨兵,cluster)
千亿级Redis集群参数优化实战**独家**
千亿级企业级Redis核心案例讲解与业务场景解析**独家**
MongoDB核心技术(2天)
MongoDB产品介绍与应用场景简析
MongoDB安装,部署及架构解析
MongoDB数据类型与运维管理
MongoDB集群架构讲解与实战
企业级MongoDB参数优化实战**独家**
BAT千万元级别故障案例分享**独家**
ES核心技术(2天)
ES产品介绍与应用场景简析
ES安装,部署及架构解析
ES日常运维管理
第三部分 NewSQL(4天)
NewSQL-TiDB(仅学此一个+MySQL至少20K起步) TUG核心成员-PingCAP官方认证讲师 **独家**
TiDB产品介绍与分布式数据库技术应用讲解
TiDB集群部署与日常管理
TiDB集群监控详解与指标应用
TiDB核心架构深入讲解与Raft协议深入浅出**独家*
企业级TiDB-DM理解与应用**独家*
1. 58同城亿级流量Mysql热迁移TiDB**独家**
2. DM集群多源同步复制场景最佳实践(官方认证,业界唯二)**独家**
TiDB企业级业务开发最佳实践**独家**
TiFllash核心架构讲解与实战**独家**
TiDB打造HTAP实时数仓平台架构设计**独家**
Cloud TiDB(K8S上云实战)**独家**
TiDB4.0热升级5.0集群(简介:我司与Pingcap官方{开发30人,交付专家7人,项目经理4人}封闭测试与在线升级全案例解析6.23日项目完结,官方认证业界目前第一的业务场景与投入)
NewSQL-TDengine(1天 选修)
TDengine产品介绍
TDengine单机版与集群部署与管理
TDengine架构体系详解
TDengine企业级参数优化与实战
TDengine业务开发规范与业务场景实战
第四部分 企业级大规模数据库集群运维开发实战(35W+年薪提升)**独家**
数据运维产品架构设计思路(0.5天)
什么是数据运维平台
企业级数据运维平台架构解析
数据运维平台企业级原型设计实战(0.5天)
数据库运维自动化工具开发(Shell,Python)(2天5选2,下期轮换)
MySQL亿万级流量运维平台开发
Redis亿万级流量运维平台开发
ES亿万级流量运维平台开发
MongoDB亿万级流量运维平台开发
TiDB亿万级流量运维平台开发
window 下 涛思客户端的安装配置 Python程序如何连接上涛思客户端
立即开始
快捷安装
TDengine 包括服务端、客户端和周边生态工具软件,目前 2.0 版服务端仅在 Linux 系统上安装和运行,后续将支持 Windows、macOS 等系统。客户端可以在 Windows 或 Linux 上安装和运行。在任何操作系统上的应用都可以使用 RESTful 接口连接服务端程序 taosd,其中 2.4 之后版本默认使用单独运行的独立组件 taosAdapter 提供 http 服务和更多数据写入方式。taosAdapter 需要手动启动。 之前版本 TDengine 服务端,以及所有服务端lite版,均使用内置 http 服务。
TDengine 支持 X64/ARM64/MIPS64/Alpha64 硬件平台,后续将支持 ARM32、RISC-V 等 CPU 架构。
通过 Docker 容器安装
docker run -d -p 6030-6049:6030-6049 -p 6030-6049:6030-6049/udp tdengine/tdengine
详细操作方法请参照 通过 Docker 快速体验 TDengine。
注:暂时不建议生产环境采用 Docker 来部署 TDengine 的客户端或服务端,但在开发环境下或初次尝试时,使用 Docker 方式部署是十分方便的。特别是,利用 Docker,可以方便地在 macOS 和 Windows 环境下尝试 TDengine。
从 2.4.0.10 开始,除 taosd 以外,Docker 镜像还包含:taos、taosAdapter、taosdump、taosBenchmark、TDinsight 安装脚本和示例代码。启动 Docker 容器时,将同时启动 taosAdapter 和 taosd,实现对 RESTful 的支持。
通过安装包安装
TDengine 的安装非常简单,从下载到安装成功仅仅只要几秒钟。
为方便使用,从 2.4.0.10 开始,标准的服务端安装包包含了 taos、taosd、taosAdapter、taosdump、taosBenchmark、TDinsight 安装脚本和示例代码;如果您只需要用到服务端程序和客户端连接的 C/C++ 语言支持,也可以仅下载 lite 版本的安装包。
在安装包格式上,我们提供 tar.gz, rpm 和 deb 格式,为企业客户提供 tar.gz 格式安装包,以方便在特定操作系统上使用。需要注意的是,rpm 和 deb 包不含 taosdump、taosBenchmark 和 TDinsight 安装脚本,这些工具需要通过安装 taosTool 包获得。
发布版本包括稳定版和 Beta 版,Beta 版含有更多新功能。正式上线或测试建议安装稳定版。您可以根据需要选择下载:
TDengine-server-2.4.0.12-Linux-x64.rpm (14.5 M)
TDengine-server-2.4.0.12-Linux-x64.deb (12.8 M)
TDengine-server-2.4.0.12-Linux-x64.tar.gz (15.5 M)
TDengine-server-2.4.0.12-Linux-x64-Lite.tar.gz (3.4 M)
TDengine-server-2.3.5.0-beta-Linux-x64-Lite.tar.gz (3 M)
TDengine-server-2.3.5.0-beta-Linux-x64.rpm (18.4 M)
TDengine-server-2.3.5.0-beta-Linux-x64.deb (16.8 M)
TDengine-server-2.3.5.0-beta-Linux-x64.tar.gz (18.8 M)
具体的安装方法,请参见 TDengine 多种安装包的安装和卸载 以及 视频教程。
请点击这里查看 release notes。
使用 apt-get 安装
如果使用 Debian 或 Ubuntu 系统,也可以使用 apt-get 工具从官方仓库安装,设置方法为:
wget -qO - | sudo apt-key add -echo "deb [arch=amd64] stable main" | sudo tee /etc/apt/sources.list.d/tdengine-stable.list[ 如果安装 Beta 版需要安装包仓库 ] echo "deb [arch=amd64] beta main" | sudo tee /etc/apt/sources.list.d/tdengine-beta.listsudo apt-get updateapt-cache policy tdenginesudo apt-get install tdengine
仅安装客户端
如果客户端和服务端运行在不同的电脑上,可以单独安装客户端。下载时请注意,所选择的客户端版本号应该和在上面下载的服务端版本号严格匹配。Linux 和 Windows 安装包如下(其中 lite 版本的安装包仅带有 C/C++ 语言的连接支持,而标准版本的安装包还包含和示例代码):
TDengine-client-2.4.0.12-Linux-x64.tar.gz (8.2 M)
TDengine-client-2.4.0.12-Windows-x64.exe (9 M)
TDengine-client-2.4.0.12-Windows-x86.exe (9 M)
TDengine-client-2.4.0.12-Linux-x64-Lite.tar.gz (3.1 M)
TDengine-client-2.3.5.0-beta-Linux-x64-Lite.tar.gz (2.7 M)
TDengine-client-2.3.5.0-beta-Linux-x64.tar.gz (7.6 M)
TDengine-client-2.3.5.0-beta-Windows-x64.exe (8.9 M)
TDengine-client-2.3.5.0-beta-Windows-x86.exe (8.8 M)
通过源码安装
如果您希望对 TDengine 贡献代码或对内部实现感兴趣,请参考我们的 TDengine GitHub 主页 下载源码构建和安装.
下载其他组件、最新 Beta 版及之前版本的安装包,请点击这里
轻松启动
安装成功后,用户可使用 systemctl 命令来启动 TDengine 的服务进程。
systemctl start taosd
检查服务是否正常工作:
systemctl status taosd
如果 TDengine 服务正常工作,那么您可以通过 TDengine 的命令行程序 taos 来访问并体验 TDengine。
注意:
systemctl 命令需要 root 权限来运行,如果您非 root 用户,请在命令前添加 sudo 。
为更好的获得产品反馈,改善产品,TDengine 会采集基本的使用信息,但您可以修改系统配置文件 taos.cfg 里的配置参数 telemetryReporting,将其设为 0,就可将其关闭。
TDengine 采用 FQDN(一般就是 hostname)作为节点的 ID,为保证正常运行,需要给运行 taosd 的服务器配置好 hostname,在客户端应用运行的机器配置好 DNS 服务或 hosts 文件,保证 FQDN 能够解析。
systemctl stop taosd 指令在执行后并不会马上停止 TDengine 服务,而是会等待系统中必要的落盘工作正常完成。在数据量很大的情况下,这可能会消耗较长时间。
TDengine 支持在使用 systemd 做进程服务管理的 Linux 系统上安装,用 which systemctl 命令来检测系统中是否存在 systemd 包:
which systemctl
如果系统中不支持 systemd,也可以用手动运行 /usr/local/taos/bin/taosd 方式启动 TDengine 服务。
使用 TDengine 客户端程序
执行 TDengine 客户端程序,您只要在 Linux 终端执行 taos 即可。
taos
如果连接服务成功,将会打印出欢迎消息和版本信息。如果失败,则会打印错误消息出来(请参考 FAQ 来解决终端连接服务端失败的问题)。客户端的提示符号如下:
taos
在 TDengine 客户端中,用户可以通过 SQL 命令来创建/删除数据库、表等,并进行插入查询操作。在终端中运行的 SQL 语句需要以分号结束来运行。示例:
CREATE DATABASE demo;USE demo;CREATE TABLE t (ts TIMESTAMP, speed INT);INSERT INTO t VALUES ('2019-07-15 00:00:00', 10);INSERT INTO t VALUES ('2019-07-15 01:00:00', 20);SELECT * FROM t; ts | speed |======================================== 2019-07-15 00:00:00.000 | 10 | 2019-07-15 01:00:00.000 | 20 |Query OK, 2 row(s) in set (0.003128s)
除执行 SQL 语句外,系统管理员还可以从 TDengine 客户端进行检查系统运行状态、添加删除用户账号等操作。
命令行参数
您可通过配置命令行参数来改变 TDengine 客户端的行为。以下为常用的几个命令行参数:
-c, --config-dir: 指定配置文件目录,默认为 /etc/taos
-h, --host: 指定服务的 FQDN 地址或 IP 地址,默认为连接本地服务
-s, --commands: 在不进入终端的情况下运行 TDengine 命令
-u, --user: 连接 TDengine 服务端的用户名,缺省为 root
-p, --password: 连接 TDengine 服务端的密码,缺省为 taosdata
-?, --help: 打印出所有命令行参数
示例:
taos -h h1.taos.com -s "USE db; SHOW TABLES;"
运行 SQL 命令脚本
TDengine 终端可以通过 SOURCE 命令来运行 SQL 命令脚本。
taos SOURCE filename;
taos shell 小技巧
可以使用上下光标键查看历史输入的指令
修改用户密码:在 shell 中使用 ALTER USER 命令,缺省密码为 taosdata
Ctrl+C 中止正在进行中的查询
执行 RESET QUERY CACHE 可清除本地缓存的表 schema
批量执行 SQL 语句。可以将一系列的 shell 命令(以英文 ; 结尾,每个 SQL 语句为一行)按行存放在文件里,在 shell 里执行命令 SOURCE file-name 自动执行该文件里所有的 SQL 语句
输入 q 回车,退出 taos shell
TDengine 极速体验
使用 taosBenchmark 体验写入速度
启动 TDengine 的服务,在 Linux 终端执行 taosBenchmark (曾命名为 taosdemo)。taosBenchmark 在 TDengine 2.4.0.7 和之前发布版本在 taosTools 安装包中发布提供,在后续版本中 taosBenchmark 将在 TDengine 标准安装包中发布。
taosBenchmark
该命令将在数据库 test 下面自动创建一张超级表 meters,该超级表下有 1 万张表,表名为 "d0" 到 "d9999",每张表有 1 万条记录,每条记录有 (ts, current, voltage, phase) 四个字段,时间戳从 "2017-07-14 10:40:00 000" 到 "2017-07-14 10:40:09 999",每张表带有标签 location 和 groupId,groupId 被设置为 1 到 10, location 被设置为 "beijing" 或者 "shanghai"。
这条命令很快完成 1 亿条记录的插入。具体时间取决于硬件性能,即使在一台普通的 PC 服务器往往也仅需十几秒。
taosBenchmark 详细功能列表
taosBenchmark 命令本身带有很多选项,配置表的数目、记录条数等等,请执行 taosBenchmark --help 详细列出。您可以设置不同参数进行体验。
taosBenchmark 详细使用方法请参照 如何使用 taosBenchmark 进行性能测试。
使用 taos shell 体验查询速度
TDengine Server端不支持windows平台,是否可能通过cygwin打包成可在windows上运行?
可以试试在windows docker环境下运行,拉取tdengine/tdengine镜像,在docker中运行。
如果后续有问题,可以在GitHub上递交Issue:网页链接