Without an index, finding rows means scanning the whole table, which gets slow as it grows. An index is a separate sorted structure, usually a B-tree, that lets the database jump straight to matching rows. Add one on columns you often filter, join or sort by. Do not index everything: each index uses space and slows down inserts and updates.