I've been working with Magento for years and I feel like this is a stupid question but anyway, I feel like I need some clarifications.
As you may know, Magento 1 comes with several index tables such as (I won't list them all):
cataloginventory_stock_status_idxcatalog_category_anc_categs_index_idxcatalog_category_anc_products_index_idxcatalog_category_product_indexcatalog_product_enabled_indexcatalog_product_index_*tablesreport_viewed_product_index
I know what is the purpose of an index, however I'm wondering how is it better to use index tables over MySQL indexes ? I'm wondering especially when should one use index tables in a custom module ?