I agree that infinite scrolling is terrible, but pagination based on nothing more than the rank isn't great either. Why do I need to guess that names starting with a 'G' could be on page 12 (no 14, no 13)? Just paginate by the first one or two letters then. When doing so, you can benefit from database indices again while improving usability.