Marchowes / pyProm

Surface Network Analyzer.
BSD 3-Clause "New" or "Revised" License
6 stars 2 forks source link

MongoDB datastore (design) #91

Open Marchowes opened 6 years ago

Marchowes commented 6 years ago

Anything related to figuring out how to deal with a mongoDB datastore should go here.

The goal:

Writing domains and other things to compressed files is a pain, wouldn't it be awesome if we could write to a document database instead?

Ideas: a DB "driver" of sorts which can deal with searching a database, and manipulating objects in that database instead of manipulating them via in memory objects. In memory objects can instead be a "transitory" thing, like when analysis occurs.

Main object can be a Domain, or divide tree. Objects will need to be linked to in-memory raster maps so that walks can be done.

-Domain --Linkers --Saddles --Summits

More to come...

Marchowes commented 6 years ago

Rough idea:

We'll have a new set of classes that inherit from existing classes (namely Domain()) which include all the accessors for data from the DB.

Put it in something like: pyprom/mongo/

names like MongoDomain()

include functions that let you import from in memory domains.

Maybe make use of the DataMap functions and store Datamaps in a GIS DB?