2009-07-20 5 views
1

Je développe une calculatrice GPS qui utilise beaucoup de données pour calculer différentes valeurs, telles que RMSE (erreur quadratique moyenne) et NSSDA (norme nationale pour données spatiales). Les données proviennent d'une variété de différents modèles d'unités GPS avec un grand degré de variation, c'est-à-dire des antennes internes/externes; auto, WAAS, DGPS, signal PPS; ouvert, léger, moyen, couvert lourd; etc. Fondamentalement, un grand nombre de données doivent être stockées pour calculer l'énorme variété de résultats souhaités.SQLite et Flex

Les données seront toujours lues et seules de nouvelles données seront ajoutées dans de rares conditions. Si cela doit être ajouté, ce sera probablement par l'un des développeurs, et non par les utilisateurs du programme. Pour cette raison, nous sommes très intéressés par l'utilisation de SQLite. Nous avons Oracle sur notre serveur, mais toute création de tables doit être faite par des instances supérieures, ce qui peut parfois prendre des semaines. Pour cette raison, SQLite semble fonctionner pour nous. Je n'ai jamais utilisé SQLite, donc je me demande si c'est le bon choix. Cependant, la plupart des documentations sur SQLite et Flex semblent appartenir aux applications AIR et SQLite en tant que base de données locale. Est-ce que le fait d'avoir un fichier SQLite sur le serveur avec une application flexible effectuant les calculs désirés fonctionnerait même? Ou suis-je loin de la marque sur l'utilisation des fichiers SQLite?

+0

Pourquoi la création de tables dans la base de données Oracle prend-elle plusieurs semaines? Vous devez demander aux instances supérieures de créer un schéma spécial que vous pouvez utiliser dans cette base de données, dans le schéma vous avez la liberté de créer des tables. peut-être il est temps pour un db Oracle séparé pour les développeurs? Et vous ne pouvez pas utiliser Oracle locator pour stocker le naissain données ial? Oracle locator est le sous-ensemble libre d'Oracle spatial. – Theo

+0

Normalement, je dois contacter l'administrateur db par courrier électronique avec toutes les instructions de création pour les tables, qui les exécute ensuite dans Oracle. Je ne sais pas si c'est parce que je suis juste un étudiant stagiaire ou quoi, mais j'ai toujours eu environ une semaine de retard juste pour avoir une réponse en retour. Et c'est s'il n'y a pas d'erreurs, ce qui n'est bien sûr pas très souvent. Cet administrateur est nouveau pour Oracle, ce qui rend le processus ennuyeux (pas que je prétends savoir beaucoup). J'essayais de le contourner simplement parce que ma situation ne nécessite que des lectures de la DB. –

+0

En outre, nous sommes dans les premières étapes d'une énorme migration de données. Toutes les applications qui utilisent Oracle sont soumises à un barrage de paperasserie et de tests pour assurer la sécurité sur les nouveaux serveurs. Ma ligne de pensée était qu'il serait plus simple et beaucoup moins long de ne pas utiliser Oracle et d'utiliser une base de données SQLite. –

Répondre

0

Je ne connais pas Flex. Mais j'aime beaucoup SQLite.

Votre application (lire des données avec très rarement mises à jour - la plupart du temps d'une seule instance) Je verrais comme une situation idéale pour SQLite! SQLite est très performant et évolue également avec élégance. La seule application, je ne le recommanderais pas, est quand vous avez un lourd fardeau de transaction (beaucoup de modifications simultanées de contenu de DB). Aussi quand vous devez avoir une énorme masse de données à manipuler (des millions ou des milliards de lignes) je penserais plus probablement à une base de données adulte avec la possibilité d'utiliser plusieurs processeurs ou instances ...

ne soyez pas votre cas ici.

0

Une application Flex ne pourra pas utiliser une base de données SQLite située sur l'ordinateur de l'utilisateur - pour cela, vous devez utiliser AIR. Mais vous semblez dire que la base de données SQLite restera sur le serveur et sera interrogée par le client Flex. Vous ne semblez vouloir utiliser SQLite que parce que la mise en place d'éléments dans Oracle prend trop de temps à cause de processus métier internes. Donc, vous pouvez certainement installer une base de données SQLite sur votre serveur, servir les données qu'il contient aux clients, utiliser une foule de frameworks côté serveur (mon préféré: Django), et lire et présenter les données en utilisant Flex dans le navigateur du client. SQLite est un bon choix pour les applications de petite à moyenne taille.

0

Pas comme vous le pensez probablement, non - il n'y a pas de client SQLite intégré dans Flex proprement dit. À partir d'une application Web basée sur Flex, la seule façon d'accéder à une base de données relationnelle (même un fichier SQLite) passe par une API de service Web.

Si vous ne l'avez pas déjà couru à travers elle, voici une discussion StackOverflow utile pour vous traiter l'évolutivité de SQLite spécifiquement:

How Scalable is SQLite?

D'après votre description du projet, en supposant que vous n'êtes pas va avoir un volume très élevé (même si c'est seulement des sélections), SQLite pourrait être un choix acceptable.

Mais ma suggestion personnelle serait que si vous avez n'importe quelle capacité pour exécuter même une simple instance de RDBMS quelque part (MySQL, par exemple), allez certainement cette route. Vous pourriez simplement être limité opérationnellement - chaque entreprise est différente dans ce sens.Mais si vous pouvez l'aider, ne choisissez pas un fichier plat comme base de données de votre application Web. Même si vous ne rencontrez pas de problèmes de concurrence dès le départ, vous finirez probablement par les rencontrer. C'est un mal de tête à éviter si vous pouvez le gérer.

+0

Merci pour le conseil. Je n'ai pas réalisé que SQLite était uniquement pris en charge dans les applications AIR. –

0

J'adore sqlLITE mais je ne l'ai utilisé qu'avec Perl.

Vous pouvez utiliser quelque chose comme SimpleDB d'Amazon qui est une base de données accessible en tant que webService. C'est également gratuit si vous avez moins de 1 Go de données et utilisez-le moins de 25 heures par mois.

Lien vers SimpleDB http://aws.amazon.com/simpledb/

Il y a une bibliothèque AS3 pour SimpleDB, mais je n'ai pas la réputation d'avoir plus d'un lien :-(.. Donc google: "Amazon SimpleDB illustratedlife"

Good Luck