Ribbit-Network / ribbit-network-frog-hardware

The sensor for the world's largest crowdsourced network of open-source, low-cost, GHG Gas Detection Sensors.
https://www.ribbitnetwork.org/
MIT License
96 stars 26 forks source link

Consider What Database Option is Best for the Project #9

Closed keenanjohnson closed 3 years ago

keenanjohnson commented 3 years ago

I'm currently using InfluxDB to store the timeseries greenhouse gas data. I'm not sure if this is the correct solution, so I need to look into other options.

I've seen https://thingsboard.io/ which seems promising. The most interesting feature is that it has a Map visualization widget that could be used to easily create a nice public dashboard.

Definitely open to any other suggestions that anyone has.

phil-d-wilson commented 3 years ago

Cool project Keenan. :)

I've a couple of ideas for your database issue:

1) Influx have a cloud offering, with a pretty generous free tier. I've used it in balenaLocating with setup instructions in the blog post. 2) I've also toyed with using IPFS for a citizen science project, or a database built on top of it such as orbitdb. This would mean the data is distributed between all of the nodes that join your fleet, but without the running costs of a cloud DB.

BTW - let me know if you need any balena-help. ;)

Phil

keenanjohnson commented 3 years ago

Thanks for the suggestions @phil-d-wilson!

I'm currently using Influx for logging all the time series data and I'm looking for a good solution to create a nice public-facing dashboard that would allow access to the data and probably have some sort of nice map display.

I'll look into the other options and let you know! Certainly I'll reach out if I hit any balena roadblocks :)

phil-d-wilson commented 3 years ago

Maybe the dashboard balenaBlock with the worldmap plugin ?

keenanjohnson commented 3 years ago

Yeah, it seems like the standard thing would be InfluxDB -> Grafana -> World Map Plugin. I'd like a centralized database to store all the data from multiple Balena devices in the central database. I was hoping for a solution that wouldn't involve two tools (InfluxDB + Grafana) to keep cost down, but it might be the best solution.

lalligagger commented 3 years ago

+1 for influx which I've hooked up to Dash with no problem (not a Grafana fan, gives me flashbacks to TVAC testing 😅)

keenanjohnson commented 3 years ago

Cool yeah I haven't really looked at Dash yet, but I'll check that out.

keenanjohnson commented 3 years ago

Ok it seems like InfluxDB + Dash for visualization is the best option for now, so going to proceed with that :)