6
votes

Est-il préférable de stocker des données dans la base de données Plist ou SQLite?

Dans mon application iPhone, j'ai une grande quantité de données, c'est-à-dire environ 1000 pages de texte.

Où dois-je faire pour les stocker?

devrais-je utiliser la table de base de données Plist ou SQLite?

Lequel d'entre eux se révélerait être plus efficace?

S'il vous plaît aider et suggérer.

Merci d'avance.


6 Réponses :


9
votes

Pour une grande quantité de données, SQLite ou CoreData sont meilleures car toutes les données ne sont pas chargées en mémoire pour y accéder.
Avec le plis, tout le fichier est lu en mémoire. Après, vous ne pouvez conserver que des données sur ce que vous voulez, mais il n'est pas optimisé.


1 commentaires

Merci que cela rend vraiment facile de décider lequel utiliser. Je n'avais jamais expliqué aussi clairement que, voulez-vous toutes les données chargées dans la mémoire à la fois ou non.



1
votes

Vous devez utiliser une plist pour stocker les paramètres de configuration.

Pour ce que vous faites, j'utiliserais SQLite3 ou stockage de données de base.


0 commentaires

1
votes

Le plist n'est vraiment qu'un fichier XML afin que les avantages (tels sont à la fois facilement lisibles par l'homme et l'ordinateur) et les inconvénients de XML (efficacité de stockage / récupération) s'appliquent.

Pendant que SQLite vous donne l'avantage de SQL évidemment. Pour les grandes données SQLite serait le meilleur choix


0 commentaires

1
votes

Qu'est-ce qui est important, c'est la façon dont vous y accéderez. Si c'est quelque chose que vous accédez au hasard ou dans de petites portions, vous utiliseriez une base de données comme SQLite. Si c'est quelque chose que vous utilisez tous de rougly à la fois, une plis est bien. Comme @ Benoît mentionné, les plis sont chargés dans une mémoire complètement. Pour quelque chose comme un livre, vous pouvez également envisager de stocker des pages dans des fichiers distincts, à l'aide du système de fichiers pour gérer l'accès (en fonction de la façon dont vous avez l'intention de l'utiliser bien sûr).


0 commentaires

5
votes

dépend de la manière et de ce que vous voulez stocker les données:

Utilisez SQLite si:

  1. Les données doivent être accessibles uniquement partiellement
  2. Mises à jour répétées
  3. Les données elles-mêmes sont grandes en termes d'octets

    Utilisez le plist autrement !!

    Dans votre cas, je recommanderais, en utilisant SQLite 3 ou Coredata.


0 commentaires

0
votes

Listes de propriétés

Un plis est simplement une liste de paires de valeur de clé imbriquées pouvant contenir des types de données communs tels que des chaînes, des nombres, des tableaux et des dictionnaires.

avantages

  • simple à comprendre.
  • facile à travailler avec.

    contre

    ne peut pas exécuter des requêtes complexes sur eux (au moins pas facilement). Vous devez lire le fichier entier en mémoire pour obtenir des données et enregistrer le fichier entier pour modifier quoi que ce soit.

    sqlite

    Jusqu'à ce que Coredata vienne, c'était le moyen populaire de lire et d'écrire des données dans des applications iPhone. Si votre développeur Web, ce n'est rien de nouveau.

    avantages

    • Contrairement aux plisters, vous n'avez pas à charger toute la base de données à l'avant. Cela rend SQLite plus adapté aux applications avec beaucoup de données.
    • mieux que les plichés pour la tranchée et la désactivation des données.

      contre

      courbe d'apprentissage plus raide que les plis. Peut devenir fastidieux de travailler avec.

      données de base

      Son nouveau, son excitant, et c'est probablement ce que la plupart des développeurs utiliseront à partir de là.

      Je n'ai pas passé assez de temps avec Coredata pour la résumer; Découvrez les tutoriels (ci-dessous) pour en savoir plus à ce sujet.

      avantages

      • Presque tous les avantages de SQLite avec beaucoup moins de tracas (Apple fait beaucoup de travail sale pour vous).

      • méthode préférée d'Apple, il a beaucoup plus de documentation officielle et de code d'exemple (il semble que les articles et le code de l'échantillon des deux autres méthodes ont mystérieusement disparu du site Web d'Apple).

        contre

        • courbe d'apprentissage plus raide que les plis.
        • tueur: fonctionne uniquement sur iPhone OS> 3.0. Son tueur si votre marché consiste en grande partie des utilisateurs de l'iPod Touch (qui doivent payer des mises à niveau).

0 commentaires