def main(): """TEST CODE""" from seims.preprocess.config import parse_ini_configuration from seims.preprocess.db_mongodb import ConnectMongoDB seims_cfg = parse_ini_configuration() client = ConnectMongoDB(seims_cfg.hostname, seims_cfg.port) conn = client.get_conn() ImportWeightData.workflow(seims_cfg, conn) client.close()
def main(): """TEST CODE""" from seims.preprocess.config import parse_ini_configuration from seims.preprocess.db_mongodb import ConnectMongoDB seims_cfg = parse_ini_configuration() client = ConnectMongoDB(seims_cfg.hostname, seims_cfg.port) conn = client.get_conn() main_db = conn[seims_cfg.spatial_db] ImportParam2Mongo.workflow(seims_cfg, main_db) client.close()
def main(): """TEST CODE""" from seims.preprocess.config import parse_ini_configuration from seims.preprocess.db_mongodb import ConnectMongoDB seims_cfg = parse_ini_configuration() client = ConnectMongoDB(seims_cfg.hostname, seims_cfg.port) conn = client.get_conn() maindb = conn[seims_cfg.spatial_db] ImportReaches2Mongo.generate_reach_table(seims_cfg, maindb) client.close()
def main(): """TEST CODE""" from seims.preprocess.config import parse_ini_configuration from seims.preprocess.db_mongodb import ConnectMongoDB seims_cfg = parse_ini_configuration() client = ConnectMongoDB(seims_cfg.hostname, seims_cfg.port) conn = client.get_conn() maindb = conn[seims_cfg.spatial_db] scenariodb = conn[seims_cfg.bmp_scenario_db] ImportScenario2Mongo.scenario_from_texts(seims_cfg, maindb, scenariodb) client.close()
def main(): """TEST CODE""" from seims.preprocess.config import parse_ini_configuration from seims.preprocess.db_mongodb import ConnectMongoDB seims_cfg = parse_ini_configuration() client = ConnectMongoDB(seims_cfg.hostname, seims_cfg.port) conn = client.get_conn() hydroclim_db = conn[seims_cfg.climate_db] site_m = HydroClimateUtilClass.query_climate_sites(hydroclim_db, 'M') site_p = HydroClimateUtilClass.query_climate_sites(hydroclim_db, 'P') client.close()
def main(): """TEST CODE""" from seims.preprocess.config import parse_ini_configuration from seims.preprocess.db_mongodb import ConnectMongoDB seims_cfg = parse_ini_configuration() client = ConnectMongoDB(seims_cfg.hostname, seims_cfg.port) conn = client.get_conn() db = conn[seims_cfg.climate_db] import time st = time.time() ImportMeteoData.workflow(seims_cfg, db) et = time.time() print et - st client.close()
def workflow(cfg): """Building MongoDB workflow""" f = open(cfg.logs.build_mongo, 'w') # build a connection to mongodb database client = ConnectMongoDB(cfg.hostname, cfg.port) conn = client.get_conn() maindb = conn[cfg.spatial_db] climatedb = conn[cfg.climate_db] scenariodb = None if cfg.use_scernario: scenariodb = conn[cfg.bmp_scenario_db] # import model parameters information to MongoDB status_output('Import model parameters', 10, f) ImportParam2Mongo.workflow(cfg, maindb) n_subbasins = MongoQuery.get_subbasin_num(maindb) print("Number of subbasins:%d" % n_subbasins) # Extract spatial parameters for reaches, landuse, soil, etc. status_output( 'Extract spatial parameters for reaches, landuse, soil, etc...', 20, f) extract_spatial_parameters(cfg, maindb) # import stream parameters status_output("Generating reach table with initialized parameters...", 40, f) ImportReaches2Mongo.generate_reach_table(cfg, maindb) # import raster data to MongoDB status_output("Importing raster to MongoDB....", 50, f) ImportMongodbClass.spatial_rasters(cfg, n_subbasins) # Import IUH status_output( "Generating and importing IUH (Instantaneous Unit Hydrograph)....", 60, f) ImportMongodbClass.iuh(cfg, n_subbasins) # Import grid layering data status_output("Generating and importing grid layering....", 70, f) ImportMongodbClass.grid_layering(cfg, n_subbasins) # Import hydro-climate data status_output("Import climate data....", 80, f) ImportMongodbClass.climate_data(cfg, maindb, climatedb) # Import weight and related data, this should after ImportMongodbClass.climate_data() status_output( "Generating weight data for interpolation of meteorology data " "and weight dependent parameters....", 85, f) ImportWeightData.workflow(cfg, conn) # Measurement Data, such as discharge, sediment yield. status_output( "Import observed data, such as discharge, sediment yield....", 90, f) ImportObservedData.workflow(cfg, climatedb) # Import BMP scenario database to MongoDB status_output("Importing bmp scenario....", 95, f) ImportScenario2Mongo.scenario_from_texts(cfg, maindb, scenariodb) status_output("Build DB: %s finished!" % cfg.spatial_db, 100, f) f.close() # close connection to MongoDB client.close()