Insight for Developers Archives - Percona Database Performance Blog Thu, 16 May 2024 15:26:13 +0000 en-US hourly 1 https://wordpress.org/?v=6.5.2 https://www.percona.com/blog/wp-content/uploads/2023/02/cropped-percona-favicon-32x32.png Insight for Developers Archives - Percona Database Performance Blog 32 32 76301791 Valkey/Redis: Not-So-Good Practices https://www.percona.com/blog/valkey-redis-not-so-good-practices/ https://www.percona.com/blog/valkey-redis-not-so-good-practices/#respond Thu, 16 May 2024 15:26:13 +0000 https://www.percona.com/blog/?p=96325 As we’ve been introducing Valkey/Redis these past few weeks, let’s depart from the norm and talk about a few “things you should not do” in Valkey.No passwordBy default, Valkey/Redis uses no authentication. This means anyone can connect to your Valkey server and start writing and reading data. Worst yet, no password while binding to all […]]]> https://www.percona.com/blog/valkey-redis-not-so-good-practices/feed/ 0 96325 Valkey/Redis: Configuration Best Practices https://www.percona.com/blog/valkey-redis-configuration-best-practices/ https://www.percona.com/blog/valkey-redis-configuration-best-practices/#respond Wed, 15 May 2024 13:05:27 +0000 https://www.percona.com/blog/?p=96276 In a few of our previous blog posts, we’ve seen how to get started with Valkey/Redis by running a simple docker container and how to persist some configuration settings to disk. In this post, let’s take a step back and go over a few configuration best practices.ConnectionsThe Valkey/Redis config file is typically located at /etc/valkey/valkey.conf, but […]]]> https://www.percona.com/blog/valkey-redis-configuration-best-practices/feed/ 0 96276 Valkey/Redis: The Hash Datatype https://www.percona.com/blog/valkey-redis-the-hash-datatype/ https://www.percona.com/blog/valkey-redis-the-hash-datatype/#respond Tue, 14 May 2024 13:21:54 +0000 https://www.percona.com/blog/?p=96278 In our previous blogs, we discussed the basic data types available in Valkey/Redis: Strings, Lists, Sets, and Sorted Sets. In this blog, we introduce a more complex data type, Hashes.You can think of these much like dictionaries from Python, associative arrays from PHP, etc. Normally in Valkey/Redis, you store one value associated with one key. […]]]> https://www.percona.com/blog/valkey-redis-the-hash-datatype/feed/ 0 96278 Valkey/Redis Replication and Auto-Failover With Sentinel Service https://www.percona.com/blog/valkey-redis-replication-and-auto-failover-with-sentinel-service/ https://www.percona.com/blog/valkey-redis-replication-and-auto-failover-with-sentinel-service/#respond Mon, 13 May 2024 15:34:21 +0000 https://www.percona.com/blog/?p=96240 In this Valkey blog post, I will demonstrate how we can set up a simple replication process among the Valkey nodes and then finally use some auto-failover mechanism with the help of the Valkey-sentinel tool.Replication (Master-Slave)Basically, we have two setups with the information below. [crayon-664c6dc2dbfb7028799801/] Now let’s prepare some basic configurations in file [/etc/valkey/valkey.conf] for […]]]> https://www.percona.com/blog/valkey-redis-replication-and-auto-failover-with-sentinel-service/feed/ 0 96240 Valkey/Redis: Sets and Sorted Sets https://www.percona.com/blog/valkey-redis-sets-and-sorted-sets/ https://www.percona.com/blog/valkey-redis-sets-and-sorted-sets/#respond Thu, 09 May 2024 15:09:10 +0000 https://www.percona.com/blog/?p=96208 In our previous post, we welcomed Valkey (an open source fork of Redis) to the Percona family. We also learned how to get Valkey up and running using docker, along with understanding some of the basic data types, string and list. In this post, we will continue working with Valkey/Redis and learn about sets and […]]]> https://www.percona.com/blog/valkey-redis-sets-and-sorted-sets/feed/ 0 96208 Hello World… Hello Valkey! Let’s Get Started! https://www.percona.com/blog/hello-valkey-lets-get-started/ https://www.percona.com/blog/hello-valkey-lets-get-started/#respond Tue, 07 May 2024 13:17:59 +0000 https://www.percona.com/blog/?p=96199 Welcome Valkey to the Percona family! We are excited to have you join our team of MySQL, PostgreSQL, and MongoDB database experts.Hang on. What is Valkey? In short, Valkey is a fork of Redis which maintains the original open source BSD license[1]. If you’re new to Redis/Valkey, then this ‘getting started’ post is just for […]]]> https://www.percona.com/blog/hello-valkey-lets-get-started/feed/ 0 96199 Valkey/Redis Configurations and Persistent Setting of the Key Parameters https://www.percona.com/blog/valkey-redis-configurations-and-persistent-setting-of-the-key-parameters/ https://www.percona.com/blog/valkey-redis-configurations-and-persistent-setting-of-the-key-parameters/#respond Mon, 06 May 2024 18:18:20 +0000 https://www.percona.com/blog/?p=96136 Since Valkey (a fork of Redis) is around the corner, I thought to write a short blog post about some of the configuration parts, mainly discussing how to dynamically change certain settings and persist those inside the configuration file.Disk persistenceLet me start with a very important setting, which is “SAVE,” that helps in performing a […]]]> https://www.percona.com/blog/valkey-redis-configurations-and-persistent-setting-of-the-key-parameters/feed/ 0 96136 LDAP Authentication in PgBouncer Through PAM https://www.percona.com/blog/ldap-authentication-in-pgbouncer-through-pam/ https://www.percona.com/blog/ldap-authentication-in-pgbouncer-through-pam/#respond Tue, 30 Apr 2024 14:46:30 +0000 https://www.percona.com/blog/?p=96054 There are many cases where external connection poolers like pgBouncer become unavoidable despite the costs and complexities associated with them. PgBouncer is one of the most popular external connection poolers for PostgreSQL. It is thin and lightweight, so it doesn’t have built-in authentication features like LDAP, which is essential for many enterprises. Luckily, pgBouncer has […]]]> https://www.percona.com/blog/ldap-authentication-in-pgbouncer-through-pam/feed/ 0 96054 Switch PostgreSQL Environments Across AWS, GCP, and k3d Using Kubernetes Contexts https://www.percona.com/blog/switch-postgresql-environments-across-aws-gcp-and-k3d-using-kubernetes-contexts/ https://www.percona.com/blog/switch-postgresql-environments-across-aws-gcp-and-k3d-using-kubernetes-contexts/#respond Wed, 17 Apr 2024 13:25:31 +0000 https://www.percona.com/blog/?p=95872 This article explains how to install the Percona Distribution for PostgreSQL on Kubernetes using “context”. We will show you how to set up this distribution on Kubernetes clusters in AWS, Google Cloud, and locally with k3d. You’ll also learn how to switch between these setups to test them effectively.In Kubernetes, a context is a profile […]]]> https://www.percona.com/blog/switch-postgresql-environments-across-aws-gcp-and-k3d-using-kubernetes-contexts/feed/ 0 95872 PostgreSQL Indexes Can Hurt Performance: Exploring the Negative Effects and the Costs Involved https://www.percona.com/blog/postgresql-indexes-can-hurt-you-negative-effects-and-the-costs-involved/ https://www.percona.com/blog/postgresql-indexes-can-hurt-you-negative-effects-and-the-costs-involved/#respond Mon, 01 Apr 2024 11:15:43 +0000 https://www.percona.com/blog/?p=87199 This blog was originally published in April 2023 and was updated in April 2024.Indexes are generally considered to be the panacea when it comes to SQL performance tuning, and PostgreSQL supports different types of indexes catering to different use cases. I keep seeing many articles and talks on “tuning” discussing how creating new indexes speeds […]]]> https://www.percona.com/blog/postgresql-indexes-can-hurt-you-negative-effects-and-the-costs-involved/feed/ 0 87199 MongoDB Configuration 101: 5 Configuration Options That Impact Performance and How to Set Them https://www.percona.com/blog/mongodb-101-5-configuration-options-that-impact-performance-and-how-to-set-them/ https://www.percona.com/blog/mongodb-101-5-configuration-options-that-impact-performance-and-how-to-set-them/#comments Mon, 01 Apr 2024 07:00:15 +0000 https://www.percona.com/blog/?p=73502 This blog was published in January of 2021 and updated in April of 2024.As with any database platform, MongoDB performance is of paramount importance to keeping your application running quickly.  In this blog post, we’ll show you five configuration options that can impact the performance for your MongoDB Deployment and will help keep your database […]]]> https://www.percona.com/blog/mongodb-101-5-configuration-options-that-impact-performance-and-how-to-set-them/feed/ 2 73502 How Missing Primary Keys Break Your Galera Cluster https://www.percona.com/blog/how-missing-primary-keys-break-your-galera-cluster/ https://www.percona.com/blog/how-missing-primary-keys-break-your-galera-cluster/#respond Thu, 28 Mar 2024 16:50:18 +0000 https://www.percona.com/blog/?p=95436 Any Galera documentation about limitations will state that tables must have primary keys. They state that DELETEs are unsupported and other DMLs could have unwanted side-effects such as inconsistent ordering: rows can appear in different order on different nodes in your cluster.If you are not actively relying on row orders, this could seem acceptable. Deletes […]]]> https://www.percona.com/blog/how-missing-primary-keys-break-your-galera-cluster/feed/ 0 95436 Managing Time Series Data Using TimeScaleDB-Powered PostgreSQL https://www.percona.com/blog/managing-time-series-data-using-timescaledb-powered-postgresql/ https://www.percona.com/blog/managing-time-series-data-using-timescaledb-powered-postgresql/#respond Tue, 12 Mar 2024 14:05:08 +0000 https://www.percona.com/blog/?p=94967 PostgreSQL extensions are great! Simply by adding an extension, one transforms what is an otherwise vanilla general-purpose database management system into one capable of processing data requirements in a highly optimized fashion. Some extensions, like pg_repack, simplify and enhance existing features already, while other extensions, such as PostGIS and pgvector, add completely new capabilities.I’d like […]]]> https://www.percona.com/blog/managing-time-series-data-using-timescaledb-powered-postgresql/feed/ 0 94967 MySQL 8.2.0 Community vs. Enterprise; Is There a Winner? https://www.percona.com/blog/mysql-8-2-0-community-vs-enterprise-is-there-a-winner/ https://www.percona.com/blog/mysql-8-2-0-community-vs-enterprise-is-there-a-winner/#respond Tue, 06 Feb 2024 18:13:33 +0000 https://www.percona.com/blog/?p=94111 To be honest, the comparison between the two MySQL distributions is not something that excited me a lot. Mainly because from my MySQL memories, I knew that there is not a real difference between the two distributions when talking about the code base.To my knowledge the differences in the enterprise version are in the additional […]]]> https://www.percona.com/blog/mysql-8-2-0-community-vs-enterprise-is-there-a-winner/feed/ 0 94111 MySQL Table Size Is Way Bigger After Adding a Simple Index; Why? https://www.percona.com/blog/mysql-table-size-is-way-bigger-after-adding-a-simple-index-why/ https://www.percona.com/blog/mysql-table-size-is-way-bigger-after-adding-a-simple-index-why/#respond Wed, 31 Jan 2024 14:00:03 +0000 https://www.percona.com/blog/?p=93688 It is a known good practice to keep only necessary indexes to reduce the write performance and disk space overhead. This simple rule is mentioned briefly in the official MySQL Documentation:https://dev.mysql.com/doc/refman/8.0/en/optimization-indexes.htmlHowever, in some cases, the overhead from adding a new index can be way above the expectations! Recently, I’ve been analyzing a customer case like […]]]> https://www.percona.com/blog/mysql-table-size-is-way-bigger-after-adding-a-simple-index-why/feed/ 0 93688 Decoding Sequential Scans in PostgreSQL https://www.percona.com/blog/decoding-sequential-scans-in-postgresql/ https://www.percona.com/blog/decoding-sequential-scans-in-postgresql/#respond Thu, 25 Jan 2024 14:37:22 +0000 https://www.percona.com/blog/?p=93606 In every database product, sequential scans or full table scans are often resource consuming, so almost all the developers and DBAs see such scans as a performance killer. In my opinion, this is a false perception or biased view. In many cases, sequential scans are proven to be a performance booster. However, due to a […]]]> https://www.percona.com/blog/decoding-sequential-scans-in-postgresql/feed/ 0 93606 Common PostgreSQL Upgrade Errors and How to Avoid Them https://www.percona.com/blog/11-common-postgresql-upgrade-errors-and-how-to-avoid-them/ https://www.percona.com/blog/11-common-postgresql-upgrade-errors-and-how-to-avoid-them/#respond Tue, 23 Jan 2024 15:07:12 +0000 https://www.percona.com/blog/?p=92159 Everyone usually welcomes an upgrade, whether it’s a new operating system on your phone, a first-class seat on a flight, or a revamped kitchen in your home. Upgrades typically mean improvement, which is true for PostgreSQL, as each new version of PostgreSQL brings updates and enhancements essential for your application’s optimal performance, stability, and security. […]]]> https://www.percona.com/blog/11-common-postgresql-upgrade-errors-and-how-to-avoid-them/feed/ 0 92159 Can’t We Assign a Default Value to the BLOB, TEXT, GEOMETRY, and JSON Data Types? https://www.percona.com/blog/cant-we-assign-a-default-value-to-the-blob-text-geometry-and-json-data-types/ https://www.percona.com/blog/cant-we-assign-a-default-value-to-the-blob-text-geometry-and-json-data-types/#comments Fri, 12 Jan 2024 14:39:28 +0000 https://www.percona.com/blog/?p=93471 One of our customers wants to create a table having a column of data type TEXT with the default value, but they encountered an error: [crayon-664c6dc2e8d36394000836-i/]. It seems reasonable at first glimpse, as we know that each BLOB, TEXT, GEOMETRY, or JSON value is represented internally by a separately allocated object. This is in contrast […]]]> https://www.percona.com/blog/cant-we-assign-a-default-value-to-the-blob-text-geometry-and-json-data-types/feed/ 1 93471 What’s New in Percona Toolkit 3.5.6 https://www.percona.com/blog/whats-new-in-percona-toolkit-3-5-6/ https://www.percona.com/blog/whats-new-in-percona-toolkit-3-5-6/#respond Fri, 22 Dec 2023 15:34:54 +0000 https://www.percona.com/blog/?p=92912 Percona Toolkit 3.5.6 was released on December 21, 2023. This blog post covers the main changes in this release.New tool: pt-galera-log-explainerWe continue adding more instruments for the Support teams. [crayon-664c6dc2e9aa2498433376-i/] was written by my Percona Support colleague Yoann La Cancellera. [crayon-664c6dc2e9aa7619867379-i/] filters, aggregates, and summarizes multiple Galera library logs together. The purpose of this tool […]]]> https://www.percona.com/blog/whats-new-in-percona-toolkit-3-5-6/feed/ 0 92912 The Pros and Cons of Wildcard Indexes on MongoDB https://www.percona.com/blog/pros-and-cons-of-wildcard-indexes-on-mongodb/ https://www.percona.com/blog/pros-and-cons-of-wildcard-indexes-on-mongodb/#respond Fri, 22 Dec 2023 13:56:45 +0000 https://www.percona.com/blog/?p=92669 ​​MongoDB is a schemaless database that is extremely flexible. When you create a collection, you don’t have to specify a structure in advance, providing field names and data types. Just start inserting JSON documents, and MongoDB will store them, no matter which fields and data types you provide. As a consequence, a collection can store […]]]> https://www.percona.com/blog/pros-and-cons-of-wildcard-indexes-on-mongodb/feed/ 0 92669