所以,我一直在使用SQL。这就是我所知道的,但我真的想了解如何概念化文档数据。
{
"MBS":{
"name":"Mirrodin Besieged",
"code":"MBS",
"releaseDate":"2011-02-04",
"border":"black",
"type":"expansion",
"block":"Scars of Mirrodin",
"cards":[
{"layout":"normal",
"type":"Creature — Human Knight",
"types":["Creature"],
"colors":["White"],
"multiverseid":214064,
"name":"Hero of Bladehold",
"subtypes":["Human", "Knight"],
"cmc":4,
"rarity":"Mythic Rare",
"artist":"Austin Hsu",
"power":"3",
"toughness":"4",
"manaCost":"{2}{W}{W}",
"text":"Battle cry (Whenever this creature attacks, each other attacking creature gets +1/+0 until end of turn.)\n\nWhenever Hero of Bladehold attacks, put two 1/1 white Soldier creature tokens onto the battlefield tapped and attacking.",
"number":"8",
"watermark":"Mirran",
"rulings":[
{"date":"2011-06-01", "text":"Whenever Hero of Bladehold attacks, both abilities will trigger. You can put them onto the stack in any order. If the token-creating ability resolves first, the tokens each get +1/+0 until end of turn from the battle cry ability."},
{"date":"2011-06-01", "text":"You choose which opponent or planeswalker an opponent controls that each token is attacking when it is put onto the battlefield."},
{"date":"2011-06-01", "text":"Although the tokens are attacking, they never were declared as attacking creatures (for purposes of abilities that trigger whenever a creature attacks, for example)."}
],
"imageName":"hero of bladehold",
"foreignNames":[
{"language":"Chinese Traditional", "name":"銳鋒城塞勇士"},
{"language":"Chinese Simplified", "name":"锐锋城塞勇士"},
{"language":"French", "name":"Héroïne de Fortcoutel"},
{"language":"German", "name":"Held der Klingenfeste"},
{"language":"Italian", "name":"Eroina di Rifugio delle Lame"},
{"language":"Japanese", "name":"刃砦の英雄"},
{"language":"Portuguese (Brazil)", "name":"Herói de Bladehold"},
{"language":"Russian", "name":"Герой Блэйдхолда"},
{"language":"Spanish", "name":"Héroe de Fortaleza del Filo"}
],
"printings":["Mirrodin Besieged"]},
{next card...},
{next card...},
{next card...},
{last card...}
]
},
{next set...},
{next set...},
{last set...}
}
所以,我有一张来自Magic:The Gathering的所有卡片的json文件。 json被“分割”成不同的集合。所以,如果我以某种方式将其导入noSQL数据库(mongoDB):
什么构成文件?
每套都是文件吗?
每张卡片都是文件吗?
什么是好结构?
那时的查询工作如何......如果我正在寻找某种东西,它只是一个巨大的“文本搜索”吗?
只是寻找某种洞察力来围绕noSQL。