Hacker News new | ask | show | jobs
by sikan_ 1170 days ago
Hi HN! I’m the lead engineer on Retool Database.

Spreadsheets are often used as “poor man’s databases”—they’re quick to get started, but fall apart when you need data integrity, validation, and the ability to query/filter data.

This is why I am so excited about this launch - Retool Database gives you the power of Postgres with the “getting started” speed of a spreadsheet. No setup required.

We've also spent a lot of time on the UI for interacting with the database as well. You can create and edit tables, columns, and rows quickly without writing SQL. You should be able to get the same speed of iteration as spreadsheets, but you are also starting from the get-go that can handle the increasing complexity of your data and scale much better with app development.

We’re giving you 5GB free storage for the first year + connection strings so you can access your data outside Retool.

Lots of learnings as we built this—happy to answer any question you have!

5 comments

I just tried using this, and I'm afraid I don't think it's as easy as a spreadsheet. I don't even understand it!

I started things off, just kept clicking "yes, yes", made a database called "shopping", and now...

I just seem to have an empty page? There is 'id' and 'created_at'.

I can "Add row", which just let's me specify "id", which has to be a number.

There is a button marked "fields", which tells me my fields are "id" and "created_at", but doesn't seem to have any way to add new fields.

I then, at my last guess, tried doing "import CSV". It asks me to choose a field for each column. I don't have any fields yet. I want to make some. Why can't I pick "this should be a new field"?

Anyway, import CSV just tells me 'Syntax error at or near ")"' when I try running it. There are no close brackets in my CSV, so no idea where that is coming from.

Can Retool Database be self-hosted stand-alone without Retool? I can see using this as a replacement for excel on some things.
Check out:

NocoDB (https://github.com/nocodb/nocodb) - works w/ MySQL, PostgreSQL, SQL Server, SQLite, MariaDB

Baserow (https://gitlab.com/bramw/baserow) - PostgreSQL based

APITable (https://github.com/apitable/apitable) - MySQL based

There's also Grist (https://getgrist.com) - SQLite based with Excel-like formulae in Python.

I run it on my NAS as my own private Airtable for calorie tracking.

Also Mathesar (https://github.com/centerofci/mathesar/) - PostgreSQL based
thanks, I've been looking at all the spreadsheet-over-a-database projects i can find, and hadn't discovered APITable yet! I have a very specific requirement (app where I want a few views to be collaborative spreadsheets and the rest more freeform html based pages reading from the same tables) and so far none of the popular projects has been quite suitable. (basetool might have but it's dead :()
Beautiful thank you.
We agree! The UI can be really helpful to make quick changes to schema, data, etc. You can’t run the UI without a Retool account though. We have a self-hosted Retool that works with your own Postgres database that you connect to Retool. Docs here: https://docs.retool.com/docs/retool-database-self-hosted
How do indexes work? Do you design them yourself or do they get automatically added based on some kind of heuristics?
We don't do anything automatic like that (yet?), you will have to add indexes manually.

But I would have to say - modern day databases are so fast that you probably won't notice the performance of adding indexes until at least 100k+ rows in a table and/or you have very high read throughput on that particular table.

You'll see a performance benefit way before 100k rows depending on the size of each row, especially with sorting. It might save you guys a ton of CPU hosting wise, depending on how this all works, to track slow queries and auto add indexes. Way worth the write overhead in most cases.
It’s likely that most of their customers would only have a few hundred or thousand rows where indexing may not actually matter after all. Otherwise I’m sure they would’ve prioritized it.
Yeah for now. You know people will try storing all tweets in it or whatever :)
huh? what about joins? surely your customers are doing joins. a few thousand times a few thousand is >> 1 million.
Ah yes if you need sorting then indexed are def the way to go!
Looks awesome, great work Sikan and team!
Way to go! Looks great.