The short answer is: because it is not a traditional relational database. Postgres, MySQL or other RDBMS are preferred if you need persistence for general purpose systems.
The main use cases I see (and use) for mnesia:
- Configuration data. If I remember correctly this was the initial use case for mnesia
- As a (distributed) caching layer or for other ephemeral data (instead of redis/memcache etc)
- If your data structure fits nicely with the key/value approach and you don’t need to scale to a massive number of nodes.
I think mnesia
is cool and should be used more when the use case fits but it does require you to acquire some specialist knowledge