Difference between revisions of "Elite Document Structure"
From NoSQLZoo
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 }