Scalegrid

Best Practice for Creating Indexes on your MySQL Tables

Scalegrid

By having appropriate indexes on your MySQL tables, you can greatly enhance the performance of SELECT queries. But, did you know that adding indexes to your tables in itself is an expensive operation, and may take a long time to complete depending on the size of your tables?

Important Health Checks for your MySQL Master-Slave Servers

Scalegrid

In a MySQL master-slave high availability (HA) setup, it is important to continuously monitor the health of the master and slave servers so you can detect potential issues and take corrective actions. In this blog post, we explain some basic health checks you can do on your MySQL master and slave nodes to ensure your setup is healthy.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Managing High Availability in PostgreSQL – Part III: Patroni

Scalegrid

In our previous blog posts, we discussed the capabilities and functioning of PostgreSQL Automatic Failover (PAF) by Cluster Labs and Replication Manager (repmgr) by 2ndQuadrant. In the final post of this series, we will review the last solution, Patroni by Zalando, and compare all three at the end so you can determine which high availability framework is best for your PostgreSQL hosting deployment. Managing High Availability in PostgreSQL – Part I: PostgreSQL Automatic Failover.

2019 Database Trends – SQL vs. NoSQL, Top Databases, Single vs. Multiple Database Use

Scalegrid

Wondering which databases are trending in 2019?

The Best Way to Host MongoDB on DigitalOcean

Scalegrid

MongoDB is the #3 open source database and the #1 NoSQL database in the world. It’s a cross-platform document-oriented database that uses JSON-like documents with schema, and is leveraged broadly across startup apps up to enterprise-level businesses developing modern apps.

PostgreSQL Connection Pooling: Part 2 – PgBouncer

Scalegrid

When it comes to connection pooling in the PostgreSQL world, PgBouncer is probably the most popular option. It’s a very simple utility that does exactly one thing – it sits between the database and the clients and speaks the PostgreSQL protocol, emulating a PostgreSQL server.

Cache 136

ScyllaDB Trends – How Users Deploy The Real-Time Big Data Database

Scalegrid

ScyllaDB is an open-source distributed NoSQL data store, reimplemented from the popular Apache Cassandra database. Released just four years ago in 2015, Scylla has averaged over 220% year-over-year growth in popularity according to DB-Engines. We’ve heard a lot about this rising database from the DBA community and our users, and decided to become a sponsor for this years Scylla Summit to learn more about the deployment trends from its users.

2019 PostgreSQL Trends Report: Private vs. Public Cloud, Migrations, Database Combinations & Top Reasons Used

Scalegrid

PostgreSQL is an open source relational database system that has soared in popularity over the past 30 years from its active, loyal, and growing community.

Making it Easier to Manage a Production PostgreSQL Database

Scalegrid

The past several years have seen increasing adoption for PostgreSQL. PostgreSQL is an amazing relational database. Feature-wise, it is up there with the best, if not the best. There are many things I love about it – PL/ PG SQL, smart defaults, replication (that actually works out of the box), and an active and vibrant open source community. However, beyond just the features, there are other important aspects of a database that need to be considered.

Which Is the Best PostgreSQL GUI? 2019 Comparison

Scalegrid

PostgreSQL graphical user interface (GUI) tools help these open source database users to manage, manipulate, and visualize their data. In this post, we discuss the top 5 GUI tools for administering your PostgreSQL deployments.

Managing MySQL Server Logs: Rotate, Compress, Retain & Delete

Scalegrid

MySQL Server generates several logs that can help you monitor the activities of the server. However, once these logs are enabled, they can grow in size and start taking up too much disk space. This is why it’s important to have an automated way of archiving and preserving MySQL log files for a certain duration, as well as deleting the old ones.

How to Improve MySQL AWS Performance 2X Over Amazon RDS at The Same Cost

Scalegrid

AWS is the #1 cloud provider for open-source database hosting, and the go-to cloud for MySQL deployments. As organizations continue to migrate to the cloud, it’s important to get in front of performance issues, such as high latency, low throughput, and replication lag with higher distances between your users and cloud infrastructure.

AWS 134

PostgreSQL Connection Pooling: Part 1 – Pros & Cons

Scalegrid

A long time ago, in a galaxy far far away, ‘threads’ were a programming novelty rarely used and seldom trusted. In that environment, the first PostgreSQL developers decided forking a process for each connection to the database is the safest choice.

