Query speed improvements to mnesia

Vans S vans_163@REDACTED
Fri Jun 12 14:28:59 CEST 2020

Mnesia is quite very good but once the entries get to 1m+ in a single table queries take a long time.  I have a few things I have been thinking about regarding mnesia that I really miss.

1. Map support.  Using maps instead of tuple records, (key and table fields could be set when creating the table).  
  Or allowing indexes to be set on a map if its the 3rd element of the record. {mytable, Key, #{index: 1}}
2. Get a random key / element.  Right now there is no way to get a random record out a table without a few hacky workarounds that all don't really work at scale.
3. Parallel queries, match and selects that readback values take really long on large tables. How about a way to split up the table into chunks and run parallel over it?

Bonus. Subscription deltas (receiving the delta of changes instead of the entire record on subscription events)

Anyone else thinking along these lines?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20200612/6675628c/attachment.htm>

More information about the erlang-questions mailing list