We are looking for best architecture / solution to be able to load 100k nodes and edges, every hour; while we have around 50k tps of read call from the golang api serving as middleware
Currently we have 2 golang API, using dgraph client. One API runs CRUD operation on dgraph by reading from our data warehouse system, almost 10-100 nodes edges per hour (aka extractor api). Second API serve and perform read operations at 10k tps (aka serving api). We are trying to introduce some more type of datasets almost 100k nodes and edges now per hour; but dgraph client is taking more than 1 hour to load and impacting our serving api by increasing its response time or sometimes crashing the lead alpha node
We found option of dgraph live loader; but we couldn’t able to fit in our extractor api written in golang, hence looking for best practice solution for hourly execution of dgraph live loader via an api which can read and transform data from other data source (in our case sql warehouse) and right now we are exploring option of python api as well, since majority of our team is with data science / python background