2011-07-04 3 views
0

Possible en double:
Google App Engine - Tracking which indexes are usedComment savoir quels index sont toujours utilisés

J'ai une application avec plusieurs indices, je voudrais nettoyer tous les index non utilisés, pour obtenir de meilleures performances .

Maintenant, j'ai un index.yaml avec juste les index nécessaires mais je ne suis pas vraiment sûr que c'est juste parce que parfois, datastore a besoin d'index composites ou peut-être que j'ai fait une erreur.

La vraie question est de savoir comment utiliser les index?

Le gros problème est que si je supprime un index utilisé, le temps pour l'enlever est très, très long et il est même de construire.

Répondre

1

Le processus utilisé pour être:

  1. clair sur index.yaml sur votre copie de développement local de l'application
  2. terme un ensemble de couverture des tests sur le SDK (ne doit pas couvrir tous les ligne de code, juste chaque requête, ce qui rend plus facile d'écrire ces tests que d'écrire un ensemble de tests unitaires pour les composants de l'application)
  3. télécharger le nouveau index.yaml, qui est maintenant terminé depuis le serveur de développement automatiquement ajoute tout index utilisé dans le fichier
  4. indices de vide.

Il est possible que cela ait changé. Je n'ai pas utilisé GAE depuis un moment et les développeurs ont l'habitude d'introduire de nouvelles et meilleures façons de faire les choses. Mais les vieilles méthodes continuent pratiquement toujours à fonctionner.

[Edit: a trouvé une dupe, donc en supposant cette réponse est encore l'état de l'art, allez upvote Nick Johnson au lieu de moi]

+0

Ok, mais aucune information sur l'indice composite nécessaire par l'environnement de production? – sahid

+0

@sahid: pourquoi l'environnement de production a-t-il besoin d'index différents de l'environnement de développement? Pour autant que je sache, une requête donnée nécessite les mêmes index partout, mais comme je l'ai dit, je pourrais être périmé. –

+0

L'environnement de développement n'a aucun index _need_, bien que vous puissiez spécifier un indicateur de ligne de commande pour le faire semblant. Il génère exactement les index nécessaires à la production. –

Questions connexes