Database / Mnesia intermediate to advanced Interview questions
How do you configure a fragmented Mnesia table?
Fragmentation is set up via the frag_properties option on mnesia:create_table/2,
specifying how many fragments to create and how to distribute them across nodes.
mnesia:create_table(sessions, [{frag_properties, [{node_pool, [node1@host, node2@host, node3@host]}, {n_fragments, 3}]}, {attributes, [id, user, expiry]}]).
Once configured, ordinary API calls like mnesia:write/1 and mnesia:read/1 work
exactly as they would on a normal table — the fragmentation logic (routing to the right fragment based
on key hash) is handled transparently underneath by the mnesia_frag access-context module, so
application code doesn't need to know or care which fragment a given record actually lives in.
More Related questions...