⚾ Специалист по PostgreSQL выдал базу.
Часть 4. Типы индексов в постгрессе
🌳 b_tree - самый типичный, работает в 90% случаев.
#️⃣ hash – сейчас по сути бесполезен. Потому что работает медленнее B-tree и нужен был когда-то потому что попросту занимал меньше места.
📐 gist - это индекс для геоданных и геометрии. Раширения: pg_trgm – поиск по регекспам и по лайкам. Btree_gist – сложные constrains с интервалами.
📐 sp_gist – нет практических применений. Это научный индекс. Более гибкий
🪄 gin - может сильно просадить диск, хорош для текстового поиска,
💬 jsonb – jsonb_ops – операция для поиска по большому джсону, json_pat_ops
◾ brin — (индекс сил Альяна, если вы понимаете о чем я) крайне компактный индекс, если данные упорядочены, то мы можем из блока который читаем проиндексировать наименьшее и наибольшее значение. Это как части в фильмах по сути. Мы не знаем, в какой конкретно минуте хоббиты будут бросать кольцо в лаву, но знаем, что не в первой и не во второй частях, так что там можно не искать (это мой ебанутый пример, не автора). Хороший трейдоф между размерами и производительностью.
#postgresql #андрейсальников
Post #226
465
- 👍 2
- ❤ 1
- 👌 1