def ingest(filename): with GdalFileHelper(filename) as gfh: #modis hdf file consists of subdatasets band_info = gfh.get_band_info(meta=settings["bands"]["meta"], band_num=0) nc_vars = gfh.get_nc_vars(["Ht"]) heights = nc_vars["Ht"] for band_num in settings["bands"]["numbers"]: ras = GDALRaster(filename, settings["srid"]["in"]) ras.set_band_num(band_num["number"]) variable_name = band_num["name"] ras.nodata_value = -9999 level = int(numpy.asscalar(heights[band_num["number"]])) start_time = band_info["start_time"] end_time = start_time + timedelta( seconds=settings["time_interval_seconds"]) with SqaAccess(conn_str=config.sqa_connection_string()) as sqa: i = 0 mask = sqa.one(Mask, filterr={"name": "alabama"}) dg = upsert_datagranule(sqa, config, provider_name=settings["provider"]["name"], variable_name=variable_name, format_name=settings["format"], level=level, extent=ras.extent_ewkt(), srid=settings["srid"]["in"], start_time=start_time, end_time=end_time, grib_file_name=filename, overwrite_existing_datagranule=True, name_suffix="ext_%d" % i) if dg: block_size = 50, 50 #sqa, config, datagranule, ras, srid_in, srid_out, block_size, mask=None insert_raster(sqa, config=config, datagranule=dg, ras=ras, srid_in=settings["srid"]["in"], srid_out=settings["srid"]["out"], block_size=block_size, mask=mask)
def ingest(filenames): for filename in filenames: for variable_name in settings["sds"]: with GdalFileHelper(filename) as gfh: #modis hdf file consists of subdatasets dsn = gfh.get_sds(settings["sds"][variable_name]) band_info = gfh.get_band_info(meta=settings["bands"]["meta"], band_num=0) ras = GDALRaster(dsn, settings["srid"]["in"]) with SqaAccess(conn_str=config.sqa_connection_string()) as sqa: mask = sqa.one(Mask, filterr={"name": "india"}) #mask = sqa.one(Mask, filterr={"name": "bareilly"}) dg = upsert_datagranule(sqa, config, provider_name=settings["provider"]["name"], variable_name=variable_name, format_name=settings["format"], level=band_info["level"], extent=ras.extent_ewkt(), srid=settings["srid"]["in"], start_time=band_info["start_time"], end_time=band_info["end_time"], grib_file_name=filename, overwrite_existing_datagranule=True) if dg: block_size = 50, 50 insert_raster(sqa, config=config, datagranule=dg, ras=ras, srid_in=settings["srid"]["in"], srid_out=settings["srid"]["out"], block_size=block_size, mask=mask)
def ingest(filenames): for filename in filenames: for band in settings["data"]["bands"]: ras = GDALRaster(filename, settings["srid_in"]) ras.set_band_num(band["number"]) ras.nodata_value = -9999 variable_name = band["name"] level = 0 start_time = datetime(year=2010, month=1, day=1) end_time = datetime(year=2020, month=1, day=1) with SqaAccess(conn_str=config.sqa_connection_string()) as sqa: i = 0 mask = sqa.one(Mask, filterr={"name": "alabama"}) dg = upsert_datagranule( sqa, config, provider_name=settings["provider_name"], variable_name=variable_name, format_name=settings["format"], level=level, extent=ras.extent_ewkt(), srid=settings["srid_in"], start_time=start_time, end_time=end_time, grib_file_name=filename, overwrite_existing_datagranule=True, name_suffix="ext_%d" % i) if dg: block_size = 50, 50 insert_raster(sqa, config=config, datagranule=dg, ras=ras, settings=settings, block_size=block_size, mask=mask)