At http://www.rethinkdb.com/docs/data-modeling/, states:
Because of the previous limitation, it's best to keep the size of the posts array to no more than a few hundred documents.
If I intend on keeping 90 days (3 months) of statistics, and its likely that each date has an embedded array of around 10 regions. That means 90*10=900. 900 isn't exactly a few hundred.
However a related question at MongoDB relationships: embed or reference? suggests that MongoDB has a limit of 16mb, which translates to being able to host 30 million tweets or roughly 250,000 typical Stackoverflow questions as embedded documents. That's a lot!
However, that is MongoDB. RethinkDB has a limit of 10mb per document. Which should still be considerably high. Either the RethinkDB's documentation might be flawed. Or there is another specific reason (not explained) why Rethinkdb is suggesting only to keep it down to a few hundred embedded arrays, even though 10mb can clearly hold a lot more than that.
A rough idea of the schema I was referring to:
DailyStat::Campaign
[
{
id: '32141241dkfjhjksdlf',
days_remaining: 26,
status: 'running',
dates: [
{
date: 20130926,
delivered: 1,
failed: 1,
clicked: 1,
top_regions: [
{ region_name: 'Asia', views: 10 },
{ region_name: 'America', views: 10 },
{ region_name: 'Europe', views: 10 },
{ region_name: 'Africa', views: 10 },
{ region_name: 'South East Asia', views: 10 },
{ region_name: 'South America', views: 10 },
{ region_name: 'Northern Europe', views: 10 },
{ region_name: 'Middle East', views: 10 }
]
},
{
date: 20130927,
delivered: 1,
failed: 1,
clicked: 1,
top_regions: [
{ region_name: 'Asia', views: 10 },
{ region_name: 'America', views: 10 },
{ region_name: 'Europe', views: 10 },
{ region_name: 'Africa', views: 10 },
{ region_name: 'South East Asia', views: 10 },
{ region_name: 'South America', views: 10 },
{ region_name: 'Northern Europe', views: 10 },
{ region_name: 'Middle East', views: 10 }
]
},
...
]
}
]