1) it's to have customers that generate more revenue and benefit from the service to pay more
2) as a company, you also don't want your users to abuse resources and upload unneccessary items to the database, after all, every item costs money (cents add up). This is nothing abnormal -- lots of companies are using a Usage-based pricing model.