Replies: 2 comments
-
|
EDIT: I also want to pump data into typesense.org for fulltext search |
Beta Was this translation helpful? Give feedback.
-
|
Seems like you're describing a new/prototype product. My advice: don't prematurely optimize it. Your schema is pretty simple, and the only "graph-y" looking part is the User.friends field. Why not just use YugaByte for everything in the beginning? If you find later that managing the friends field relationally becomes a bottleneck or that the full text search in YugaByte is not powerful enough, then and only then, consider bringing in new data management components such as Dgraph, etc. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi, I got a question: what's the best design?
Example: TikTok. It's not only a social network, but with tiktok shop also an ecommerce platform now.
I want to build something similar 2-in-1.
I want to host with Hetzner in US, EU, SG.
I will host Yugabyte partitioned by geo_partition https://docs.yugabyte.com/stable/explore/multi-region-deployments/row-level-geo-partitioning/#:~:text=Geo%2Dpartitioning%20allows%20you%20to,with%20regulations%20such%20as%20GDPR
I guess I can't host dgraph in the same way by geo_partition? so i was thinking of hosting it HA&AZ in the US, and have replicas in EU SG.
https://chatgpt.com/share/6959a118-4734-8007-9570-e0a21e420683
https://www.perplexity.ai/search/3e2d3f56-ff63-46cb-a12a-de7a77ec77a1
Yugabyte is the source of truth + has the data
Dgraph is on top of it and models relationships + recommendations, ratings, calculated trust scores, algorithm scores, etc
JOINS are done via Dgraph, and then i use simple queries to get the data from yugabyte
so basically
Postgre stores transactional, large (text posts, comments etc) data, payments, money
dgraph stores relationships + metadata ratings
I think that‘s the best way to build an app in 2026, especially a geo distributed one that shall run fast around the world (thanks to geo partitioning of yugabyte and easy replication of dgraph )
//
thanks to all the great guides online https://docs.dgraph.io/installation/ https://community.hetzner.com/tutorials/how-to-setup-a-yugabytedb-cluster it's very easy to self-host
What I try to find out now: the best way to sync dgraph from yugabyte.
E.g user makes a new blogpost. Shall I write it to Yugabyte and dgraph at the same time, and that's it?[seems like a bad idea ofc] or should i write it to yugabyte, onSuccess
returnto the user, and fire a write to dgraph (or an event to a message broker and then it gets added to dgraph?)https://chatgpt.com/share/6959a4e4-69d4-8007-9cf8-251e235ffc83
ChatGPT told me: write only to Yugabyte and have an "event" table
Is this the right thing to do? or maybe i should really use RabbitMQ? i'm willing to do this "extra step" to make it right.
How could I implement this in reality now? should i really implement RabbitMQ? https://chatgpt.com/share/6959ab54-2fcc-8007-8c18-05ef98a87361 ChatGPT gave me some ideas, but i thought i should i ask here on GitHub some real developers real humans with experience what I should do in my situation
Is RabbitMQ the right choice?
Beta Was this translation helpful? Give feedback.
All reactions