sda.dashboard.pipeline#
Data Pipeline Framework for SDA Dashboard.
This module implements a simplified, efficient pipeline architecture using Flask-Caching:
Load (& validate) → 2. Filter columns → 3. Filter rows → 4. Plot
The Flask-Caching Pipeline provides: - Automatic memoization of pipeline stages - Native Flask/Dash integration - Easy cache invalidation - Production-ready scaling (Redis support) - Elimination of callback loops through proper caching
Submodules#
Classes#
Flask-caching based pipeline for SDA Dashboard. |
Package Contents#
- class sda.dashboard.pipeline.FlaskCachePipeline(app, verbose=False)#
Flask-caching based pipeline for SDA Dashboard.
- verbose = False#
- error_handler#
- cache#
- load_data(test_name)#
Load and validate test data (cached).
- select_columns(test_name, user_selection=None)#
Apply column selection logic (cached).
- configure_filters(test_name, user_selection=None)#
Configure filters for selected columns (cached).
- apply_filters(test_name, user_selection=None, applied_filters=None)#
Apply row filters to data (cached).
Filter logic: Start with everything, remove what we don’t want. - filter_value contains the SELECTED values (what user wants to keep) - We exclude the UNSELECTED values (all options minus selected values) - User interaction: unselect values to remove them from view
- create_plot(test_name, user_selection=None, applied_filters=None, plot_config=None)#
Create plot from filtered data (cached).
- clear_cache(test_name=None)#
Clear cache for specific test or all cache.
- get_cache_stats()#
Get cache statistics.