Qual é o melhor filtro para consultar uma propriedade de armazenamento de dados de nome completo usando apenas o primeiro nome?

Eu tenho este modelo de armazenamento de dados:

class Person(db.Model):
    person_name = db.StringProperty(required = True)        
    nacionality = db.StringProperty(required = True)
    marital_status = db.StringProperty(required = True)
    profession = db.StringProperty(required = True)
    SSN = db.IntegerProperty(required = True)
    driver_license = db.IntegerProperty(required = True)
    address = db.PostalAddressProperty(required = True)

Neste modelo, person_name poderia ser algo assim: 'Carl Sagan' (existe apenas na propriedade para o nome completo). Mas quando eu pergunto, desta forma:

    searched_name = 'Carl'
    p = Person.all()
    persons = p.filter('person_name >=', searched_name)

Eu obtive, como resultado, nomes que não começam com 'Carl' ou nem têm 'Carl' em nenhuma parte do nome. Se eu consultar desta maneira:persons = p.filter('person_name >=', searched_name) Eu não tenho nenhum resultado (até 'Carl Sagan' não foi encontrado). Então, eu gostaria de saber: qual é o melhor filtro para esse tipo de consulta? (querendo uma propriedade de nome completa usando apenas o primeiro nome)?

questionAnswers(1)

yourAnswerToTheQuestion