ARM-based (Linux) deployment

Hi Everyone!

With ARMv9 on the horizon, we’d like to experiment more with its adoption in the production environment as a DB host.

I’d like to ask your opinion about setting up Dgraph on low-powered ARMs (smth like Raspberry PI4 1.5GHz 8Gb RAM) on regionally distributed premises.

Initially I’m thinking about a cluster of 3-4 PI4s (each 8Gb RAM + SSD) for every premise. Therefore, sharding will be done on a regional-premises basis.

I already launched a Dgraph on such a cluster and it works just fine.

The on-premise information load isn’t expected to be very high.

Although in theory and in prototype it works, but it’d be great to know your opinion about issues we may incur during production implementation (as hardware used is below recommended configuration… but our information loads are also not big) + may be smbd has a similar experience on #ARM.

Thanks beforehand!

I believe that we will not have an ARM binary in the short term. Dgraph is a DB meant to run on the cloud. You can venture out by creating your binary locally. Just have a golang environment and change the configuration to build it for your OS in the make config.

I did just that. And everything is OK. The essence of my question was more about specifics of Dgraph working in constrained hardware resources (PI4 8GB).

I don’t think there is a way to constrain it to limited resources without eventually hitting some OOM issues. A few of us community guys have put some thoughts into making a DgraphLite or something similar.

This might be interesting to you as well. Ideally, we would like Dgraph to support smaller systems and other environments again, but I believe Dgraph engineers are correct to focus right now on what they are doing best - Dgraph in the Cloud (larger linux machines.)

1 Like

Thanks. Will look into