想在树莓派上跑TDengine(没问题!TDengine已支持ARM64位处理器)

学向勤中得,萤窗万卷书。这篇文章主要讲述想在树莓派上跑TDengine?没问题!TDengine已支持ARM64位处理器相关的知识,希望能为你提供帮助。
????


在 TDengine 的 Issue 集中搜索关键词 ARM,所列条目不少,也有很多用户跟我们的研发人员反馈,希望 TDengine 能尽快在 ARM 平台上跑起来。这项任务一直都在我们的研发计划内,并且,在 TDengine 最近更新的1.6.4.0版本上,已正式支持 ARM 64 位处理器。今后如果你想在树莓派上处理物联网、车联网、工业互联网数据,完全不需要把时间花在数据库的选择上,直接使用 TDengine 就对了!
那么, TDengine 如何在 ARM 64 位版本上编译呢?很简单,下面以开发调试环境为例,介绍一下 TDengine 的编译过程。




编译环境




?硬件环境:华为泰山 ARM 云服务器?




1kylin@kylinos:~/git$ lscpu
2Architecture:aarch64
3Byte Order:Little Endian
4CPU(s):2
5On-line CPU(s) list:0,1
6每个核的线程数:1
7每个座的核数:2
8Socket(s):1
9NUMA 节点:1
10L1d 缓存:64K
11L1i 缓存:64K
12L2 缓存:512K
13L3 缓存:32768K
14NUMA node0 CPU(s):0,1





?OS环境:银河麒麟?




1kylin@kylinos:~/git$ uname -a
2Linux kylinos 4.15.0-58-generic #64kord1k1 SMP Thu Aug 15 15:51:07 CST 2019 aarch64 aarch64 aarch64 GNU/Linux





注:在其他环境(比如不同的 ARM CPU 或其他 OS)中,可能会出现一些环境相关的问题,如果你在编译过程中遇到了,还请在 GitHub 上提交 Issue。




编译方式




一、make方式
1、从GitHub获取TDengine工程




1kylin@kylinos:~/git$ git clone https://github.com/taosdata/TDengine.git





2、进入工程目录完成编译




1kylin@kylinos:~/git$ cd TDengine
2kylin@kylinos:~/git/TDengine$ mkdir debug
3kylin@kylinos:~/git/TDengine$ cd debug
4kylin@kylinos:~/git/TDengine/debug$ sudo cmake .. -DARMVER=arm64
5kylin@kylinos:~/git/TDengine/debug$ sudo make





编译成功后,在build目录下会生成bin、lib两个目录,其中bin/taos、bin/taosd就是客户端和服务端的执行程序;lib目录里面库文件。
可以直接在bin目录下执行./taosd启动服务端进程(使用缺省配置文件:/etc/taos/taos.cfg),执行./taos启动客户端shell。




二、打包方式
1、从GitHub获取TDengine工程:




1kylin@kylinos:~/git$ git clone https://github.com/taosdata/TDengine.git





2、进入工程目录,执行编译、打包脚本:




1kylin@kylinos:~/git$ cd TDengine
2kylin@kylinos:~/git/TDengine$ sudo ./packaging/release.sh arm64





成功完成编译和打包后,在当前目录下,会生成debs、rpms、release三个目录:




1kylin@kylinos:~/git/TDengine$ ll debs
2总用量 2036
3drwxr-xr-x2 rootroot4096 12月4 16:58 ./
4drwxrwxr-x 13 kylin kylin4096 12月4 16:58 ../
5-rw-r--r--1 rootroot2073162 12月4 16:58 TDengine-1.6.4.1-arm64.deb
6kylin@kylinos:~/git/TDengine$ ll rpms
7总用量 4364
8drwxr-xr-x2 rootroot4096 12月4 16:58 ./
9drwxrwxr-x 13 kylin kylin4096 12月4 16:58 ../
10-rw-r--r--1 rootroot4458442 12月4 16:58 TDengine-1.6.4.1-arm64.rpm
11kylin@kylinos:~/git/TDengine$ ll release/
12总用量 6884
13drwxr-xr-x2 rootroot4096 12月4 16:58 ./
14drwxrwxr-x 13 kylin kylin4096 12月4 16:58 ../
15-rw-r--r--1 rootroot4426874 12月4 16:58 TDengine-1.6.4.1-arm64.tar.gz
16-rw-r--r--1 rootroot2611591 12月4 16:58 TDengine-client-1.6.4.1-arm64.tar.gz





debs目录下是TDengine服务端的deb安装包;
rpms目录下是TDengine服务端的rpm安装包;
release目录下是TDengine服务端和客户端的tar压缩安装包。




不妨试一试




都有哪些设备会用到 ARM 64 位处理器呢?
比如常见的手机、平板电脑、数字电视、机顶盒、服务器、智能家居、汽车驾驶系统、还有一些可穿戴设备。这时,就有人会问了,安卓手机上是否能跑起来 TDengine?
移植一款软件除了要看硬件系统外,也要考虑操作系统。目前,TDengine 客户端支持 Windows 和 Linux,也可以通过 RESTful 接口在任何平台上连接 TDengine 服务器,但是TDengine 服务器端只支持 Linux 系统。
如果你有把 TDengine 服务器跑在其他操作系统或 CPU 上的想法,我们建议你去试一试,毕竟想法还是要有的,万一实现了呢。最近就有网友分享,将 TDengine 成功的跑在了国产 CPU 龙芯上,运行起来没有遇到任何问题。
也非常欢迎到时候你能把实现过程分享出来,集优秀想法之大成,我想,这才是 TDengine 开源的意义。




◆  ◆  ◆   ◆  ◆




我们正在努力使 TDengine 可以适配更多的操作系统或 CPU,大家可以期待一下,未来在产品研发上,TDengine 会有更多、更重磅的“大动作”。


【想在树莓派上跑TDengine(没问题!TDengine已支持ARM64位处理器)】


    推荐阅读