I have an existing database for a game - currently using MySQL to store information - and I wish to test out ArangoDB to compare speed.
I am wondering whether it would be better to store all of a player's information in a single collection or if it would be more efficient (or even just better practice) to separate the two.
In MySQL I didn't really have a choice, but using ArangoDB I do.
For example, storing inventory information in MySQL:
+---------------------------+
| user_id | item_id | count |
+---------+---------+-------+
| 1 | 1 | 7 |
| 1 | 2 | 4 |
+---------+---------+-------+
Or in ArangoDB, I could do either:
A single collection for all of the information:
{ _key: "Unique User ID", health: 100, money: 52.38, // .... , inventory: { item1: 7, item2: 4 // , .... } }
Separate the above collection into two different ones (one for health, money, etc. and one for inventory data):
// 'user' collection { _key: "Unique User ID", health: 100, money: 52.38, .... } // 'inventory' collection { _key: "Unique User ID", item1: 7, item2: 4 // , .... }
Which one of the two methods above (or even another I didn't think of) would be more efficient?