While perhaps not intentional, this is a great illustration of why RDMBS are so great for general purpose data storage. If your data have fields like "birthdate" and "last_name" and you need to be able to do quick retrievals based on equality or ranges of those values, use a relational database. They've had indexing and index maintenance figured out for decades.