Best way to store emails from a landing page on google app engine?
Create an email entity, and use the email address as the entities key. 
This immediately will prevent duplicates.  
Fetching all of the email addresses can be very efficient as you only need query by kind with a keys only query, and use map_async to process the emails.  
In addition you could use these entities to store progress of email, maybe provide an audit trail.
To increase speed at time of emailing, you could periodically build cached lists of the emails, either in the datastore or stored in blob storage.
I have a landing page set up and have a html text box (with error checking for valid emails) put together with a submit button. I am currently using NDB to store different entities.
What I'm looking for is the best way to store just the email that a person enters. So likely hundreds or thousands of emails will be entered, there shouldn't be duplicates, and eventually we will want to use all of those emails to send a large news update to everyone who entered in their emails. 
What is the best way to store this email data with these contraints:

Fast duplicate checking
Quick callback for sending emails en masse