pgsql: Improve scalability of md.c for large relations.
В списке pgsql-committers по дате отправления:
| От | Andres Freund |
|---|---|
| Тема | pgsql: Improve scalability of md.c for large relations. |
| Дата | |
| Msg-id | E1bi9aV-0005L1-LQ@gemulon.postgresql.org обсуждение |
| Список | pgsql-committers |
Improve scalability of md.c for large relations. So far md.c used a linked list of segments. That proved to be a problem when processing large relations, because every smgr.c/md.c level access to a page incurred walking through a linked list of all preceding segments. Thus making accessing pages O(#segments). Replace the linked list of segments hanging off SMgrRelationData with an array of opened segments. That allows O(1) access to individual segments, if they've previously been opened. Discussion: <20140331101001.GE13135@alap3.anarazel.de> Reviewed-By: Peter Geoghegan, Tom Lane (in an older version) Branch ------ master Details ------- http://git.postgresql.org/pg/commitdiff/45e191e3aa62d47a8bc1a33f784286b2051f45cb Modified Files -------------- src/backend/storage/smgr/md.c | 393 ++++++++++++++++++++++------------------ src/backend/storage/smgr/smgr.c | 4 +- src/include/storage/smgr.h | 8 +- 3 files changed, 229 insertions(+), 176 deletions(-)
В списке pgsql-committers по дате отправления:
Сайт использует файлы cookie для корректной работы и повышения удобства. Нажимая кнопку «Принять» или продолжая пользоваться сайтом, вы соглашаетесь на их использование в соответствии с Политикой в отношении обработки cookie ООО «ППГ», в том числе на передачу данных из файлов cookie сторонним статистическим и рекламным службам. Вы можете управлять настройками cookie через параметры вашего браузера