In large metro cities , there are many restrictions on keeping pets, especially in apartment complexes, as the pets may make the common areas dirty. So relatively few people are keeping pets at home. The houses are also smaller, so there is less space to keep a pet at home.
However in small towns, many people live in independent and larger houses, and do not have any security arrangement, as it is not economical to hire a watchman for a single house, so they will often keep a dog as a pet for security. The dog will be trained to bark at strangers who try to enter the house.
As a result, in large cities, there are relatively few pet shops compared for all types of pets to small towns where almost every locality has a pet shop stocking different kinds of pet foods and other pet supplies.