Hi Elias,

You only need indexes for certain kinds of queries, such as those with
inequality filters, or some ancestor queries.  You can run other queries
immediately after a kind is created. Composite index queries can be read up
on here:
http://code.google.com/appengine/docs/datastore/queriesandindexes.html
Also, this article is very helpful:
http://code.google.com/appengine/articles/index_building.html

If you create a kind you believe will need a composite index, you might try
to log the kind and query type, and periodically add those to your
app.yaml.  Please also be aware that there is currently a limit on 100
composite indexes per application.

As for the reorganization script, you will need to write this script to
modify data in batches, probably using some kind of request argument to
indicate the start and end of the batch which you are processing.  You will
need to experiment with the amount of data in one request that you can put()
and delete(), since it depends largely on the size and shape of your data.

-Marzia


On Tue, Dec 30, 2008 at 2:11 PM, Elias Athanasopoulos <
elias.athanasopou...@gmail.com> wrote:

>
> Hello!
>
> My application needs to dynamically create entities. In short, I am
> creating an entity per user, in the fashion:
>
> table = type(name, (UserGeneric,), {})
>
> where UserGeneric is a class with all user properties needed by my
> application. So, entities are created at run-time. The problem is that
> queries lack of an index, since queries are targeting entities have
> been created at run-time. For example if a user joins the application
> with name 'foo' a new entity (for example '__foo') will be created,
> but every query targeting that entity will fail, since there is no way
> to generate an index for it. Is there any workaround?
>
> In another context, I need to reorganize my entities in the live
> server using a script. This script is meant to run once, just to copy
> records for old tables to new ones. However, I am always getting a
> time-out when I am trying to execute the script in the live server.
> Any hints?
>
> Thanks in advance.
>
> Regards,
> Elias
>
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to