În articolul precedent ți-am spus povestea noastră și de ce am ales Flutter ca framework pentru dezvoltarea de aplicații mobile. (link către postarea precedentă). Continuăm seria de materiale informative cu opțiunile pe care le ai la dispoziție pentru stocarea datelor, așa că îți explicăm care sunt avantajele și dezavantajele Firebase și SQL.
Bazele de date Firebase
Platforma de dezvoltare Firebase vine cu două soluții de baze de date, Realtime Database și Cloud Firestore. De fapt, Cloud Firestore este versiunea îmbunătățită a Realtime database. Dacă optezi pentru Firebase vei avea posibilitatea de a crea o aplicație cu arhitectură serverless și, în plus, aplicația va colecta în mod automat modificările din baza de date și se va actualiza de sine stătător, adică nu trebuie să intervii manual cu refresh pentru ca aplicația să se conecteze la un server care să trimită notificări atunci când apar modificări. Să îți mai spunem avantaje? Firebase are în spate colosul Google, ceea ce dă un plus de încredere. De asemenea, se integrează ușor cu alte servicii din platforma Firebase, iar datele se stochează în Cloud-ul Google.
AVANTAJE |
DEZAVANTAJE |
Costuri reduse când utilizarea este redusă, chiar 0 dacă utilizarea este nesemnificativă | Costurile cresc pe măsură ce se adună date în baza de date |
Performanța serverului nu îți creează probleme | Scalabilitate limitată, nu este o soluție pentru o aplicație internațională |
Nu te îngrijorează siguranța datelor | Nu e o soluție valabilă pentru orice tip de aplicație |
Nu e necesară o interfață (API) pentru conectarea la baza de date | Necesită atenție mai mare la operațiile pe baza de date pentru a evita costuri extra |
Nu necesită o aplicație tip server pentru a avea o aplicație cu datele actualizate în timp real | Multe operații, în special cele de agregare, sunt realizate pe telefon pentru că baza de date nu le permite, ceea ce poate să ducă la scăderea în performanță a aplicației |
Soluție perfectă pentru o aplicație mică spre medie | Migrarea datelor este un proces dificil |
Baza de date e optimizată în favoarea Firebase |
SQL, avantaje și dezavantaje
Bazele de date SQL reprezintă soluții mature, folosite de platforme globale pentru orice tip de aplicație web, desktop și mobile. SQL reprezintă limbajul standard pentru tratarea bazelor de date relaționale și poate face multiple operațiuni, precum optimizarea și întreținerea bazelor de date. În ceea ce privește stocarea datelor, acestea se realizează pe un server care poate să fie privat. Bazele de date relaționale ce folosesc SQL sunt: MySQL, MariaDB, MSSQL, PostgreSQL, Sybase și Oracle SQL.
Nu putem să nu menționăm aici bazele de date NoSQL care sunt similare cu bazele de date utilizate de platforma Firebase, cele mai cunoscute fiind MongoDB și Amazon DynamoDB.
AVANTAJE |
DEZAVANTAJE |
Utile pentru orice tip de aplicație | Pentru acces e necesară o interfață (API), ceea ce crește costul de dezvoltare al aplicației |
Costuri constante, deci predictibile | Plătești chiar dacă baza de date nu e utilizată |
Interogări în baza de date fără costuri extra | Performanța trebuie monitorizată pentru a asigura că nu sunt probleme cu operațiile pe baza de date. Performanța este legată de numărul de utilizatori care accesează serverul |
Agregarea datelor se poate face pe server – aplicația doare cere datele deja agregate | Siguranța datelor e în mâna dezvoltatorului și deținătorului server-ului |
Migrarea datelor se face ușor | |
Scalabilitate limitată doar de resurse server-ului |
Alegerea unei baze de date influențează performanțele aplicației, motiv pentru care utilizarea unor soluții consacrate precum Firebase powered by Google și SQL oferă un grad ridicat de securitate, accesibilitate și scalabilitate.
0 Comentarii