@BeAware@social.beaware.live Elasticsearch uses Java and Java is known to be a memory hog. I don't know they chose that language but they did.
Elasticsearch doesn't seem to be for single nodes (although, maybe it can work for that scenario). With it, you can have multiple shards which you can house in different servers in a cluster.
It also appears to use more resources when it's setup to index content in "real-time" (one second) than if you have a larger interval (although, there is the trade-off that it might take time for something to become searchable).
I hope that helps.