Hi, I'am a PhD student, writing a thesis about indexing.
I am also a software architect at nk.pl, which gave ma an experience of extra slow queries with large OFFSET.
From the theoretic point of view, this is quite strange, as early lectures on Data Structures teach you about storing subtree size in each node of a balanced tree and how to use it to quickly answer queries with arbitrary OFFSET.
I was wandering what were the reasons for not implementing it in real databases.
Is it about size? Locking?
I tried to google out answer to this question, but all I got were just hacks and work-a-rounds to this issue -- all know, and use many of them:)
What I need, is a rationale behind not storing position statistics in indexes.
I am also a software architect at nk.pl, which gave ma an experience of extra slow queries with large OFFSET.
From the theoretic point of view, this is quite strange, as early lectures on Data Structures teach you about storing subtree size in each node of a balanced tree and how to use it to quickly answer queries with arbitrary OFFSET.
I was wandering what were the reasons for not implementing it in real databases.
Is it about size? Locking?
I tried to google out answer to this question, but all I got were just hacks and work-a-rounds to this issue -- all know, and use many of them:)
What I need, is a rationale behind not storing position statistics in indexes.