The Best Way to Host MySQL on Azure Cloud

Scalegrid

Are you looking to get started with the world’s most popular open-source database, and wondering how you should setup your MySQL hosting ? So many default to Amazon RDS, when MySQL performs exceptionally well on Azure Cloud. While Microsoft Azure does offer a managed solution, Azure Database, the solution has some major limitations you should know about before migrating your MySQL deployments.

Azure 155

Follower Clusters – 3 Major Use Cases for Syncing SQL & NoSQL Deployments

Scalegrid

Follower clusters are a ScaleGrid feature that allows you to keep two independent database systems (of the same type) in sync. Unlike cloning or replication, this allows you to maintain an active, point-in-time copy of your production data. This extra cluster, known as a follower cluster, can be leveraged for multiple use cases, including for analyzing, optimizing and testing your application performance for MongoDB , MySQL and PostgreSQL.

Top Redis Use Cases by Core Data Structure Types

Scalegrid

Redis , short for Remote Dictionary Server, is a BSD-licensed, open-source in-memory key-value data structure store written in C language by Salvatore Sanfillipo and was first released on May 10, 2009. Depending on how it is configured, Redis can act like a database, a cache or a message broker. It’s important to note that Redis is a NoSQL database system.

PostgreSQL Trends: Most Popular Cloud Providers, Languages, VACUUM, Query Management Strategies & Deployment Types in Enterprise

Scalegrid

PostgreSQL popularity is skyrocketing in the enterprise space. As this open source database continues to pull new users from expensive commercial database management systems like Oracle, DB2 and SQL Server, organizations are adopting new approaches and evolving their own to maintain the exceptional performance of their SQL deployments. We recently attended the PostgresConf event in San Jose to hear from the most active PostgreSQL user base on their database management strategies.

Cloud 132

How to Monitor MySQL Deployments with Prometheus & Grafana at ScaleGrid

Scalegrid

Monitoring your MySQL database performance in real-time helps you immediately identify problems and other factors that could be causing issues now or in the future. It’s also a good way to determine which components of the database can be enhanced or optimized to increase your efficiency and performance. This is usually done through monitoring software and tools either built-in to the database management software or installed from third-party providers.

Re-Slaving a Crashed MySQL Master Server in Semisynchronous Replication Setup

Scalegrid

In a MySQL 5.7 master-slave setup that uses the default semisynchronous replication setting for rpl_semi_sync_master_wait_point , a crash of the master and failover to the slave is considered to be lossless. However, when the crashed master comes back, you may find that it has transactions that are not present in the current master (which was previously a slave).

How To Connect To Your MongoDB Deployments Using Robo 3T GUI

Scalegrid

Robo 3T (formerly Robomongo) is a popular desktop graphical user interface (GUI) for your MongoDB hosting deployments that allows you to interact with your data through visual indicators instead of a text-based interface.

Fully Managed PostgreSQL Hosting on AWS and Azure Launches in Time For Legacy Migrations

Scalegrid

PALO ALTO, Calif., July 17, 2019 – ScaleGrid, a leader in the Database-as-a-Service (DBaaS) space, has just announced support for PostgreSQL hosting in the cloud. The fully managed platform allows organizations to automate their time-consuming PostgreSQL operations, focus on database development, and optimize performance with advanced monitoring, high availability, and disaster recovery on AWS and Azure.

Azure 131

How to Setup a WordPress MySQL Database in the Cloud

Scalegrid

WordPress is the largest website builder platform in the world, supporting over 34% of all websites on the internet today. MySQL is a free open source relational database management system that is leveraged across a majority of WordPress sites, and allows you to query your data such as posts, pages, images, user profiles, and more.

MySQL Tutorial – Understanding The Seconds Behind Master Value

Scalegrid

In a MySQL hosting replication setup, the parameter Seconds_Behind_Master (SBM), as displayed by the SHOW SLAVE STATUS command, is commonly used as an indication of the current replication lag of the slave. In this blog post, we examine how to understand and interpret this value in various situations. Possible Values of Seconds Behind Master.

Speed 134

Intro to Redis Cluster Sharding – Advantages, Limitations, Deploying & Client Connections

Scalegrid

Redis Cluster is the native sharding implementation available within Redis that allows you to automatically distribute your data across multiple nodes without having to rely on external tools and utilities.

