I stumbled on Ticktockdb awhile ago and decided to try it as a replacement for Influx. After some starts and stops, I got it to install on a Rpi 2 Model B and it is running with no problems that I see.
I have three sensors sending data (Temperature, Pressure and Humidity) via MQTT so I built a flow that gets the data, formats it and sends it to the ticktockdb. I also build a dashboard that graphs the data based on selectable criteria.
The tar file at Github includes precompiled binaries for Raspberry OS but also the complete source code. Thus you can execute a simple make statement to get a new binary.
My hope was that the compiled binary would be satisfied with the older glibc version.
Well not unusual for Linux software that docs and source code is out of sync..
Docker is too much effort to compensate a programmers quirk like this. I will look for other TS databases.
I tried doing it on a Pi3 and hit the same error using buster. HOWEVER if you upgrade or flash an SD card to Bullseye, then it installs and starts up fine for me.
You're welcome to give a try. Honestly, TT is just a 2-persons open-src project. It not as mature as InfluxDB but much more lightweight than InfluxDB (you can read our benchmark perf tests). If InfluxDB's perf is good enough for you, your better choice will be InfluxDB.
FYI, interestingly we can't repro building failure in Buster+glibc2.28. The build went through although there are warnings as shown below.
g++ -I include -std=c++11 -Wno-unused-result -Wno-format-truncation -Wno-psabi -flto -O3 -march=native -ffast-math -c src/utils/json.cpp -o objs/utils/json.o
g++ -pthread -flto -o bin/tt objs/admin.o objs/global.o objs/main.o objs/agg/aggregate.o objs/agg/down.o objs/agg/rate.o objs/core/page.o objs/core/memmgr.o objs/core/mmap.o objs/core/http.o objs/core/compress.o objs/core/ts.o objs/core/udp.o objs/core/part.o objs/core/tcp.o objs/core/task.o objs/core/dp.o objs/core/cp.o objs/core/tsdb.o objs/core/query.o objs/utils/leak.o objs/utils/strbuf.o objs/utils/range.o objs/utils/kv.o objs/utils/bitset.o objs/utils/timer.o objs/utils/append.o objs/utils/utils.o objs/utils/meta.o objs/utils/meter.o objs/utils/stats.o objs/utils/config.o objs/utils/logger.o objs/utils/sync.o objs/utils/tag.o objs/utils/fd.o objs/utils/hash.o objs/utils/json.o -lz
/tmp/cc83a9z6.s: Assembler messages:
/tmp/cc83a9z6.s:1286: This coprocessor register access is deprecated in ARMv8
....
/tmp/ccsmghSg.s:1066: This coprocessor register access is deprecated in ARMv8
/tmp/ccsmghSg.s:1068: This coprocessor register access is deprecated in ARMv8
ylin30@pi4-buster32:~/ticktock $ ./bin/tt -c conf/tt.conf &
[1] 3013
ylin30@pi4-buster32:~/ticktock $ TickTockDB v0.12.1, Maintained by
Yongtao You (yongtao.you@gmail.com) and Yi Lin (ylin30@gmail.com).
This program comes with ABSOLUTELY NO WARRANTY. It is free software,
and you are welcome to redistribute it under certain conditions.
For details, see <https://www.gnu.org/licenses/>.
Writing to log file: /home/ylin30/ticktock/log/ticktock.log
ylin30@pi4-buster32:~/ticktock $
ylin30@pi4-buster32:~/ticktock $ ./admin/ping.sh
pong
ylin30@pi4-buster32:~/ticktock $ ldd --version
ldd (Debian GLIBC 2.28-10+rpt2+rpi1) 2.28
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.
ylin30@pi4-buster32:~/ticktock $ cat /etc/os-release
PRETTY_NAME="Raspbian GNU/Linux 10 (buster)"
NAME="Raspbian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"
ylin30@pi4-buster32:~/ticktock $
Thats great! Thanks a lot. I am just in my learning curve for timebased databases. So far the influxDB on my Pi3 seems ok but on the long run I would prefer a lightweight solution as this Pi3 hosts several applications.
I assume when I learn influxDB I am also able to handle your database system?
I will give it another try and compare with influxDB
In terms of time series concepts they are the same. TT can use Influx write-line protocol for writes which is much more concise than OpenTSDB's write protocol. We like Influx's SQL like query format but TT doesn't support this, yet. Also TT doesn't provide replication for the time being, same as open-src version of InfluxDB. InfluxDB's enterprise version does provide replication for a charge.