Elite Document Structure: Difference between revisions
From NoSQLZoo
No edit summary |
No edit summary |
||
| Line 19: | Line 19: | ||
This means that some documents will have fields that others do not: Some systems will be uninhabited and have no stations. Some stations will have no listings.<br/> | This means that some documents will have fields that others do not: Some systems will be uninhabited and have no stations. Some stations will have no listings.<br/> | ||
To query null <b>or</b> non-existant fields use <code><field>: None</code>. or <code><field>: "null"</code><br/><br/> | To query null <b>or</b> non-existant fields use <code><field>: None</code>. or <code><field>: "null"</code><br/><br/> | ||
A typical <code>commodities</code> document looks something like this. | |||
<pre> | <pre> | ||
{ | { | ||
| Line 29: | Line 29: | ||
</pre> | </pre> | ||
<code>systems</code> is much bigger, so some stations and listings have been removed from this example document to make it shorter. | <code>systems</code> is much bigger, so some stations and listings have been removed from this example document to make it shorter. | ||
*The system '''Kappa Cygni''' has one station called '''Kensey Ring'''. | |||
*At Kensey Ring you can buy the commodity '''Hydrogen Fuel''' for 93 credits per ton, you can sell it is 89 credits. | |||
*You cannot buy '''Mineral Oil''' there but you can sell it at 326. | |||
<pre> | <pre> | ||
Revision as of 21:10, 23 September 2015
Questions on this database can be found here: MAPREDUCE elite
Elite Dangerous
Keys used in this database.
commodities:
_id, average_price, category, name
systems:
_id, allegiance, faction, government, name, population, primary_economy, security, state, stations, updated_at, x, y, z
systems.stations:
allegiance, distance_to_star, economies, export_commodities,has_blackmarket, has_commodities, has_rearm, has_repair,
has_shipyard, has_outfitting, faction, government, listings, max_landing_pad, name, state, type, updated_at
systems.stations.listings:
buy_price, collected_at, demand, commodity, sell_price, supply, update_count
Unlike the world collection, null and empty values are not stored in this database.
This means that some documents will have fields that others do not: Some systems will be uninhabited and have no stations. Some stations will have no listings.
To query null or non-existant fields use <field>: None. or <field>: "null"
A typical commodities document looks something like this.
{
"_id" : ObjectId("55af74e7402aa43f1ce7e3a3"),
"name" : "Explosives",
"average_price" : 267,
"category" : "Chemicals"
}
systems is much bigger, so some stations and listings have been removed from this example document to make it shorter.
- The system Kappa Cygni has one station called Kensey Ring.
- At Kensey Ring you can buy the commodity Hydrogen Fuel for 93 credits per ton, you can sell it is 89 credits.
- You cannot buy Mineral Oil there but you can sell it at 326.
> db.systems.findOne({"name":"1 Kappa Cygni"})
{
"_id" : ObjectId("55b0edf6369fd5074b349c48"),
"stations" : [
{
"max_landing_pad_size" : "M",
"has_blackmarket" : 0,
"has_commodities" : 1,
"updated_at" : 1434929486,
"has_outfitting" : 0,
"government" : "Democracy",
"has_shipyard" : 0,
"type" : "Unknown Outpost",
"has_rearm" : 0,
"allegiance" : "Federation",
"has_refuel" : 1,
"name" : "Kinsey Ring",
"listings" : [
{
"commodity" : "Hydrogen Fuel",
"supply" : 129630,
"collected_at" : 1421669319,
"update_count" : "1",
"buy_price" : 93,
"sell_price" : 89,
"demand" : 0
},
{
"commodity" : "Mineral Oil",
"supply" : 0,
"collected_at" : 1421669320,
"update_count" : "1",
"buy_price" : 0,
"sell_price" : 326,
"demand" : 217674
}
],
"distance_to_star" : 2359,
"economies" : [
"Industrial",
"Refinery"
],
"has_repair" : 1
},
{
"max_landing_pad_size" : "M",
"has_blackmarket" : 1,
"has_commodities" : 0,
"updated_at" : 1434929486,
"has_outfitting" : 0,
"government" : "Anarchy",
"has_shipyard" : 0,
"type" : "Unknown Outpost",
"has_rearm" : 1,
"allegiance" : "Independent",
"has_refuel" : 1,
"name" : "Hauck Enterprise",
"distance_to_star" : 4832,
"economies" : [
"Industrial",
"Refinery"
],
"has_repair" : 1
}
],
"name" : "1 Kappa Cygni",
"faction" : "United 1 Kappa Cygni Future",
"government" : "Democracy",
"allegiance" : "Federation",
"updated_at" : 1430938622,
"state" : "None",
"needs_permit" : 0,
"y" : 37.78125,
"x" : -117.75,
"security" : "High",
"z" : 11.1875,
"primary_economy" : "Industrial",
"population" : 24843190
}