ScaleGrid Fully Managed Hosting for Redis™ Now Available on Azure

Scalegrid

PALO ALTO, Calif., October 2, 2019 – ScaleGrid, a rapidly growing leader in the Database-as-a-Service (DBaaS) space, has just launched their new fully managed Hosting on Azure for Redis™ service. This management solution for Redis™ allows startups up to enterprise-level organizations automate their Redis™ operations on Microsoft Azure dedicated cloud servers, alongside their other open source database deployments, including MongoDB , MySQL and PostgreSQL.

Azure 100

Managing High Availability in PostgreSQL – Part II

Scalegrid

Are you deploying PostgreSQL in the cloud and want to understand your options for achieving high availability? In our previous blog post, Managing High Availability in PostgreSQL – Part I , we discussed the capabilities and functioning of PostgreSQL Automatic Failover (PAF) by ClusterLabs.

Connecting MongoDB to Ruby with Self-Signed Certificates for SSL

Scalegrid

Given the popularity of our post on connecting MongoDB SSL with Self-Signed Certificates in Node.js , we decided to write a tutorial on connecting MongoDB with Ruby. In this blog, we’ll show you how to connect to a MongoDB server configured with self-signed certificates for SSL using both the Ruby MongoDB driver and the popular Object-Document-Mapper (ODM) mongoid. ScaleGrid currently uses self-signed certificates for SSL when creating nodes for a new cluster.

C++ 100

Installing WordPress 5 on ZEIT Now with MySQL Hosting

Scalegrid

Want to deploy WordPress 5.0 on the Now platform by ZEIT ? Our friends over at ZEIT’s Now global serverless deployment platform whipped up a great tutorial for WordPress5-on-Now using cheap MySQL hosting instances from ScaleGrid. With such strong interest in this installation, we decided to write up the steps to configure your MySQL database on the ScaleGrid side to get you up and running ever faster with WordPress on Now. Leave your comments: [link]. now/wordpress summary: ? ?

MySQL High Availability Framework Explained – Part II: Semisynchronous Replication

Scalegrid

In Part I , we introduced a High Availability (HA) framework for MySQL hosting and discussed various components and their functionality. Now in Part II, we will discuss the details of MySQL semisynchronous replication and the related configuration settings that help us ensure redundancy and consistency of the data in our HA setup.

Highly Available Redis Clusters with Automated Sharding Launches at ScaleGrid

Scalegrid

PALO ALTO, Calif., January 24, 2019 – ScaleGrid , a rising leader in the Database-as-a-Service (DBaaS) space, has just announced support for Redis Clusters on their fully managed Redis hosting plans. Redis Cluster is the native sharding implementation available within Redis, an open-source in-memory data structure project, that allows you to automatically shard across multiple Redis nodes without having to rely on external tools and utilities.

Which is the Best MongoDB GUI? — 2019 Update

Scalegrid

A good UI is an important part of the development experience. The MongoDB Shell works great for administrative actions, but when working with larger amounts of data, the UI becomes fairly important.

2019 Open Source Database Report: Top Databases, Public Cloud vs. On-Premise, Polyglot Persistence

Scalegrid

Ready to transition from a commercial database to open source, and want to know which databases are most popular in 2019? Wondering whether an on-premise vs. public cloud vs. hybrid cloud infrastructure is best for your database strategy? Or, considering adding a new database to your application and want to see which combinations are most popular?

PyMongo Tutorial: Testing MongoDB Failover in Your Python App

Scalegrid

Python is a powerful and flexible programming language used by millions of developers around the world to build their applications. It comes as no surprise that Python developers commonly leverage MongoDB hosting , the most popular NoSQL database , for their deployments due to its flexible nature and lack of schema requirements. So, what’s the best way to use MongoDB with Python?

C++ 40

Redis Cloud Gets Easier with Fully Managed Hosting on Azure

Scalegrid

PALO ALTO, Calif., October 2, 2019 – ScaleGrid, a rapidly growing leader in the Database-as-a-Service (DBaaS) space, has just launched their new fully managed Redis on Azure service. This Redis management solution allows startups up to enterprise-level organizations automate their Redis operations on Microsoft Azure dedicated cloud servers, alongside their other open source database deployments, including MongoDB , MySQL and PostgreSQL.

