wiki:QueryOptimization

Version 3 (modified by 231017, 20 hours ago) ( diff )

--

Оптимизација на прашалници и погледи

  1. Анализа на поглед 1, добивање на бројот на следбеници и бројот на профили кои ги следи даден корисник
  • Доколку сакаме да видиме за конкретен артист извршуваме:

  • Времето потребно за извршување за овој прашалник е ~6ms. Нема потреба од дополнителни индекси.
  • Доколку сакаме да извршиме некаква анализа, на пример да ги земеме најдобрите 10 корисници според број на следбеници, можеме да извршиме:

  • Потребно време за извршување на овој прашалник е ~200ms. Нема индекс кој може да се додаде за да ги подобри перформансите на овој прашалник.
  • Query plan:

  1. Анализа на поглед 2, најактивни корисници на платформата според бројот на слушања во изминатите 30 дена.
  • Доколку сакаме да видиме кои се најактивните корисници на платформата изминатите 30 дена, извршуваме:

  • Времето потребно за пребарување:

  • ~ 250ms
  • Можеме да додадеме индекс на streamed_at колоната со цел да избегнеме sequential scan на song_streams табелата:

  • Време на извршување по додавање на индекс:

  • ~ 200ms -> ~20% подобри перформанси

Attachments (30)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.