Choosing Between Bubble Database and SQL server?

Hello Bubblers,

I am new to using Bubble. At the moment I’m still reading the documentation and watching the official videos and those of very talented bubblers.
However, in parallel, I started working on my application from scratch and on paper. I want to get some idea of the database system, the workflows and the design system. Otherwise I’m afraid of tattooing too much afterwards.

What am I working on:
I’m working on a SaaS software to do risk management according to the ISO standard. This falls into the category of ERM (Enterprise Risk Management).
For the moment it’s only a side project to allow me to get more proficient on Bubble and all the “sides” (ie: database management etc., workflows etc.). I’m doing it for a friend who is a risk manager and who wants to start his own business.

My target:
Ideally, I would like several companies to be able to use the software by creating accounts and that each of them has the possibility to create several users (project director, project manager, risk manager, risk owner, visitor). But i want to stay the Super Admin of course.
I would like to create a desktop application that would mainly allow the creation of risk policy and a mobile application that would allow the operational staff in the field to report risks and take actions concerning the risks that are assigned to them.

My question:
Knowing that for each company, the risk registers will have to be accessible on a desktop application AND via mobile (or tablet).
According to you, is it better to start from a SQL database (aws, microsoft etc) and use a Bubble plugin and an API or then ALL the database can be created on bubble and at once :

  • separated from one company to another and between the users of each company
  • accessible on both desktop and mobile applications.

Sorry if my post is too long, but I have the feeling that if I make the wrong choice at the beginning, then it will be really complicated.

Thanks a lot for your help!

Yoann

It’s important to note that Bubble uses a SQL database under-the-hood which is Postgres (in my opinion the best enterprise-level open source DB available) so you’re effectively running on top of a scalable, SQL database anyway, not some document DB like Firebase etc. I will say however that you do not have the same level of control such as running partial queries, indexing that you have running your own DB and some of the tricks I’ve had to do with Bubble would have been anathema to me a couple of years ago. But there’s so many other benefits with sticking with Bubble’s DB that it’s worth sacrificing being pedantic over clean database, one-source-of-truth design. It’s cringeworthy for a while but it’s difficult to go back and you learn to make it work for you.

Bubble doesn’t generate desktop apps so you’ll need to look at systems that wrap-up web apps into native desktop apps. The one I used to use when I was coding traditional Javascript apps was Electron. In terms of mobile, you can do a similar thing and there are tools out there included one is the BDK plug-in but I’ve not used them. I’d also look at AppGyver to build your front-end mobile app and hook it with your Bubble app using the API and Data API. AppGyver generates React Native apps for mobile platforms.

In terms of separating data for different companies etc you can use privacy rules, My video tutorial below might help

Thank you very much! Very Helpful!