This project offers a powerful foundation to build, update, and compare segments.

The current implementation of the solution does not support very large datasets (over tens of millions of records). It might fail due to an out-of-memory error, or the web app will be very slow. To have a smoother experience, starting the analysis on a sample of data is preferable.
This solution uses the k-means clustering method for machine learning segmentation and applies rule-based segmentation using normalization of features and deviation into discrete intervals. Both segmentation methods can be extended with other techniques, such as DBSCAN, hierarchical clustering, and others for machine learning, as well as other rules and thresholds for rule-based segmentation. The code can be modified during solution implementation to meet other user preferences.