Horrible developer experience while getting started with Influx Serverless cloud - Am I the stupid one?

Hi all!

Hope you can put my mind a bit at ease here - Note that this post is not as much an ask for help for my specific case, but more a question about whether the documentation/developer experience with InfluxDB (or maybe specifically with the serverless cloud offering) is overall very confusing for anyone else, or if i’m going about it in the wrong way? Sidenote: I’m a CTO at a startup with 20+ years of experience working with APIs… It’s not normally hard for me to get something like this running.

Long story short - I have created a serverless subscription on https://cloud2.influxdata.com/, and have very easily been able to add data. Now I want to query my data from my application. Sidenote: I find that the “Data Explorer” is a bit primitive, but figured it was due to it being a new product?

I tried to query using the PHP client to start with, and remembering reading that the Flux query language is pretty much dead now (according to Reddit - Dive into anything at least), I wanted to do SQL, and this is where the troubles started. All query examples on GitHub - influxdata/influxdb-client-php: InfluxDB (v2+) Client Library for PHP are Flux only - None with SQL or InfluxQL. I tried a couple of queries regardless, but just got empty responses, so I figured that I would try it out using the HTTP API, as it might just be a problem with the php client.

I go into the resource center and head over to InfluxDB HTTP API | InfluxDB Cloud Serverless Documentation, where the links send me to InfluxDB CloudServerless API documentation. This is the documentation for Cloud 2.x, but I thought I was on 3.x since it’s influxdb v 3 that runs the serverless offering? Or maybe it’s just version 2 of the cloud offering? Regardless, I cant find anything on cloud 3.x, so I assume that I need to be reading the 2.x docs… Sidenote: None of the clicks are easily clickable on InfluxDB CloudServerless API documentation due to a css error and why is the page styling so different from the other pages?! I manage to get to Get started with InfluxDB Cloud Serverless | InfluxDB Cloud Serverless Documentation though…

Down the page I find a link to the InfluxDB HTTP API, but that takes me to the v2 OSS documentation apparently - Not exactly what I was looking for… If I change to the serverless offering at the top, I’m back to where I started on the serverless cloud api main page. Going back and instead making my way to Query data | Get started with InfluxDB | InfluxDB Cloud Serverless Documentation, I finally see some of what I wanted to see, however, the only reference to the http api is using InfluxQL via the v1 api, nothing about using SQL… Apparently, in order to query my data in an app that’s not written in one of the client library coding languages, I need to learn InfluxQL and use the v1 HTTP API, or reverse engineer one of the client libraries to pick the parts I need?

I dont want to give up completely, so I load up Use InfluxQL and InfluxDB v1 HTTP query API | InfluxDB Cloud Serverless Documentation and Postman, type in the URL and fiddle around with the parameters a bit, and finally get a response - “database not found: <bucket_name>”. I tripple checked the bucket name and api token, both are correct.

Last ditch effort, i figure that I will ask on slack, so I go to and click help and support → Slack community. “This link is no longer active”.

Overall, a very frustrating experience that makes me wonder if I should even be using Influx for my project. The selling points are very valid, and the fact that I wouldnt have to manage the infrastructure by using the serverless would make a big difference for me, but honestly, at this point, is it worth persisting?

Hello @Jeppe_Mariager-Lam,
Welcome!
Thank you for your feedback. We’re aware that our docs and navigating our product selection is challenging and we’re working on making improvements. I apologize that its been so challenging for you, and I’m happy you reached out.

You can use SQL or InfluxQL to query Severless. Here are the API docs for severless:

All of the client libraries for InfluxDB v3 are maintained here:

Here are the corresponding docs:

Correct the data explorer is minimal. This is because we want to encourage users to take advantage of the interoperability that InfluxDB v3 offers. And use tools like Tableau, Apache Superset, or Grafana with InfluxDB v3.

Unfortunately there isn’t a PHP client for InfluxDB v3 that has both write and query capabilities. The InfluxDB v1, v2, v3 write endpoint are the same so you can use any client library to write line protocol data to InfluxDB v3. However, InfluxDB v3 uses Apache Arrow and Flight under the hood to gain significant performance benefits. Unfortunately, in order to make queries you have to use one of the v3 client libraries. As they wrap the Apache Flight client under the hood for the query methods.

If you’re using Severless you can’t query in Flux. You don’t need to learn InfluxQL because you can query with SQL instead.

Here is an invite to Slack:
https://join.slack.com/t/influxcommunity/shared_invite/zt-241yaqu10-tvO_lLt6faRrNdbXyPa7MQ

I really appreciate you taking the time to give this feedback. I think learning to navigate across all of the products documentation is the hardest part of getting started with InfluxDB v3. Luckily because the product has been simplified to focus on some main capabilities the overall user experience is easier.

What are you ultimately trying to do with PHP and InfluxDB? I’d love to share additional resources to help you further.

Thanks

In addition to Anais’ suggestions, you can use the influx3 CLI for SQL or InfluxQL queries against Serverless (over Flight/gRPC). You’ll need to install Python, but you can start querying right away without writing any Python. See the instructions and example in the Get Started tutorial.

I’d like to confirm @Jeppe_Mariager-Lam observations

  1. The documentation for InfluxDB Cloud 3 is a mess. It’s haphazardly “organized”, the links often branch out to OSS or v2 TSM documentation, which may or may not apply to v3, and most of the examples that I’ve found are still in Flux.

  2. There do not appear to be any good choices for a query language now. Flux remains the most useful and functional, but it is deprecated and not even available for v3 via the Influx web pages (apparently it is supported - it is available thru Grafana, for example ). Subsets of SQL and InfluxQL are supported for read queries, but not for writes or admin. For those tasks Influx points one to the CLI or the API - what a mess.

I’m sorry for the poor experience with the Serverless documentation.

  • Do you happen to recall where you found links for OSS or TSM in the InfluxDB Serverless docs?
  • What Serverless query examples did you find that use Flux? Our Migration guide of course intentionally uses Flux, but all other query examples should use SQL or InfluxQL.
1 Like