All Projects → intuit → foremast-brain

intuit / foremast-brain

Licence: Apache-2.0 License
Foremast-brain is a component of Foremast project.

Programming Languages

Jupyter Notebook
11667 projects
python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to foremast-brain

reacted
Actor based reactive java framework for microservices in local and distributed environment
Stars: ✭ 17 (+0%)
Mutual labels:  distributed-systems
HeroesMatchTracker
Heroes of the Storm match tracker for personal statistics
Stars: ✭ 59 (+247.06%)
Mutual labels:  statistics
rsiena
An R package for Simulation Investigation for Empirical Network Analysis
Stars: ✭ 56 (+229.41%)
Mutual labels:  statistics
Expectations.jl
Expectation operators for Distributions.jl objects
Stars: ✭ 50 (+194.12%)
Mutual labels:  statistics
scanstatistics
An R package for space-time anomaly detection using scan statistics.
Stars: ✭ 41 (+141.18%)
Mutual labels:  statistics
dml
R package for Distance Metric Learning
Stars: ✭ 58 (+241.18%)
Mutual labels:  statistics
wrapperr
Website and API that collects Plex statistics using Tautulli and displays it. Similar to the Spotify Wrapped concept.
Stars: ✭ 93 (+447.06%)
Mutual labels:  statistics
django-celery-fulldbresult
Django Celery DB Backend that keeps enough info to retry a task.
Stars: ✭ 37 (+117.65%)
Mutual labels:  distributed-systems
fjage
Framework for Java and Groovy Agents
Stars: ✭ 19 (+11.76%)
Mutual labels:  distributed-systems
veridical-flow
Making it easier to build stable, trustworthy data-science pipelines.
Stars: ✭ 28 (+64.71%)
Mutual labels:  statistics
tics
🎢 Simple self-hosted analytics ideal for Express / React Native stacks
Stars: ✭ 22 (+29.41%)
Mutual labels:  statistics
Gauntlet
🔖 Guides, Articles, Podcasts, Videos and Notes to Build Reliable Large-Scale Distributed Systems.
Stars: ✭ 336 (+1876.47%)
Mutual labels:  distributed-systems
hmac-timing-attacks
HMAC timing attack's w/ statistical analysis
Stars: ✭ 22 (+29.41%)
Mutual labels:  statistics
asparagus
An easy to use task scheduler for distributed systems
Stars: ✭ 14 (-17.65%)
Mutual labels:  distributed-systems
vtuber-livechat-dataset
📊 VTuber 1B: Billion-scale Live Chat and Moderation Event Dataset for NLP
Stars: ✭ 30 (+76.47%)
Mutual labels:  statistics
sworm
A user-friendly distributed process registry and process supervisor
Stars: ✭ 20 (+17.65%)
Mutual labels:  distributed-systems
Algorithmic-Trading
I have been deeply interested in algorithmic trading and systematic trading algorithms. This Repository contains the code of what I have learnt on the way. It starts form some basic simple statistics and will lead up to complex machine learning algorithms.
Stars: ✭ 47 (+176.47%)
Mutual labels:  statistics
hlclock
Hybrid Logical Clocks for Elixir
Stars: ✭ 46 (+170.59%)
Mutual labels:  distributed-systems
procstat
Easy way to expose process internal state to filesystem using fuse.
Stars: ✭ 14 (-17.65%)
Mutual labels:  statistics
auklet
Auklet is a high performance storage engine based on Openstack Swift
Stars: ✭ 86 (+405.88%)
Mutual labels:  distributed-systems

Foremast Brain

Build Status Slack Chat

Foremast-brain makes health judgments of Foremast, a service health detection and canary analysis system for Kubernetes. There are two main criteria that Foremast-brain evaluates:

  1. Check if the baseline and current health metric have the same distribution pattern.
  2. Calculate the historical model and detect current metric anomalies.

Foremast-brain will make a judgment, Healthy or Unhealthy, based on the evaluation result.

Please check out the architecture and design for more details.

How to use

Overwriting default algorithm and parameters

There are multiple sets of parameters that can be overwritten.

Machine learning algorithm related parameters -- used for post-deployment use cases

  • ML_ALGORITHM -- Algorithm which you want to run. Please refer to AI_MODEL for all the supported algorithms
  • MIN_HISTORICAL_DATA_POINT_TO_MEASURE -- Minimum historical data points size
  • ML_BOUND -- Measurement is upper bound, lower bound or upper and lower bound
  • ML_THRESHOLD -- Machine learning algorithm threshold

Performance, fault-tolerant related parameters

  • MAX_STUCK_IN_SECONDS -- Max process time until another foremast-brain process will take over and reprocess
  • MAX_CACHE_SIZE -- Max cached model size

Pairwise algorithm parameters -- used for pre-deployment use cases

  • ML_PAIRWISE_ALGORITHM -- There are multiple options: ALL, ANY, MANN_WHITE, WILCOXON, KRUSKAL, etc.
  • ML_PAIRWISE_THRESHOLD -- Pairwise algorithm threshold
  • MIN_MANN_WHITE_DATA_POINTS -- Minimum data points required by Mann-Whitney U algorithm
  • MIN_WILCOXON_DATA_POINTS -- Minimum data points required by Wilcoxon algorithm
  • MIN_KRUSKAL_DATA_POINTS -- Minimum data points required by Kruskal algorithm

How to make changes:

You can add algorithm names and different parameters. Please refer foremast-brain for details.

The following is an example of ES_ENDPOINT:

env:
- name: ES_ENDPOINT
  value: "http://elasticsearch-discovery.foremast.svc.cluster.local:9200"

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

License

This project is licensed under the Apache License - see the LICENSE file for details

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].