ConnectorFactory et AbstractConnector

Module : factonics_utils.connect.

ConnectorFactory

from factonics_utils.connect import ConnectorFactory

factory = ConnectorFactory()
connector = factory.get_connector("snowflake", credentials_dict)
df = connector.extract_data(end_scope, p_limit=1000)
connector.load_data(end_scope, df, p_if_exists="append")
connector.disconnect()

get_connector_params("snowflake") affiche le schéma Voluptuous enregistré.

Types enregistrés (24 clés API, 23 en factory)

sftp, mongodb, postgresql, s3, snowflake, mysql, openai, sharepoint, sharepoint_graph, bedrock, ollama, anthropic, qwen, gemini, azureopenai, quantalys, bloomberg, notion, salesforce, dynamics, dealroom, dataiku, anaplan.

litellm est enregistrable via l’API mais absent de la factory — runtime factonics-ml.

AbstractConnector

Méthodes : connect, disconnect, extract_data, load_data, get_data.

Le décorateur @with_connection ouvre/ferme la connexion autour des opérations I/O.

Import paresseux

factonics_utils.connect utilise PEP 562 pour éviter le chargement massif des extensions natives (Snowflake, MySQL…) au démarrage.

Schémas

factonics_utils/connect/config/objects/connectors/schema.py — validation credentials et end_scope via Voluptuous.

Avertissement

Certains connecteurs (Snowflake, SharePoint Graph) acceptent des paramètres au-delà du schéma minimal. Voir la fiche par subType.

Voir aussi