作者:最甜甜的小草莓
本文面向什么样的读者TDengine是一个新兴的时序型数据库,可以参见[]。学习一个开源项目,最直接的方式就是先成为一个用户,先把项目运行一下试试看。
简单粗暴tensorflow是我个人很喜欢的一个教程。很多代码,可以暂时先不详细了解原理,先 run 一下或许有的问题就不存在了。本文面向:
没有数据库经验,想要简单体验一下TDengine的读者想要快速在Windows上运行一下TDengine没有参与过开源,想要成为 TDengine 的 contributor (直接最后一章) TDengine软件简介
TDengine软件分为服务器、客户端和报警模块三部分,目前2.0版服务器仅能在Linux系统上安装和运行,后续会支持Windows、Mac OS等系统。客户端可以在Windows或Linux上安装和运行。任何OS的应用也可以选择RESTful接口连接服务器taosd。CPU支持X64/ARM64/MIPS64/Alpha64,后续会支持ARM32、RISC-V等CPU架构。 您可根据需求选择通过源码或者安装包来安装。
阅读项目相关文档,在Windows系统,服务端是不能支持直接安装的,因此我们使用 Docker 来在虚拟机中安装服务端;
之后,我们在直接安装客户端并连接虚拟机中Docker虚拟机
最后,分享一个我个人的经历,如何为 TDengine 在Github上的开源项目贡献代码
服务端安装(Docker) 下载并安装Docker关于 Docker 安装可以参考这篇文章,里面有更为详细的教程。
首先在 Docker 官网下载
点击小鲸鱼图标,在d出菜单里选择“Preferences”,点击Docker Engine,在右侧json配置文件处添加registry-mirrors配置项,添加时注意标点符号是英文以及不要输多或输少了,(输错了底部会有红色报错提示):
"registry-mirrors": [ "https://mirror.ccs.tencentyun.com/" ],
或者你可以自行百度清华的镜像源
安装并配置TDengine接下来的部分参考了官方这篇文档
先运行
docker run -d -p 6030-6041:6030-6041 -p 6030-6041:6030-6041/udp tdengine/tdengine
如果你的docker没有下载TDengine,会下载后安装
之后配置TDengine
docker run -d --name tdengine --hostname="tdengine-server" -v ~/work/taos/log:/var/log/taos -v ~/work/taos/data:/var/lib/taos -p 6030-6041:6030-6041 -p 6030-6041:6030-6041/udp tdengine/tdengine运行TDengine
输入 docker ps查看当前运行的的docker列表。上一步的配置名称可能不生效,所以请记下你的 ConTAINER ID
之后输入 docker exec -it <上面的ConTAINER ID> /bin/bash就可以进入容器开发了
在容器里输入 taos就可以执行命令了
输入下面这段代码尝试数据库的使用
create database db; use db; create table t (ts timestamp, a int); insert into t values ('2019-07-15 00:00:00', 1); insert into t values ('2019-07-15 01:00:00', 2); select * from t; drop database db;
至此,通过docker的服务端安装就完成了。
客户端安装(Windows) 安装Windows版本的客户端直接去官网下载并安装即可
修改本地Host如果你发现先命令行中存在有一些数据库 *** 作可以,但是另一些数据库 *** 作不可以。类似下图:
参考了这篇文章
原理与FQDN有关,详细了解这里,下面我们直接给出解决办法。
在服务端输入 hostname -f
,得到下面的结果并复制得到的结果
由于我们在本机运行,所以直接用 127.0.0.1 就可以了,修改 C:WindowsSystem32driversetc 这个目录下面的 host.ics 文件,在最下面添加
127.0.0.1 <前面得到的hostname>
这样服务端所有数据库命令就都可以正常执行了
在客户端中 *** 作数据库现在,在taos shell中,就可以正常的执行数据库命令了
还是尝试前面的代码来测试数据库
create database db; use db; create table t (ts timestamp, a int); insert into t values ('2019-07-15 00:00:00', 1); insert into t values ('2019-07-15 01:00:00', 2); select * from t; drop database db;从 good first issue 开始成为TDengine的Contributor
首先,没有接触过开源的同学请不要对这个部分有畏惧心理,代码的难度大概只有leetcode上“简单”的水平。在北邮校园内有幸听过 TDengine 创始人和boss的一场讲座,他非常鼓励同学们参与开源项目。而 TDengine 里面的 good first issue 难度也并不高,非常适合大家尝试一下。
首先在GitHub上的打开 good first issue 的 issue 页面
选择一个你觉得简单的 issue,需要一定的C语言基础。不过 good first issue 都比较友好。每一条 Issue 都不一样,具体如何解决可以参考官方微信公众号上的这篇文章
具体在GitHub提交修改后的代码,以下面这个issue为例:
进入需要修改文件,点击edit
修改代码后,点击
在GitHub上完成一个 good first issue 不算很难,不过已经是一次很好的开源实践了。真的很轻松,强烈建议每个朋友亲自动手试一试~
最近实习和学校实在事情太多了,早就想写这么一篇结果一拖再拖,十分羞愧。
我也只是一个数据库刚刚入门的小菜鸟,两端长的实习分别是前端和NLP相关的,后端知识也是走一步学一步。说实话,这个过程其实也很快乐啊。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)