system_design_interview/tools

tools

dz / system_design_interview / tools

Subgraphs

Node Tree

Nodes

mysql
content MySQL: open source relational database management system
children system_design_interview/toc/01_proximity_service/step2/data_model/rw_ratio (good fit for read-heavy systems)
parents system_design_interview/tools, system_design_interview/glossary/RDBMS
hyperlink https://en.wikipedia.org/wiki/MySQL
location knowledge/system_design_interview.dz:804

s2_geometry
content Google s2: a library for spherical geometry
children system_design_interview/toc/01_proximity_service/step2/algorithms/5_google_s2
hyperlink http://s2geometry.io/
location knowledge/system_design_interview.dz:849

postgres_postgis
content PostGIS
children system_design_interview/toc/01_proximity_service/step2/algorithms
hyperlink https://postgis.net/
location knowledge/system_design_interview.dz:857

redis
content Redis: Remote Dictionary Server. Redis is a versatile, in-memory key-value database storage system designed for fast data retrieval and manipulation. It's used as a cache, message broker, and database, offering low-latency operations and durability.
children system_design_interview/glossary/distributed_cache, system_design_interview/glossary/message_broker, redis/pub_sub
parents system_design_interview/tools
hyperlink https://en.wikipedia.org/wiki/Redis
flashcard (front) What is Redis?
flashcard (back) Redis is an in-memory storage system
location knowledge/system_design_interview.dz:871

cassandra
content Apache Cassandra is a highly-available, distributed NoSQL database management system that can handle large amounts of data across multiple commodity servers, supporting computer clusters in multiple data centers. It features asynchronous and masterless replication and supports low-latency operations for clients.
children system_design_interview/toc/02_nearby_friends/step2/data_model/location_history_database (Cassandra is a suitable candidate for the high write,workload.)
parents DDIA/tools/cassandra
hyperlink https://en.wikipedia.org/wiki/Apache_Cassandra
location knowledge/system_design_interview.dz:941

apache_kafka
content Apache Kafka: Apache Kafka is a distributed event store and stream-processing platform designed for handling real-time data feeds.
parents system_design_interview/tools, system_design_interview/glossary/message_queue, system_design_interview/glossary/event_streaming_platform
hyperlink https://en.wikipedia.org/wiki/Apache_Kafka
location knowledge/system_design_interview.dz:960

apache_rocket_mq
content RocketMQ is a distributed messaging and streaming platform with low latency, high performance, reliability, and scalability. It is the third-generation distributed messaging middleware open-sourced by Alibaba in 2012. The platform supports low-latency, high-performance, reliability, and flexible scalability, making it suitable for real-time data processing and high-throughput applications.
parents system_design_interview/tools, system_design_interview/glossary/message_queue
hyperlink https://en.wikipedia.org/wiki/Apache_RocketMQ
location knowledge/system_design_interview.dz:968

rabbitmq
content RabbitMQ is an open-source message-broker software that implements the Advanced Message Queuing Protocol (AMQP) and offers a plug-in architecture for support of Streaming Text Oriented Messaging Protocol (STOMP) and other protocols. Initially written in Erlang, the RabbitMQ server is built on the Open Telecom Platform framework for clustering and failover. Since November 2020, commercial offerings of RabbitMQ have been available, including support and enterprise features from VMware.
parents system_design_interview/tools, system_design_interview/glossary/message_queue
hyperlink https://en.wikipedia.org/wiki/RabbitMQ
location knowledge/system_design_interview.dz:981

apache_pulsar
content Apache Pulsar
parents system_design_interview/tools, system_design_interview/glossary/message_queue, system_design_interview/glossary/event_streaming_platform
hyperlink https://pulsar.apache.org/
location knowledge/system_design_interview.dz:996

apache_activemq
content Apache ActiveMQ is an open-source Java-based message broker that supports JMS 1.1 and provides "Enterprise Features" such as cross-client and server communication. The broker is equipped with features like computer clustering, database persistence, and journaling. Another ActiveMQ project, Artemis, is a code-named and experimental product that builds upon ActiveMQ but with a focus on scalability and reliability.
parents system_design_interview/tools, system_design_interview/glossary/message_queue
hyperlink https://en.wikipedia.org/wiki/Apache_ActiveMQ
location knowledge/system_design_interview.dz:1002

