This is in addition to all the replies above -
If you create a sql table as State Record - data will be stored in the database. If at any point of time App Engine programs stops you can continue from that point on provided Restart is enabled. This is called the restart logic. With restart enabled you don't have to run app. engine program all over again. For this to be true state record cannot be a derived record. It has to be a sql table.
Temp. table is primarily used for set processing. If there are several users running the program at the same time copies of tables are created inorder to process in parallel. Temp. table lives only until the program runs and is dissolved immediately after.