Hello,
I'm evaluating Kinto for use in a language learning web app.
Users can learn any number of languages, they can create shelves of flashcard lists (card decks), and they can learn the card lists using spaced repetition.
How would I model the data for optimal sync?
If I use one collection (languages) and nest everything under it, would sync be very slow for dozens of shelves containing hundreds of decks which contain thousands of cards?
Another approach I can think of is using one kinto collection per language. But I'm not sure this will speed up sync enough.
What about splitting the data into several collections (one per entity): languages, shelves, decks, cards?
Then I would need to link them together in some manner. This would presumable make sync faster. But this would cause relationship management issues, wouldn't it?
languages
-- shelves
---- decks
------ cards
Hello,
I'm evaluating Kinto for use in a language learning web app.
Users can learn any number of languages, they can create shelves of flashcard lists (card decks), and they can learn the card lists using spaced repetition.
How would I model the data for optimal sync?
If I use one collection (languages) and nest everything under it, would sync be very slow for dozens of shelves containing hundreds of decks which contain thousands of cards?
Another approach I can think of is using one kinto collection per language. But I'm not sure this will speed up sync enough.
What about splitting the data into several collections (one per entity): languages, shelves, decks, cards?
Then I would need to link them together in some manner. This would presumable make sync faster. But this would cause relationship management issues, wouldn't it?
languages
-- shelves
---- decks
------ cards