Monster Data Monster Data

Improve Database Visibilities through Percona Monitoring and Management (PMM)


Background

TipTip is a startup company focusing and providing services for content creators. They provide a platform for content creators to be able to interact with fans and be able to increase their income, one of which is through interaction with fans through interactive video sessions. Also, the fans can buy digital content on the platform as well.

Technology: AWS RDS for PostgreSQL

Problem Statement

One of the areas in the database management system is monitoring. It plays an important role for managing databases, especially hundreds of nodes. Open source database monitoring is extremely important for several reasons:

  • Performance Optimization: Monitoring an open source database allows you to track and analyze performance metrics in real-time. You can monitor key indicators such as CPU usage, memory utilization, disk space, and active connections. By having this information readily available, you can identify performance bottlenecks, predict traffic spikes, and take proactive measures to ensure optimal performance.

  • Issue Detection and Troubleshooting: Database monitoring helps you detect errors and issues that may arise within the database. For example, you can monitor error logs and receive notifications when problems occur, such as query errors, authentication failures, or network issues. This enables you to respond quickly and take necessary corrective actions.

  • Scalability and Capacity Planning: By monitoring an open source database, you can track resource utilization and identify growth trends. This aids in capacity planning, allowing you to predict when you might need to scale server capacity or optimize performance to avoid overloading.

  • Security: Monitoring an open source database contributes to data security. You can monitor suspicious activities, such as failed access attempts or unusual login patterns. By observing these activities, you can implement additional security measures to prevent potential security threats.

  • Monitoring in Complex Environments: In complex environments with multiple database servers, replication, or partitioning, monitoring an open source database helps you keep track of the status and health of each component. This allows you to manage and troubleshoot issues promptly on a larger scale.

One of the major advantages of using open source database monitoring is the flexibility and lower cost it offers. Open source solutions allow customization according to your specific needs and generally do not involve expensive licensing fees compared to proprietary alternatives. However, it's important to choose a well-known open source solution that is supported by an active community and offers adequate features to meet your requirements.

With effective open source database monitoring, you can enhance performance, reliability, and security of your database, as well as efficiently plan capacity and optimize resource utilization.

Currently, TipTip hosts all of their databases in the cloud environment and relies with monitoring database provided by the Provider. The metrics itself are just simple metrics to monitor CPU, Memory, Disk Utilization, Network, etc. There are no metrics related to the database such as hit ratio, tuples, deadlock, canceled transactions, etc.

Implementation

Percona Monitoring and Management (PMM) is an open source platform designed for monitoring and managing the performance of database systems. It is specifically tailored for open source databases such as MySQL, PostgreSQL, MongoDB, and MariaDB. PMM offers a wide range of features and advantages, including:
  • Real-time Monitoring: PMM provides real-time monitoring capabilities, allowing you to track the performance of your database systems and identify issues as they happen. You can monitor key metrics such as CPU usage, memory utilization, disk I/O, query response time, and more.

  • Query Analytics: PMM includes query analytics functionality, which enables you to analyze and optimize your database queries for better performance. You can identify slow queries, track query execution times, analyze query plans, and pinpoint areas for improvement.

  • Graphical Visualization: PMM offers intuitive and visually appealing dashboards and graphs to represent the performance metrics of your database systems. This makes it easier to understand and analyze the data, enabling you to quickly identify trends, anomalies, and potential bottlenecks.

  • Alerting and Notifications: PMM allows you to set up custom alerts based on predefined thresholds or specific conditions. When an alert is triggered, you can receive notifications via email, Slack, or other channels, ensuring you can respond promptly to critical events or performance issues.

  • Trend Analysis and Capacity Planning: PMM provides historical data and trend analysis capabilities, allowing you to track the performance of your database systems over time. This data helps you make informed decisions for capacity planning, scaling, and resource allocation.

  • Query and Host Summary: PMM provides detailed information about query execution and host-level statistics. You can analyze individual queries, their performance, and resource utilization. Additionally, you can gain insights into the overall health and performance of your database hosts.

  • Integration with Prominent Tools: PMM seamlessly integrates with other widely used open source monitoring tools such as Prometheus and Grafana. This allows you to leverage additional monitoring capabilities and enhance your monitoring infrastructure.

  • Open Source and Community Support: PMM is an open source project supported by Percona, a well-established company in the open source database community. The open source nature ensures transparency, flexibility, and a vibrant community of contributors, providing ongoing development, support, and improvement.

Overall, Percona Monitoring and Management offers a comprehensive set of features and advantages for monitoring and managing open source databases. It empowers database administrators and DevOps teams to effectively monitor, analyze, optimize, and troubleshoot their database environments, ultimately leading to improved performance and efficiency.

Monsterdata implements Percona Monitoring and Management for the TipTip database environment. There are around 53 nodes database that are monitored in PMM.



All the nodes are running PostgreSQL instances both in staging and production. Not only for monitoring, it’s also used for Query Analysis and Alerting as well.



"It is really important to have a monitoring database so we know what’s going on inside the database."


Thank you