2009-06-25 7 views
2

Je dois augmenter les performances d'une application de structure compacte qui utilise une base de données SQLCe pour conserver les objets mis en cache entre les sessions de l'application. À l'heure actuelle, les objets sont sérialisés en XML et stockés dans une base de données SQLCe, mais après avoir exécuté un outil de profilage, il semble qu'il y ait un surcroît de travail. Je pensais changer cela en un sérialiseur binaire mais est-ce que quelqu'un sait des manières plus efficaces de stocker ces objets pour la récupération rapide? Merci. Mise à jour: Nous venons de découvrir qu'il n'existe pas de support de sérialisation binaire dans un environnement compact, donc pas une option.Quel est le moyen le plus efficace de stocker des objets dans une base de données SQLCe?

+0

Comment faites-vous la sérialisation au format XML? – tjjjohnson

Répondre

2

D'abord vous devez caractériser où le temps est passé. Est-ce dans la sérialisation ou l'insertion de données réelles? Sans le savoir, vous ne pouvez pas essayer efficacement d'améliorer l'action. Et, FYI, proto-buf fournit une sérialisation binaire.

+0

C'est la sérialisation elle-même qui cause les frais généraux, les insertions et sélections sont relativement rapides. J'utilise EQATEC Profiler (http://www.eqatec.com/tools/profiler) qui réduit les temps d'exécution. Je vais jeter un coup d'oeil à proto-buf, merci. – Charlie

+0

Donc vraiment la question n'est pas de savoir comment stocker efficacement les données, c'est comment accélérer la sérialisation. – ctacke

+0

Eh bien, pas nécessairement. Mon problème est que j'ai besoin de persister des données entre les sessions. Sérialiser les objets et les coller dans un magasin de données est un moyen, mais je n'ai pas posé de questions spécifiques sur la sérialisation, car les gens ont peut-être de meilleures suggestions. Je commence à penser que l'implentation actuelle est la mauvaise façon, et peut-être qu'il devrait y avoir un schéma approprié dans la base de données plutôt que de stocker un blob sérialisé? – Charlie

Questions connexes