- custom directives that run custom code
- custom routes on the server that do custom things? Or perhaps proxying to another app to handle alternate/custom routes
- schema injection, custom resolver logic
This was a really interesting bit to me, could you give detail on how the memory usage gets split up across these? Thank you.
Postgres runs in a 1 GB VM all by itself with some optimizations to get the most that limited hardware
All other services are in a second 1 GB VM.
You can see a list of those services here https://github.com/supabase/supabase/blob/master/docker/dock...
The memory use per process can differs by use-case, so its important to leave a bit of headroom. For example, PostgREST's memory consumption can grow if the amount of data being returned from its queries is large.
By the time you include:
- supabase studio
- kong
- auth
- storage
- meta
if they each take only 100MB, its pretty snug on a 1 GB VM!
But we do use a lot of their more advanced features like being able to use aggregates in sorts, aggregates in results, custom functions, etc. What are your plans there and will you have a public roadmap?
https://supabase.github.io/pg_graphql/roadmap/
Its early days, so the conversations around aggregates haven't happened yet, but I'm optimistic that they'll make an appearance in a future release
Thanks for the feedback on what you're finding valuable and sharing your dissatisfaction with the lack of communication around bugs and M1 support.
M1 support is very close to ready, we've been waiting on a couple of dependencies to support M1.
For what it's worth, I agree with you that our communication needs to improve and it is something we're working on.
Also, congratulations to Oliver and the Supabase team on pg_graphql! PostgreSQL extensions are slick and it'll help even more people embrace APIs from databases.
Do you have performance comparisons for the same datasets with Hasura / Graphile?
pg_graphql: https://supabase.github.io/pg_graphql/performance/
graphile: https://www.graphile.org/postgraphile/performance/
We'll certainly be keeping an eye on performance as it gets closer to GA
Love what you are doing with Supabase!
Quick question, have you considered building any kind of local mirroring system for offline mobile app/PWA, say on top of SQLite? Something like Realm for mongodb or PouchDB/Couchbase Lite for CouchDB/Couchbase.
It would obviously need devs to add some extra columns to tables for tracking, and a way to define the merge/overture characteristics for each column, but it would be awesome to have something like that!
It’s something I have thought about building for a while but never found the time. (I want to combine it with Yjs for collaborative offline rich text editing)
On the graphql side, we'll be targeting making mutations offline capable but are still in the brainstorming phase. If you have any suggestions for how you think it could work please open an issue on supabase/pg_graphql and we can discuss over there
{supabase team}
Even so, there has still been a lot of interest in GraphQL so users can leverage the growing ecosystem for things reflecting the data model/types for client usage, offline caching, etc
As long as pg_catalog schema is visible & the base postgres version is >= 13 it should be good-to-go
Does it work with TimescaleDB?