You're right. Reindex improves the performance of the benchmark workloads dramatically.
I'm gathering results and will announce them.
But I think we should notice that the results before Reindexing is poorer than MongoDB.
It seems that this is because of Btree bloating (not exact expression).
The lookup performance for the Btree is most crucial for the results
because the workload is select for primary key.
So larger Btree could mean less cache hits and slower query performance.
I think that PG doesn't pack leaf node to 90% but half for future insertion
and because of this PG's btree is larger than MongoDB
(I turned off prefix compression of WiredTiger index and block compression for storage.)
But MongoDB (actually WiredTiger) seems to do differently.
Is my speculation is right? I'm not sure because I didn't review the btree code of PG yet.
And I want to point that the loading performance of MongoDB is better than PG.
If PG leaves more space for future insertion, then could we get at least faster loading performance?
Then can we conclude that we have more chances to improve Btree of PG?
Best Regards,