Subject: Re: [EXTERNAL] RDS IO Read time

From: Eden Aharoni <[email-masked]>
Date: Mon, 31 Mar 2025 18:30:31 +0000

Can you please tell me what other data might help? Would you like an EXPLAIN output?

Get Outlook for Android<https://aka.ms/AAb9ysg>
________________________________
From: Christophe Pettus <[email-masked]>
Sent: Monday, March 31, 2025 9:23:45 PM
To: Eden Aharoni <[email-masked]>
Cc: [email-masked] <[email-masked]>
Subject: Re: [EXTERNAL] RDS IO Read time

> On Mar 31, 2025, at 10:54, Eden Aharoni <[email-masked]> wrote:
>
> So you believe it's strictly an EBS issue?

Well, PostgreSQL certainly can read faster than 34MB/s off of disk.  With the data you've given, I can't really say if it's purely an EBS issue.

---

From: Christophe Pettus <[email-masked]>
Date: Mon, 31 Mar 2025 11:43:27 -0700

> On Mar 31, 2025, at 11:30, Eden Aharoni <[email-masked]> wrote:
> 
> Can you please tell me what other data might help?

You can show your work on how you got the megabytes/second number.  (Be aware that on a general open-source mailing list, there's only so much debugging that we can do of a specific problem that is not a PostgreSQL bug.)

---

From: Eden Aharoni <[email-masked]>
Date: Mon, 31 Mar 2025 19:36:43 +0000

Aggregate  (cost=8581.22..8581.23 rows=1 width=4) (actual time=1209.498..1210.530 rows=1 loops=1)
  Buffers: shared hit=3108 read=4314 dirtied=1
  I/O Timings: shared read=1169.977
  ->  Gather  (cost=8580.80..8581.21 rows=4 width=8) (actual time=1209.371..1210.526 rows=5 loops=1)
          Workers Planned: 4
          Workers Launched: 4
        Buffers: shared hit=3108 read=4314 dirtied=1
        I/O Timings: shared read=1169.977
        ->  Aggregate  (cost=7580.80..7580.81 rows=1 width=8) (actual time=1206.518..1206.520 rows=1 loops=5)
              Buffers: shared hit=3105 read=4314 dirtied=1
              I/O Timings: shared read=1169.977
              ->  Hash Join  (cost=2620.70..7578.45 rows=937 width=0) (actual time=148.965..1206.330 rows=1897 loops=5)
                    Buffers: shared hit=3105 read=4314 dirtied=1
                    I/O Timings: shared read=1169.977
                    ->  Index Only Scan using IX_Collaborators_TenantId_IsDeleted_RunningIndex on Collaborators c  (cost=0.55..4619.26 rows=11407 width=80) (actual time=2.815..1058.793 rows=7474 loops=5)
                            Index Cond: ((c."TenantId" = '0f8026c775a5499fdd3ccd193a15f94c3b4ae58a'::text) AND (c."IsDeleted" = false))
                            Heap Fetches: 3711
                          Buffers: shared hit=2332 read=3563
                          I/O Timings: shared read=1028.548
                    ->  Hash  (cost=2479.01..2479.01 rows=11292 width=79) (actual time=144.988..144.989 rows=1983 loops=5)
                          Buffers: shared hit=637 read=751 dirtied=1
                          I/O Timings: shared read=141.429
                          ->  Index Only Scan using IX_IntegrationCollaboration_TenantId_IsIntegrationDeleted_IsDe~ on IntegrationCollaboration i  (cost=0.55..2479.01 rows=11292 width=79) (actual time=1.804..144.122 rows=1983 loops=5)
                                  Index Cond: (i."TenantId" = '0f8026c775a5499fdd3ccd193a15f94c3b4ae58a'::text)
                                  Heap Fetches: 112
                                Buffers: shared hit=637 read=751 dirtied=1
                                I/O Timings: shared read=141.429
Planning:
  Buffers: shared hit=440
Execution time: 1210.592 ms

So we can see here that the query read 4314 blocks in 1.2 sec.. (ive done 4314 * 8kb / 1.2sec which is about 28 MB/s)…

Hope you’ll have any clue 😊
From: Christophe Pettus <[email-masked]>
Date: Monday, 31 March 2025 at 21:44
To: Eden Aharoni <[email-masked]>
Cc: [email-masked] <[email-masked]>
Subject: Re: [EXTERNAL] RDS IO Read time

---

From: Christophe Pettus <[email-masked]>
Date: Mon, 31 Mar 2025 13:22:54 -0700

> On Mar 31, 2025, at 12:36, Eden Aharoni <[email-masked]> wrote:

Based on that, I'd take it up with AWS.  It does seem that the EBS mount is under-performing.