|
def | __init__ (self, ApdbSqlConfig config) |
|
Dict[str, int] | tableRowCount (self) |
|
Optional[TableDef] | tableDef (self, ApdbTables table) |
|
None | makeSchema (self, bool drop=False) |
|
pandas.DataFrame | getDiaObjects (self, Region region) |
|
Optional[pandas.DataFrame] | getDiaSources (self, Region region, Optional[Iterable[int]] object_ids, dafBase.DateTime visit_time) |
|
Optional[pandas.DataFrame] | getDiaForcedSources (self, Region region, Optional[Iterable[int]] object_ids, dafBase.DateTime visit_time) |
|
pandas.DataFrame | getDiaObjectsHistory (self, dafBase.DateTime start_time, Optional[dafBase.DateTime] end_time=None, Optional[Region] region=None) |
|
pandas.DataFrame | getDiaSourcesHistory (self, dafBase.DateTime start_time, Optional[dafBase.DateTime] end_time=None, Optional[Region] region=None) |
|
pandas.DataFrame | getDiaForcedSourcesHistory (self, dafBase.DateTime start_time, Optional[dafBase.DateTime] end_time=None, Optional[Region] region=None) |
|
pandas.DataFrame | getSSObjects (self) |
|
None | store (self, dafBase.DateTime visit_time, pandas.DataFrame objects, Optional[pandas.DataFrame] sources=None, Optional[pandas.DataFrame] forced_sources=None) |
|
None | storeSSObjects (self, pandas.DataFrame objects) |
|
None | reassignDiaSources (self, Mapping[int, int] idMap) |
|
None | dailyJob (self) |
|
int | countUnassociatedObjects (self) |
|
ConfigurableField | makeField (cls, str doc) |
|
Implementation of APDB interface based on SQL database.
The implementation is configured via standard ``pex_config`` mechanism
using `ApdbSqlConfig` configuration class. For an example of different
configurations check ``config/`` folder.
Parameters
----------
config : `ApdbSqlConfig`
Configuration object.
Optional[pandas.DataFrame] lsst.dax.apdb.apdbSql.ApdbSql.getDiaForcedSources |
( |
|
self, |
|
|
Region |
region, |
|
|
Optional[Iterable[int]] |
object_ids, |
|
|
dafBase.DateTime |
visit_time |
|
) |
| |
Return catalog of DiaForcedSource instances from a given region.
Parameters
----------
region : `lsst.sphgeom.Region`
Region to search for DIASources.
object_ids : iterable [ `int` ], optional
List of DiaObject IDs to further constrain the set of returned
sources. If list is empty then empty catalog is returned with a
correct schema.
visit_time : `lsst.daf.base.DateTime`
Time of the current visit.
Returns
-------
catalog : `pandas.DataFrame`, or `None`
Catalog containing DiaSource records. `None` is returned if
``read_sources_months`` configuration parameter is set to 0.
Raises
------
NotImplementedError
Raised if ``object_ids`` is `None`.
Notes
-----
Even though base class allows `None` to be passed for ``object_ids``,
this class requires ``object_ids`` to be not-`None`.
`NotImplementedError` is raised if `None` is passed.
This method returns DiaForcedSource catalog for a region with additional
filtering based on DiaObject IDs. Only a subset of DiaSource history
is returned limited by ``read_forced_sources_months`` config parameter,
w.r.t. ``visit_time``. If ``object_ids`` is empty then an empty catalog
is always returned with a correct schema (columns/types).
Reimplemented from lsst.dax.apdb.apdb.Apdb.
pandas.DataFrame lsst.dax.apdb.apdbSql.ApdbSql.getDiaForcedSourcesHistory |
( |
|
self, |
|
|
dafBase.DateTime |
start_time, |
|
|
Optional[dafBase.DateTime] |
end_time = None , |
|
|
Optional[Region] |
region = None |
|
) |
| |
Returns catalog of DiaForcedSource instances from a given time
period.
Parameters
----------
start_time : `dafBase.DateTime`
Starting time for DiaForcedSource history search. DiaForcedSource
record is selected when its ``midPointTai`` falls into an interval
between ``start__time`` (inclusive) and ``end_time`` (exclusive).
end_time : `dafBase.DateTime`
Upper limit on time for DiaForcedSource history search, if not
specified then there is no restriction on upper limit.
region : `lsst.sphgeom.Region`, optional
Region to search for DiaForcedSources, if not specified then whole
sky is searched. If region is specified then some returned records
may fall outside of this region.
Returns
-------
catalog : `pandas.DataFrame`
Catalog containing DiaObject records.
Notes
-----
This part of API may not be very stable and can change before the
implementation finalizes.
Reimplemented from lsst.dax.apdb.apdb.Apdb.
pandas.DataFrame lsst.dax.apdb.apdbSql.ApdbSql.getDiaObjectsHistory |
( |
|
self, |
|
|
dafBase.DateTime |
start_time, |
|
|
Optional[dafBase.DateTime] |
end_time = None , |
|
|
Optional[Region] |
region = None |
|
) |
| |
Returns catalog of DiaObject instances from a given time period
including the history of each DiaObject.
Parameters
----------
start_time : `dafBase.DateTime`
Starting time for DiaObject history search. DiaObject record is
selected when its ``validityStart`` falls into an interval
between ``start__time`` (inclusive) and ``end_time`` (exclusive).
end_time : `dafBase.DateTime`, optional
Upper limit on time for DiaObject history search, if not specified
then there is no restriction on upper limit.
region : `lsst.sphgeom.Region`, optional
Region to search for DiaObjects, if not specified then whole sky
is searched. If region is specified then some returned records may
fall outside of this region.
Returns
-------
catalog : `pandas.DataFrame`
Catalog containing DiaObject records.
Notes
-----
This part of API may not be very stable and can change before the
implementation finalizes.
Reimplemented from lsst.dax.apdb.apdb.Apdb.
Optional[pandas.DataFrame] lsst.dax.apdb.apdbSql.ApdbSql.getDiaSources |
( |
|
self, |
|
|
Region |
region, |
|
|
Optional[Iterable[int]] |
object_ids, |
|
|
dafBase.DateTime |
visit_time |
|
) |
| |
Return catalog of DiaSource instances from a given region.
Parameters
----------
region : `lsst.sphgeom.Region`
Region to search for DIASources.
object_ids : iterable [ `int` ], optional
List of DiaObject IDs to further constrain the set of returned
sources. If `None` then returned sources are not constrained. If
list is empty then empty catalog is returned with a correct
schema.
visit_time : `lsst.daf.base.DateTime`
Time of the current visit.
Returns
-------
catalog : `pandas.DataFrame`, or `None`
Catalog containing DiaSource records. `None` is returned if
``read_sources_months`` configuration parameter is set to 0.
Notes
-----
This method returns DiaSource catalog for a region with additional
filtering based on DiaObject IDs. Only a subset of DiaSource history
is returned limited by ``read_sources_months`` config parameter, w.r.t.
``visit_time``. If ``object_ids`` is empty then an empty catalog is
always returned with the correct schema (columns/types). If
``object_ids`` is `None` then no filtering is performed and some of the
returned records may be outside the specified region.
Reimplemented from lsst.dax.apdb.apdb.Apdb.
None lsst.dax.apdb.apdbSql.ApdbSql.store |
( |
|
self, |
|
|
dafBase.DateTime |
visit_time, |
|
|
pandas.DataFrame |
objects, |
|
|
Optional[pandas.DataFrame] |
sources = None , |
|
|
Optional[pandas.DataFrame] |
forced_sources = None |
|
) |
| |
Store all three types of catalogs in the database.
Parameters
----------
visit_time : `lsst.daf.base.DateTime`
Time of the visit.
objects : `pandas.DataFrame`
Catalog with DiaObject records.
sources : `pandas.DataFrame`, optional
Catalog with DiaSource records.
forced_sources : `pandas.DataFrame`, optional
Catalog with DiaForcedSource records.
Notes
-----
This methods takes DataFrame catalogs, their schema must be
compatible with the schema of APDB table:
- column names must correspond to database table columns
- types and units of the columns must match database definitions,
no unit conversion is performed presently
- columns that have default values in database schema can be
omitted from catalog
- this method knows how to fill interval-related columns of DiaObject
(validityStart, validityEnd) they do not need to appear in a
catalog
- source catalogs have ``diaObjectId`` column associating sources
with objects
Reimplemented from lsst.dax.apdb.apdb.Apdb.