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.