#btree — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #btree, aggregated by home.social.
-
ChaosTree v1.2.0: Zero-dependency Java search tree library
-
ChaosTree v1.2.0: Zero-dependency Java search tree library
-
ChaosTree v1.2.0: Zero-dependency Java search tree library
-
ChaosTree v1.2.0: Zero-dependency Java search tree library
-
ChaosTree v1.2.0: Zero-dependency Java search tree library
-
🚀🎉 Behold, #LMDB #1.0, the "revolutionary" B-tree #database library that promises to do... absolutely nothing new! Who knew removing mallocs and memcpys could be pitched as groundbreaking? 🤔 It's like discovering fire all over again, but with more #buzzwords and less heat! 🔥🧐
http://www.lmdb.tech/doc/ #Btree #Revolutionary #Tech #HackerNews #ngated -
🚀🎉 Behold, #LMDB #1.0, the "revolutionary" B-tree #database library that promises to do... absolutely nothing new! Who knew removing mallocs and memcpys could be pitched as groundbreaking? 🤔 It's like discovering fire all over again, but with more #buzzwords and less heat! 🔥🧐
http://www.lmdb.tech/doc/ #Btree #Revolutionary #Tech #HackerNews #ngated -
🚀🎉 Behold, #LMDB #1.0, the "revolutionary" B-tree #database library that promises to do... absolutely nothing new! Who knew removing mallocs and memcpys could be pitched as groundbreaking? 🤔 It's like discovering fire all over again, but with more #buzzwords and less heat! 🔥🧐
http://www.lmdb.tech/doc/ #Btree #Revolutionary #Tech #HackerNews #ngated -
🚀🎉 Behold, #LMDB #1.0, the "revolutionary" B-tree #database library that promises to do... absolutely nothing new! Who knew removing mallocs and memcpys could be pitched as groundbreaking? 🤔 It's like discovering fire all over again, but with more #buzzwords and less heat! 🔥🧐
http://www.lmdb.tech/doc/ #Btree #Revolutionary #Tech #HackerNews #ngated -
🚀🎉 Behold, #LMDB #1.0, the "revolutionary" B-tree #database library that promises to do... absolutely nothing new! Who knew removing mallocs and memcpys could be pitched as groundbreaking? 🤔 It's like discovering fire all over again, but with more #buzzwords and less heat! 🔥🧐
http://www.lmdb.tech/doc/ #Btree #Revolutionary #Tech #HackerNews #ngated -
My LSM tree was slower than a B-tree. Then I profiled it
https://aasheesh.vercel.app/blog/lsm-tree
#HackerNews #LSMtree #Btree #profiling #performance #database
-
My LSM tree was slower than a B-tree. Then I profiled it
https://aasheesh.vercel.app/blog/lsm-tree
#HackerNews #LSMtree #Btree #profiling #performance #database
-
My LSM tree was slower than a B-tree. Then I profiled it
https://aasheesh.vercel.app/blog/lsm-tree
#HackerNews #LSMtree #Btree #profiling #performance #database
-
My LSM tree was slower than a B-tree. Then I profiled it
https://aasheesh.vercel.app/blog/lsm-tree
#HackerNews #LSMtree #Btree #profiling #performance #database
-
My LSM tree was slower than a B-tree. Then I profiled it
https://aasheesh.vercel.app/blog/lsm-tree
#HackerNews #LSMtree #Btree #profiling #performance #database
-
HTAP внутри OLTP: как мы строили векторизованный движок с самого начала
Как встроить векторизованный движок в OLTP-ядро с нуля — без отдельного аналитического слоя. Разбираем PhysicalType, SelectionVector, RowToColumnBridge, SIMD на листовых страницах B-Tree и Hash Join. Бенчмарк на 2,25 млн строк: от 1.22× на простых агрегатах до 2.67× на GROUP BY.
https://habr.com/ru/articles/1032894/
#htap #векторизация #база_данных #simd #btree #Hash_Join #rust #oltp
-
HTAP внутри OLTP: как мы строили векторизованный движок с самого начала
Как встроить векторизованный движок в OLTP-ядро с нуля — без отдельного аналитического слоя. Разбираем PhysicalType, SelectionVector, RowToColumnBridge, SIMD на листовых страницах B-Tree и Hash Join. Бенчмарк на 2,25 млн строк: от 1.22× на простых агрегатах до 2.67× на GROUP BY.
https://habr.com/ru/articles/1032894/
#htap #векторизация #база_данных #simd #btree #Hash_Join #rust #oltp
-
HTAP внутри OLTP: как мы строили векторизованный движок с самого начала
Как встроить векторизованный движок в OLTP-ядро с нуля — без отдельного аналитического слоя. Разбираем PhysicalType, SelectionVector, RowToColumnBridge, SIMD на листовых страницах B-Tree и Hash Join. Бенчмарк на 2,25 млн строк: от 1.22× на простых агрегатах до 2.67× на GROUP BY.
https://habr.com/ru/articles/1032894/
#htap #векторизация #база_данных #simd #btree #Hash_Join #rust #oltp
-
BRIN, GIN, B‑Tree: полный гайд по индексам PostgreSQL для highload
Индексы есть, а запросы всё равно тормозят? Или наоборот — индексов слишком много, и они только увеличивают нагрузку на запись? Многие разработчики и администраторы баз данных попадают в ловушку: ставят B-Tree на всё подряд и надеются на лучшее. Но в highload-системах это может привести к катастрофе. В этой статье я делюсь реальным опытом работы с PostgreSQL. Статья будет полезна разработчикам, архитекторам и администраторам, которые хотят не просто «поставить индекс», а понять, как работает PostgreSQL под капотом и как проектировать базы данных, выдерживающие миллионы запросов в секунду.
https://habr.com/ru/companies/otus/articles/1008372/
#архитектура #PostgreSQL #индексы #оптимизация_запросов #highload #базы_данных #BTree #BRIN
-
BRIN, GIN, B‑Tree: полный гайд по индексам PostgreSQL для highload
Индексы есть, а запросы всё равно тормозят? Или наоборот — индексов слишком много, и они только увеличивают нагрузку на запись? Многие разработчики и администраторы баз данных попадают в ловушку: ставят B-Tree на всё подряд и надеются на лучшее. Но в highload-системах это может привести к катастрофе. В этой статье я делюсь реальным опытом работы с PostgreSQL. Статья будет полезна разработчикам, архитекторам и администраторам, которые хотят не просто «поставить индекс», а понять, как работает PostgreSQL под капотом и как проектировать базы данных, выдерживающие миллионы запросов в секунду.
https://habr.com/ru/companies/otus/articles/1008372/
#архитектура #PostgreSQL #индексы #оптимизация_запросов #highload #базы_данных #BTree #BRIN
-
BRIN, GIN, B‑Tree: полный гайд по индексам PostgreSQL для highload
Индексы есть, а запросы всё равно тормозят? Или наоборот — индексов слишком много, и они только увеличивают нагрузку на запись? Многие разработчики и администраторы баз данных попадают в ловушку: ставят B-Tree на всё подряд и надеются на лучшее. Но в highload-системах это может привести к катастрофе. В этой статье я делюсь реальным опытом работы с PostgreSQL. Статья будет полезна разработчикам, архитекторам и администраторам, которые хотят не просто «поставить индекс», а понять, как работает PostgreSQL под капотом и как проектировать базы данных, выдерживающие миллионы запросов в секунду.
https://habr.com/ru/companies/otus/articles/1008372/
#архитектура #PostgreSQL #индексы #оптимизация_запросов #highload #базы_данных #BTree #BRIN
-
[Перевод] Нетипичные оптимизации в PostgreSQL, или Креативное ускорение запросов
Когда речь заходит об оптимизации базы данных, разработчики обычно перечисляют привычный набор приёмов: слегка переписать запрос, накинуть индекс на колонку, денормализовать, сделать analyze, vacuum, cluster, и так по кругу. Классические техники, конечно, работают, но иногда креативный подход даёт гораздо больше. В этой статье Haki Benita показывает нетипичные техники оптимизации в PostgreSQL.
https://habr.com/ru/companies/postgrespro/articles/1001194/
#optimisation #hash #btree #indexes #postgresql #администрирование #администрирование_бд #индекс
-
[Перевод] Нетипичные оптимизации в PostgreSQL, или Креативное ускорение запросов
Когда речь заходит об оптимизации базы данных, разработчики обычно перечисляют привычный набор приёмов: слегка переписать запрос, накинуть индекс на колонку, денормализовать, сделать analyze, vacuum, cluster, и так по кругу. Классические техники, конечно, работают, но иногда креативный подход даёт гораздо больше. В этой статье Haki Benita показывает нетипичные техники оптимизации в PostgreSQL.
https://habr.com/ru/companies/postgrespro/articles/1001194/
#optimisation #hash #btree #indexes #postgresql #администрирование #администрирование_бд #индекс
-
[Перевод] Нетипичные оптимизации в PostgreSQL, или Креативное ускорение запросов
Когда речь заходит об оптимизации базы данных, разработчики обычно перечисляют привычный набор приёмов: слегка переписать запрос, накинуть индекс на колонку, денормализовать, сделать analyze, vacuum, cluster, и так по кругу. Классические техники, конечно, работают, но иногда креативный подход даёт гораздо больше. В этой статье Haki Benita показывает нетипичные техники оптимизации в PostgreSQL.
https://habr.com/ru/companies/postgrespro/articles/1001194/
#optimisation #hash #btree #indexes #postgresql #администрирование #администрирование_бд #индекс
-
Как не получилось сделать PostgreSQL лучше (и почему это нормально)
Недавно я получил статус Major Contributor в проекте PostgreSQL. Это довольно радостное для меня событие и интересное, поэтому коллеги попросили написать статью об этом. А чтобы я не сомневался — заботливо составили список достижений за меня. Получилось замечательно, но публиковать от своего имени статью вида «как я крут» я не хочу. Я совсем не против про это говорить, и из каждого утюга вещаю про разные технологии, сделанные моей командой или вот прям вообще мной. Но только в контексте «как использовать эти технологии», либо в узком кругу или личной беседе. Я решил написать другую статью: что у меня не получилось. Писал довольно спешно, поэтому, возможно, местами будет понятно только специалистам. Не расстраивайтесь, если что‑то неясно и пришлось гуглить. А вот если всё понятно — возможно, стоит меньше смотреть в монитор и чаще трогать траву. Инкрементальное улучшение любой популярной технологии зачастую имеет негативные последствия. И в большинстве случаев предлагаемых в PostgreSQL доработок — вред превышает пользу. Построить что‑то новое, ничего не сломав, бывает трудно и в чистом поле, а ядро PostgreSQL в этом смысле — лабиринт с граблями.
https://habr.com/ru/companies/yandex/articles/964778/
#postgresql #wal #btree #btree_индекс #синхронная_репликация #lz4 #pglz
-
Как не получилось сделать PostgreSQL лучше (и почему это нормально)
Недавно я получил статус Major Contributor в проекте PostgreSQL. Это довольно радостное для меня событие и интересное, поэтому коллеги попросили написать статью об этом. А чтобы я не сомневался — заботливо составили список достижений за меня. Получилось замечательно, но публиковать от своего имени статью вида «как я крут» я не хочу. Я совсем не против про это говорить, и из каждого утюга вещаю про разные технологии, сделанные моей командой или вот прям вообще мной. Но только в контексте «как использовать эти технологии», либо в узком кругу или личной беседе. Я решил написать другую статью: что у меня не получилось. Писал довольно спешно, поэтому, возможно, местами будет понятно только специалистам. Не расстраивайтесь, если что‑то неясно и пришлось гуглить. А вот если всё понятно — возможно, стоит меньше смотреть в монитор и чаще трогать траву. Инкрементальное улучшение любой популярной технологии зачастую имеет негативные последствия. И в большинстве случаев предлагаемых в PostgreSQL доработок — вред превышает пользу. Построить что‑то новое, ничего не сломав, бывает трудно и в чистом поле, а ядро PostgreSQL в этом смысле — лабиринт с граблями.
https://habr.com/ru/companies/yandex/articles/964778/
#postgresql #wal #btree #btree_индекс #синхронная_репликация #lz4 #pglz
-
Как не получилось сделать PostgreSQL лучше (и почему это нормально)
Недавно я получил статус Major Contributor в проекте PostgreSQL. Это довольно радостное для меня событие и интересное, поэтому коллеги попросили написать статью об этом. А чтобы я не сомневался — заботливо составили список достижений за меня. Получилось замечательно, но публиковать от своего имени статью вида «как я крут» я не хочу. Я совсем не против про это говорить, и из каждого утюга вещаю про разные технологии, сделанные моей командой или вот прям вообще мной. Но только в контексте «как использовать эти технологии», либо в узком кругу или личной беседе. Я решил написать другую статью: что у меня не получилось. Писал довольно спешно, поэтому, возможно, местами будет понятно только специалистам. Не расстраивайтесь, если что‑то неясно и пришлось гуглить. А вот если всё понятно — возможно, стоит меньше смотреть в монитор и чаще трогать траву. Инкрементальное улучшение любой популярной технологии зачастую имеет негативные последствия. И в большинстве случаев предлагаемых в PostgreSQL доработок — вред превышает пользу. Построить что‑то новое, ничего не сломав, бывает трудно и в чистом поле, а ядро PostgreSQL в этом смысле — лабиринт с граблями.
https://habr.com/ru/companies/yandex/articles/964778/
#postgresql #wal #btree #btree_индекс #синхронная_репликация #lz4 #pglz
-
OrioleDB's #Bridged Indexes: because who doesn't love yet another revolutionary #database feature that promises to fix problems nobody knew existed? 🤔🎉 Let's all pretend this complex #tech jargon will change our lives while we secretly Google "Btree" like it's a trendy new diet. 🍽️📚
https://www.orioledb.com/blog/orioledb-bridged-indexes #OrioleDB #Indexes #innovation #Btree #databasefeatures #HackerNews #ngated -
OrioleDB's #Bridged Indexes: because who doesn't love yet another revolutionary #database feature that promises to fix problems nobody knew existed? 🤔🎉 Let's all pretend this complex #tech jargon will change our lives while we secretly Google "Btree" like it's a trendy new diet. 🍽️📚
https://www.orioledb.com/blog/orioledb-bridged-indexes #OrioleDB #Indexes #innovation #Btree #databasefeatures #HackerNews #ngated -
OrioleDB's #Bridged Indexes: because who doesn't love yet another revolutionary #database feature that promises to fix problems nobody knew existed? 🤔🎉 Let's all pretend this complex #tech jargon will change our lives while we secretly Google "Btree" like it's a trendy new diet. 🍽️📚
https://www.orioledb.com/blog/orioledb-bridged-indexes #OrioleDB #Indexes #innovation #Btree #databasefeatures #HackerNews #ngated -
OrioleDB's #Bridged Indexes: because who doesn't love yet another revolutionary #database feature that promises to fix problems nobody knew existed? 🤔🎉 Let's all pretend this complex #tech jargon will change our lives while we secretly Google "Btree" like it's a trendy new diet. 🍽️📚
https://www.orioledb.com/blog/orioledb-bridged-indexes #OrioleDB #Indexes #innovation #Btree #databasefeatures #HackerNews #ngated -
Правильный порядок колонок в B-tree индексах PostgreSQL или правило ESR
Когда в проекте используется составной B-tree индекс, важно не просто "создать индекс", а сделать это правильно — иначе запросы могут не только не ускориться, но и начать работать медленнее. Возникает логичный вопрос: как выбрать порядок колонок, чтобы индекс действительно работал эффективно? Брутфорсом? По интуиции? По селективности? В этой статье я расскажу, как подходить к построению составных индексов в PostgreSQL, на что реально влияет порядок колонок. Также разберём простое правило ESR, которое помогает упростить выбор и получать стабильный прирост производительности на всех стендах.
https://habr.com/ru/articles/911688/
#postgresql #Btree #составной_индекс #многоколонковый_индекс #ESR_правило #оптимизация_запросов #селективность #план_выполнения #explain_analyze #индексный_скан
-
Правильный порядок колонок в B-tree индексах PostgreSQL или правило ESR
Когда в проекте используется составной B-tree индекс, важно не просто "создать индекс", а сделать это правильно — иначе запросы могут не только не ускориться, но и начать работать медленнее. Возникает логичный вопрос: как выбрать порядок колонок, чтобы индекс действительно работал эффективно? Брутфорсом? По интуиции? По селективности? В этой статье я расскажу, как подходить к построению составных индексов в PostgreSQL, на что реально влияет порядок колонок. Также разберём простое правило ESR, которое помогает упростить выбор и получать стабильный прирост производительности на всех стендах.
https://habr.com/ru/articles/911688/
#postgresql #Btree #составной_индекс #многоколонковый_индекс #ESR_правило #оптимизация_запросов #селективность #план_выполнения #explain_analyze #индексный_скан
-
Правильный порядок колонок в B-tree индексах PostgreSQL или правило ESR
Когда в проекте используется составной B-tree индекс, важно не просто "создать индекс", а сделать это правильно — иначе запросы могут не только не ускориться, но и начать работать медленнее. Возникает логичный вопрос: как выбрать порядок колонок, чтобы индекс действительно работал эффективно? Брутфорсом? По интуиции? По селективности? В этой статье я расскажу, как подходить к построению составных индексов в PostgreSQL, на что реально влияет порядок колонок. Также разберём простое правило ESR, которое помогает упростить выбор и получать стабильный прирост производительности на всех стендах.
https://habr.com/ru/articles/911688/
#postgresql #Btree #составной_индекс #многоколонковый_индекс #ESR_правило #оптимизация_запросов #селективность #план_выполнения #explain_analyze #индексный_скан
-
B-Tree — сбалансированный куст поиска
В реляционных СУБД есть дефолтный тип индекса — B‑Tree: Tree в названии однозначно указывает на дерево, ну а В это, наверно, Binary? Или Balanced? Или Balanced Binary? Почему‑то долгое время я полагал, что это Balanced Binary, и эта версия даже «работала». На деле всё куда интереснее, предлагаю проследовать под кат, чтобы посмотреть на этот на самом деле скорее низкорослый куст и сравнить его с Red‑Black Tree на Java. Точно куст?
-
B-Tree — сбалансированный куст поиска
В реляционных СУБД есть дефолтный тип индекса — B‑Tree: Tree в названии однозначно указывает на дерево, ну а В это, наверно, Binary? Или Balanced? Или Balanced Binary? Почему‑то долгое время я полагал, что это Balanced Binary, и эта версия даже «работала». На деле всё куда интереснее, предлагаю проследовать под кат, чтобы посмотреть на этот на самом деле скорее низкорослый куст и сравнить его с Red‑Black Tree на Java. Точно куст?
-
B-Tree — сбалансированный куст поиска
В реляционных СУБД есть дефолтный тип индекса — B‑Tree: Tree в названии однозначно указывает на дерево, ну а В это, наверно, Binary? Или Balanced? Или Balanced Binary? Почему‑то долгое время я полагал, что это Balanced Binary, и эта версия даже «работала». На деле всё куда интереснее, предлагаю проследовать под кат, чтобы посмотреть на этот на самом деле скорее низкорослый куст и сравнить его с Red‑Black Tree на Java. Точно куст?
-
Хеш-индексы в PostgreSQL: быстрый поиск или скрытые проблемы?
Хеш-индексы в PostgreSQL - мощный, но недооценённый инструмент. Когда они быстрее B-Tree, а когда наоборот? Простое объяснение, тесты и ключевые нюансы, которые помогут ускорить запросы...
https://habr.com/ru/articles/882106/
#базы_данных #sql #оптимизация_запросов #индексы #btree #hash #производительность #BTree_vs_Hash #разработка #dba
-
Хеш-индексы в PostgreSQL: быстрый поиск или скрытые проблемы?
Хеш-индексы в PostgreSQL - мощный, но недооценённый инструмент. Когда они быстрее B-Tree, а когда наоборот? Простое объяснение, тесты и ключевые нюансы, которые помогут ускорить запросы...
https://habr.com/ru/articles/882106/
#базы_данных #sql #оптимизация_запросов #индексы #btree #hash #производительность #BTree_vs_Hash #разработка #dba
-
Хеш-индексы в PostgreSQL: быстрый поиск или скрытые проблемы?
Хеш-индексы в PostgreSQL - мощный, но недооценённый инструмент. Когда они быстрее B-Tree, а когда наоборот? Простое объяснение, тесты и ключевые нюансы, которые помогут ускорить запросы...
https://habr.com/ru/articles/882106/
#базы_данных #sql #оптимизация_запросов #индексы #btree #hash #производительность #BTree_vs_Hash #разработка #dba
-
[Перевод] Насколько быстры B-деревья по сравнению с хэш-таблицами?
Во многих «скриптовых» языках для стандартных ассоциативных структур данных используется хэш-таблица (hashmap) (объекты Javascript, словари Python и так далее). Хэш-таблицы обладают множеством раздражающих свойств: Уязвимость к hash flooding . В случае защиты от hash flooding случайными seed порядок итераций становится недетерминированным, что мешает при тестировании снэпшотов, создании воспроизводимых сборок и так далее. При вставке может требоваться рехэширование, что в наихудших случаях создаёт для больших хэш-таблиц ужасные задержки. Многократное увеличение больших распределений памяти без фрагментации сложно реализовать в целевых платформах wasm, потому что трюки с виртуальной памятью недоступны, а для страниц невозможно выполнить unmapping. Векторные команды в wasm ограничены, а команды AES отсутствуют. Это делает многие хэш-функции ещё более медленными. Упорядоченные структуры данных наподобие B-деревьев не имеют этих недостатков. Обычно они медленнее хэш-таблиц, но меня удивило, насколько разнятся ожидания людей относительно их скорости.
https://habr.com/ru/articles/849654/
#bдерево #хэштаблицы #btree #hashmap #поисковые_алгоритмы #бенчмарки
-
[Перевод] Насколько быстры B-деревья по сравнению с хэш-таблицами?
Во многих «скриптовых» языках для стандартных ассоциативных структур данных используется хэш-таблица (hashmap) (объекты Javascript, словари Python и так далее). Хэш-таблицы обладают множеством раздражающих свойств: Уязвимость к hash flooding . В случае защиты от hash flooding случайными seed порядок итераций становится недетерминированным, что мешает при тестировании снэпшотов, создании воспроизводимых сборок и так далее. При вставке может требоваться рехэширование, что в наихудших случаях создаёт для больших хэш-таблиц ужасные задержки. Многократное увеличение больших распределений памяти без фрагментации сложно реализовать в целевых платформах wasm, потому что трюки с виртуальной памятью недоступны, а для страниц невозможно выполнить unmapping. Векторные команды в wasm ограничены, а команды AES отсутствуют. Это делает многие хэш-функции ещё более медленными. Упорядоченные структуры данных наподобие B-деревьев не имеют этих недостатков. Обычно они медленнее хэш-таблиц, но меня удивило, насколько разнятся ожидания людей относительно их скорости.
https://habr.com/ru/articles/849654/
#bдерево #хэштаблицы #btree #hashmap #поисковые_алгоритмы #бенчмарки
-
[Перевод] Насколько быстры B-деревья по сравнению с хэш-таблицами?
Во многих «скриптовых» языках для стандартных ассоциативных структур данных используется хэш-таблица (hashmap) (объекты Javascript, словари Python и так далее). Хэш-таблицы обладают множеством раздражающих свойств: Уязвимость к hash flooding . В случае защиты от hash flooding случайными seed порядок итераций становится недетерминированным, что мешает при тестировании снэпшотов, создании воспроизводимых сборок и так далее. При вставке может требоваться рехэширование, что в наихудших случаях создаёт для больших хэш-таблиц ужасные задержки. Многократное увеличение больших распределений памяти без фрагментации сложно реализовать в целевых платформах wasm, потому что трюки с виртуальной памятью недоступны, а для страниц невозможно выполнить unmapping. Векторные команды в wasm ограничены, а команды AES отсутствуют. Это делает многие хэш-функции ещё более медленными. Упорядоченные структуры данных наподобие B-деревьев не имеют этих недостатков. Обычно они медленнее хэш-таблиц, но меня удивило, насколько разнятся ожидания людей относительно их скорости.
https://habr.com/ru/articles/849654/
#bдерево #хэштаблицы #btree #hashmap #поисковые_алгоритмы #бенчмарки
-
Linked is a neat article explaining a lot about b-trees. Especially notable are the excellent visualization and animations which gave me a new way to understand these incredibly important data structures.https://salas.com/2024/09/14/b-trees-and-database-indexes/#database #performance #indexes #btree #databasedesign #datavisualization #datastructure
-
Linked is a neat article explaining a lot about b-trees. Especially notable are the excellent visualization and animations which gave me a new way to understand these incredibly important data structures.https://salas.com/2024/09/14/b-trees-and-database-indexes/#database #performance #indexes #btree #databasedesign #datavisualization #datastructure
-
Linked is a neat article explaining a lot about b-trees. Especially notable are the excellent visualization and animations which gave me a new way to understand these incredibly important data structures.https://salas.com/2024/09/14/b-trees-and-database-indexes/#database #performance #indexes #btree #databasedesign #datavisualization #datastructure