lomas_server package

Subpackages

Submodules

lomas_server.app module

lomas_server.constants module

class lomas_server.constants.AdminDBType(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: StrEnum

Types of administration databases

MONGODB: str = 'mongodb'
YAML: str = 'yaml'
class lomas_server.constants.ConfigKeys(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: StrEnum

Keys of the configuration file

DATASET_STORE: str = 'dataset_store'
DATASET_STORE_TYPE: str = 'ds_store_type'
DB: str = 'admin_database'
DB_TYPE: str = 'db_type'
DB_TYPE_MONGODB: str = 'mongodb'
DEVELOP_MODE: str = 'develop_mode'
DP_LIBRARY: str = 'dp_libraries'
LRU_DATASET_STORE_MAX_SIZE: str = 'max_memory_usage'
MONGODB_ADDR: str = 'address'
MONGODB_PORT: str = 'port'
RUNTIME_ARGS: str = 'runtime_args'
SERVER: str = 'server'
SETTINGS: str = 'settings'
SUBMIT_LIMIT: str = 'submit_limit'
TIME_ATTACK: str = 'time_attack'
class lomas_server.constants.DPLibraries(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: StrEnum

Name of DP Library used in the query

DIFFPRIVLIB = 'diffprivlib'
OPENDP = 'opendp'
SMARTNOISE_SQL = 'smartnoise_sql'
SMARTNOISE_SYNTH = 'smartnoise_synth'
class lomas_server.constants.DatasetStoreType(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: StrEnum

Types of classes to handle datasets in memory

BASIC: str = 'basic'
LRU: str = 'LRU_cache'
class lomas_server.constants.OpenDPDatasetInputMetric(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: StrEnum

Type of opendp input metric for datasets see https://docs.opendp.org/en/stable/api/python/opendp.metrics.html see https://github.com/opendp/opendp/blob/main/rust/src/metrics/mod.rs

CHANGE_ONE_DISTANCE = 'ChangeOneDistance'
HAMMING_DISTANCE = 'HammingDistance'
INSERT_DELETE_DISTANCE = 'InsertDeleteDistance'
INT_DISTANCE = 'u32'
SYMMETRIC_DISTANCE = 'SymmetricDistance'
class lomas_server.constants.OpenDPMeasurement(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: StrEnum

Type of divergence for opendp measurement see https://docs.opendp.org/en/stable/api/python/opendp.measurements.html

FIXED_SMOOTHED_MAX_DIVERGENCE = 'fixed_smoothed_max_divergence'
MAX_DIVERGENCE = 'max_divergence'
SMOOTHED_MAX_DIVERGENCE = 'smoothed_max_divergence'
ZERO_CONCENTRATED_DIVERGENCE = 'zero_concentrated_divergence'
class lomas_server.constants.PrivateDatabaseType(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: StrEnum

Type of Private Database for the private data

PATH = 'PATH_DB'
S3 = 'S3_DB'
class lomas_server.constants.SSynthColumnType(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: StrEnum

Type of columns for SmartnoiseSynth transformer pre-processing

CATEGORICAL = 'categorical'
CONTINUOUS = 'continuous'
DATETIME = 'datetime'
PRIVATE_ID = 'private_id'
class lomas_server.constants.SSynthGanSynthesizer(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: StrEnum

GAN Synthesizer models for smartnoise synth

DP_CTGAN = 'dpctgan'
DP_GAN = 'dpgan'
PATE_CTGAN = 'patectgan'
PATE_GAN = 'pategan'
class lomas_server.constants.SSynthMarginalSynthesizer(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: StrEnum

Marginal Synthesizer models for smartnoise synth

AIM = 'aim'
MST = 'mst'
MWEM = 'mwem'
PAC_SYNTH = 'pacsynth'
class lomas_server.constants.SSynthTableTransStyle(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: StrEnum

Transformer style for smartnoise synth

CUBE = 'cube'
GAN = 'gan'
class lomas_server.constants.TimeAttackMethod(value, names=<not given>, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: StrEnum

Possible methods against timing attacks

JITTER = 'jitter'
STALL = 'stall'

lomas_server.mongodb_admin module

lomas_server.mongodb_admin_cli module

lomas_server.uvicorn_serve module

Module contents