Azure 27

MySQL High Availability Framework Explained – Part III: Failure Scenarios

Scalegrid

In this three-part blog series, we introduced a High Availability (HA) Framework for MySQL hosting in Part I, and discussed the details of MySQL semisynchronous replication in Part II. Now in Part III, we review how the framework handles some of the important MySQL failure scenarios and recovers to ensure high availability. MySQL Failure Scenarios. Scenario 1 – Master MySQL Goes Down. The Corosync and Pacemaker framework detects that the master MySQL is no longer available.

What’s the Best PostgreSQL High Availability Framework? PAF vs. repmgr vs. Patroni Infographic

Scalegrid

Wondering which high availability framework to use for your PostgreSQL deployments ? We compared the top 3 frameworks, PostgreSQL Automatic Failover (PAF) vs. Replication Manager (repmgr) vs. Patroni , in our Managing High Availability in PostgreSQL series.

Beam-Up Load Balancing: The Portable Next Generation App Experience

DZone

We’ve seen many of the technological advances described in the Star Trek milieu become reality over the last 50 years, from personal communication devices and instant translators to GMOs, medical robots, 3D printing and weapons that stun. But, ah yes, the matter transporter.

Time to First Byte: What It Is and Why It Matters

CSS Wizardry

I’m working on a client project at the moment and, as they’re an ecommerce site, there are a lot of facets of performance I’m keen to look into for them: load times are a good start, start render is key for customers who want to see information quickly (hint: that’s all of them), and client-specific metrics like how quickly did the key product image load? can all provide valuable insights. However, one metric I feel that front-end developers overlook all too quickly is Time to First Byte (TTFB). This is understandable—forgivable, almost—when you consider that TTFB begins to move into back-end territory, but if I was to sum up the problem as succinctly as possible, I’d say: While a good TTFB doesn’t necessarily mean you will have a fast website, a bad TTFB almost certainly guarantees a slow one. Even though, as a front-end developer, you might not be in the position to make improvements to TTFB yourself, it’s important to know that any problems with a high TTFB will leave you on the back foot, and any efforts you make to optimises images, clear the critical path, and asynchronously load your webfonts will all be made in the spirit of playing catchup. That’s not to say that more front-end oriented optimisations should be forgone, but there is, unfortunately, an air of closing the stable door after the horse has bolted. You really want to squish those TTFB bugs as soon as you can. What is TTFB? The TTFB timing entry isn’t particularly insightful. View full size/quality (375KB). TTFB is a little opaque to say the least. It comprises so many different things that I often think we tend to just gloss over it. A lot of people surmise that TTFB is merely time spent on the server, but that is only a small fraction of the true extent of things. The first—and often most surprising for people to learn—thing that I want to draw your attention to is that TTFB counts one whole round trip of latency. TTFB isn’t just time spent on the server, it is also the time spent getting from our device to the sever and back again (carrying, that’s right, the first byte of data!). Armed with this knowledge, we can soon understand why TTFB can often increase so dramatically on mobile. Surely, you’ve wondered before, the server has no idea that I’m on a mobile device—how can it be increasing its TTFB?! The reason is because mobile networks are, as a rule, high latency connections. If your Round Trip Time (RTT) from your phone to a server and back again is, say, 250ms, you’ll immediately see a corresponding increase in TTFB. If there is one key thing I’m keen for your to take from this post, its is that TTFB is affected by latency. But what else is TTFB? Strap yourself in; here is a non-exhaustive list presented in no particular order: Latency: As above, we’re counting a trip out to and a return trip from the server. A trip from a device in London to a server in New York has a theoretical best-case speed of 28ms over fibre, but this makes lots of very optimistic assumptions. Expect closer to 75ms. This is why serving your content from a CDN is so important: even in the internet age, being geographically closer to your customers is advantageous. Routing: If you are using a CDN—and you should be!—a customer in Leeds might get routed to the MAN datacentre. only to find that the resource they’re requesting isn’t in that PoP ’s cache. Accordingly, they’ll get routed all the way back to your origin server to retrieve it from there. If your origin is in, say, Virginia, that’s going to be a large and invisible increase in TTFB. Filesystem reads: The server simply reading static files such as images or sylesheets from the filesystem has a cost. It all gets added to your TTFB. Prioritisation: HTTP/2 has a (re)prioritisation mechanism whereby it may choose to stall lower-priority responses on the server while sending higher-priority responses down the wire. H/2 prioritisation issues aside, even when H/2 is running smoothly, these expected delays will contribute to your TTFB. Application runtime: It’s kind of obvious really, but the time it takes to run your actual application code is going to be a large contributor to your TTFB. Database queries: Pages that require data from a database will incur a cost when searching over it. More TTFB. API calls: If you need to call any APIs (internal or otherwise) in order to populate a page, the overhead will be counted in your TTFB. Server-Side Rendering: The cost of server-rendering a page could be trivial, but it will still contribute to your TTFB. Cheap hosting: Hosting that is optimised for cost over performance usually means you’re sharing a server with any number of other websites, so expect degraded server performance which could affect your ability to fulfil requests, or may simply mean underpowered hardware trying to run your application. DDoS or heavy load: In a similar vein to the previous point, increased load with no way of auto-scaling your application will lead to degraded performance where you begin to probe the limits of your infrastructure. WAFs and load balancers: Services such as web application firewalls or load balancers that sit in front of your application will also contribute to your TTFB. CDN features: Although a CDN is a huge net win, in certain scenarios, their features could lead to additional TTFB. For example, request collapsing , edge-side includes , etc.). Last-mile latency: When we think of a computer in London visiting a server in New York, we tend to oversimplify that journey quite drastically, almost imagining that the two were directly connected. The reality is that there’s a much more complex series of intermediaries from our own router to our ISP; from a cell tower to an undersea cable. Last mile latency deals with the disproportionate complexity toward the terminus of a connection. It’s impossible to have a 0ms TTFB, so it’s important to note that the list above does not represent things that are necessarily bad or slowing your TTFB down. Rather, your TTFB represents any number of the items present above. My aim here is not to point fingers at any particular part of the stack, but instead to help you understand what exactly TTFB can entail. And with so much potentially taking place in our TTFB phase, it’s almost a miracle that websites load at all! So. Much. Stuff! Demystifying TTFB. Thankfully, it’s not all so unclear anymore! With a little bit of extra work spent implementing the Server Timing API , we can begin to measure and surface intricate timings to the front-end, allowing web developers to identify and debug potential bottlenecks previously obscured from view. The Server Timing API allows developers to augment their responses with an additional Server-Timing HTTP header which contains timing information that the application has measured itself. This is exactly what we did at BBC iPlayer last year: The newly-available Server-Timing header can be added to any response. View full size/quality (533KB). N.B. Server Timing doesn’t come for free: you need to actually measure the aspects listed above yourself and then populate your Server-Timing header with the relevant data. All the browser does is display the data in the relevant tooling, making it available on the front-end: Now we can see, right there in the browser, how long certain aspects of our TTFB took. View full size/quality (419KB). To help you get started, Christopher Sidebottom wrote up his implementation of the Server Timing API. during our time optimising iPlayer. It’s vital that we understand just what TTFB can cover, and just how critical it can be to overall performance. TTFB has knock-on effects, which can be a good thing or a bad thing depending on whether it’s starting off low or high. If you’re slow out of the gate, you’ll spend the rest of the race playing catchup.

Self-Host Your Static Assets

CSS Wizardry

One of the quickest wins—and one of the first things I recommend my clients do—to make websites faster can at first seem counter-intuitive: you should self-host all of your static assets, forgoing others’ CDNs/infrastructure.

Cache 285

New event type helps avoid unnecessary alerts for planned host downscaling

Dynatrace

Dynatrace news. Modern service infrastructure depends heavily on IT’s ability to dynamically scale the number of hosts up or down, depending on the expected workload.

Azure 154

Customize Dynatrace analysis timeframes as never before with the new global timeframe selector

Dynatrace

Dynatrace news. The timeframe selector is one of the most widely used UI controls in Dynatrace.

Introducing Digital Business Analytics: AI-powered real-time answers for better business outcomes

Dynatrace

Dynatrace news. Traditionally, it’s critical for Dev and Ops teams to be able to quickly discover and remediate application performance and customer-facing issues.

Performance Budgets, Pragmatically

CSS Wizardry

One of the key tools that performance engineers have at their disposal is the Performance Budget: it helps us—or, more importantly, our clients—ensure that any performance-focused work is monitored and maintained after we’ve gone.