apache_zeromq
content ZeroMQ is a lightweight, asynchronous messaging library designed for use in distributed or concurrent applications. It provides a message queue without a dedicated broker, and is built on the Berkeley sockets API, making it easy to integrate with existing systems. Developed by a community-driven team led by iMatix, ZeroMQ has bindings for many programming languages and is trademarked under the name ZeroMQ.
parents system_design_interview/tools, system_design_interview/glossary/message_queue
hyperlink https://en.wikipedia.org/wiki/ZeroMQ
location knowledge/system_design_interview.dz:1016

datadog
content Datadog, Inc. is an American company that provides an observability service for cloud-scale applications, providing monitoring of servers, databases, tools, and services, through a SaaS-based data analytics platform.
parents system_design_interview/glossary/event_monitoring, system_design_interview/tools
hyperlink https://en.wikipedia.org/wiki/Datadog
location knowledge/system_design_interview.dz:1139

influxdb
content InfluxDB is an open-source time series database for storing and retrieving time series data, commonly used in operations monitoring, application metrics, IoT sensor data, and real-time analytics.
children system_design_interview/toc/05_metrics_monitoring_and_alert_system/step2/data_model/data_storage_system/time_series_database (according to dbrankings, most commonly used TSDB)
parents system_design_interview/tools, system_design_interview/glossary/event_monitoring, system_design_interview/glossary/time_series_database
hyperlink https://en.wikipedia.org/wiki/InfluxDB
location knowledge/system_design_interview.dz:1148

new_relic
content New Relic Inc. is an American software company based in San Francisco that offers cloud-based software solutions for websites and mobile apps, as well as tools for tracking user interactions and service operator software and hardware performance.
parents system_design_interview/tools, system_design_interview/glossary/event_monitoring
hyperlink https://en.wikipedia.org/wiki/New_Relic
location knowledge/system_design_interview.dz:1180

nagios
content Nagios is an event monitoring system that offers monitoring and alerting services for servers, switches, applications, and services. It alerts users when issues occur, and then alerts them when the issue has been resolved.
parents system_design_interview/tools, system_design_interview/glossary/event_monitoring
hyperlink https://en.wikipedia.org/wiki/Nagios
location knowledge/system_design_interview.dz:1190

prometheus
content Prometheus is a free, open-source software application used for event monitoring and alerting. It records metrics in a time-series database and allows for high dimensionality, with flexible queries and real-time alerting. Prometheus uses an HTTP pull model and is written in Go, licensed under the Apache 2 License, and is a graduated project of the Cloud Native Computing Foundation.
children system_design_interview/toc/05_metrics_monitoring_and_alert_system/step2/data_model/data_storage_system/time_series_database (according to db-rankings, one of the mostly commonly,used TSDB)
parents system_design_interview/glossary/event_monitoring, system_design_interview/tools, system_design_interview/glossary/time_series_database
hyperlink https://en.wikipedia.org/wiki/Prometheus_(software)
location knowledge/system_design_interview.dz:1200

munin
content Munin is a free and open-source computer system monitoring, network monitoring, and infrastructure monitoring software. It is written in Perl and uses RRDtool to create graphs, which are accessible through a web interface. Its goal is to make it easy to determine what changed today and provide visibility into capacity and utilization of resources.
parents system_design_interview/tools, system_design_interview/glossary/event_monitoring
hyperlink https://en.wikipedia.org/wiki/Munin_(software)
location knowledge/system_design_interview.dz:1214

grafana
content Grafana is a multi-platform open-source analytics and visualization web application that generates charts, graphs, and alerts for the web when connected to supported data sources.
parents system_design_interview/tools, system_design_interview/glossary/event_monitoring
location knowledge/system_design_interview.dz:1226

graphite
content Graphite is a free, open-source software tool that monitors and graphs numeric time-series data, particularly computer system performance.
parents system_design_interview/tools, system_design_interview/glossary/event_monitoring
hyperlink https://en.wikipedia.org/wiki/Graphite_(software)
location knowledge/system_design_interview.dz:1234