Nadelen van Firebase: beperkingen om op te letten

Een van de meest populaire Baas-oplossingen, Firebase, werd in 2011 gelanceerd en in 2014 overgenomen door Google.

Tegenwoordig biedt deze real-time database 18 diensten en bekleedt een van de leidende posities op de markt.Voordat we beginnen, willen we u een vraag stellen:

Bent u geïnteresseerd om Firebase in uw project te gebruiken?

Elke software heeft een backend nodig, en dit is waar Backend-as-a-Service (Baas) -oplossingen een belangrijke rol spelen. Als gevolg hiervan is de ontwikkeling van je back-end zijde geautomatiseerd. Alle processen zoals databasebeheer, gebruikersauthenticatie, updates, pushmeldingen, enz. worden achter de schermen verzorgd. 

 

We hebben onlangs besproken waarom Firebase een geweldige oplossing is om je MVP te bouwen. Net als elke andere software heeft Firebase ook zijn beperkingen en nadelen. Laten we eens nader bekijken wat de obstakels zijn bij het gebruik van dit softwareontwikkelingsplatform.

1. Beperkte ondersteuning voor iOS-functies

Hoewel het wordt geadverteerd als een platformonafhankelijke oplossing, richt Firebase zich nog steeds meer op de Android-apparaten. Logisch, aangezien Android commercieel wordt gesponsord door Google. Het is heel eenvoudig om Firebase Test Lab te integreren met Android Studio. Wat iOS betreft, gaan de functies in Firebase niet altijd hand in hand met Android – pas in 2018 kondigde Test Lab bèta-ondersteuning aan voor sommige iOS-testapparaten. 

Het pluspunt van dit nadeel is dat Firebase voortdurend verandert. Als je de versies van 2018 en 2020 vergelijkt, zie je het hoofdproduct niet eens. Beperkte ondersteuning voor bepaalde iOS-functies is echter iets om in gedachten te houden voor je product. 

2. Onvoorspelbare prijzen 

Firebase is er in twee versies: Spark Plan en Blaze Plan. Het Spark Plan is 100% gratis en het is ideaal voor degenen die net met Firebase zijn begonnen. Blaze Plan is een ‘pay as you go’-optie voor apps op schaal. Hier is het waar het lastig wordt – er is geen manier om van tevoren te weten hoe de toename van het verkeer uiteindelijk de prijs zal beïnvloeden. Hoe meer je product wordt gebruikt, hoe duurder Firebase wordt. Aangezien er geen vaste prijs is voor het Blaze Plan, kan de groei van je bedrijf zowel een zegen als een vloek worden. 

En om eerlijk te zijn, vinden zelfs wij als professionele Firebase-integrators het soms moeilijk om de vraag van de klant over toekomstige kosten van het gebruik van Firebase te beantwoorden. Overigens hebben we een onderwerp in ons artikel over de ontwikkelingskosten van apps enigszins behandeld. 

3. Problemen met realtime synchronisatie

Firebase is erg gericht op realtime synchronisatie. Dit kan uitlopen op een gegevensconflict – als iemand gegevens invoert, wordt het scherm automatisch in realtime aangepast voor alle gebruikers tegelijk. Voor velen is het handiger om een updatemelding te ontvangen in plaats van automatische aanpassingen.

            

4. Beperkte zoekmogelijkheden

Firebase gebruikt Realtime Database als hoofdopslag en heeft geen filter voor mogelijkheden. Firebase gebruikt ook het JSON-bestandsformaat, waardoor je hele database een gigantisch JSON-bestand wordt. Door een database als één bestand te hebben, is het niet mogelijk om relaties tussen verschillende gegevensbestanden te introduceren. 

Hierdoor kun je niet meer dan één sleutel tegelijk bevragen. Je kunt niet tegelijk gebruikerslijst en opgeslagen bestanden bevragen in Firebase.  

5. Problemen met gegevensmigratie

Hoe meer je product groeit, hoe meer problemen met datamigratie je kunt ondervinden. Zoals eerder vermeld, gebruikt Firebase JSON met bijna geen SQL-functies, waardoor er een probleem ontstaat om vanuit de database te migreren. Met deze BaaS moet je met gegevens omgaan zoals ze dat doen. 

Bijvoorbeeld als je grote hoeveelheden gegevens in een SQL-database wilt verplaatsen, kun je query’s in SQL schrijven en de informatie ophalen die je nodig hebt. Firebase staat dit niet toe. Het migreren van gegevens in Firebase is veel gecompliceerder dan in de meeste SQL-databases. 

6. Vendor lock-in

Zoals je wellicht hebt begrepen, wordt Firebase geleverd met verschillende inherente functies en bijzonderheden die nergens anders voorkomen. Dit en het datamigratieprobleem maken het moeilijk om af te stappen van Firebase. Het biedt je geen tools om je gegevens naar een ander platform te migreren. Als gevolg hiervan zit je met één leverancier vast en moet je nemen wat ze je aanbieden. Dit omvat het aanpassen aan alle veranderingen, meegaan met de prijsstijging (zie p.1), enz. 

7. Werkt niet in de landen waar Google niet toegestaan is

Eenvoudig maar toch noodzakelijk om te vermelden: Firebase werkt niet in de landen waar Google niet toegestaan is. Je kunt het Google-transparantierapport bekijken voor de meest recente lijst met landen die Google en / of sommige van zijn services verbieden. 

Samenvattend is er op zich niets mis met Firebase als oplossing. Het is een zeer krachtig hulpmiddel voor de juiste gevallen en de positie op de markt is daarvan het bewijs. 

Als je deze nadelen van cruciaal belang vindt voor je bedrijf, wat zijn dan de alternatieven? Laten we eens kijken hoe AWS Amplify daarmee overeenstemt: 

  • Operatieve oplossing voor de mobiele en webapplicaties.
  • Nummer 1 cloudoplossing ter wereld, die een groter aantal regio’s en verschillende cloudservices bedekt 
  • Amplify werkt met een meer geavanceerde database – DynamoDB
  • In het geval dat grote functionele veranderingen nodig zijn, zullen resources AWS en architectuur Amplify het mogelijk maken om gegevens te migreren naar een relationele database of om dezelfde DynamoDB te gebruiken om over te stappen naar een meer geavanceerde en beheersbare oplossing zoals Serverless, met behulp van AWS Lambda als een zakelijke logische processor en architecturale oplossingen zonder het product naar een andere cloudprovider te migreren. 

Daarom bestuderen we bij Moqod grondig de aard van de data van het toekomstige product en bespreken we met de klant de functionele toekomst van het product, niet alleen als IT, maar ook als Business oplossing. 

Op basis van onze uitgebreide ervaring met het gebruik van Firebase en AWS in onze eigen producten en die van onze klanten, helpen we altijd graag bij het kiezen van de technisch meest rationele en zakelijk optimale oplossing. 

Conclusie

Voor een nieuwe, snelle MVP met een solide database is Firebase een geweldige manier om te beginnen. Als je echter eenmaal met Firebase bent begonnen, moet je dit waarschijnlijk tot het einde volhouden. Velen raden Firebase niet aan voor groeiende projecten en projecten met complexe gegevens vanwege de redenen die in het artikel worden genoemd. Er zijn veel functies om in Firebase te verkennen en te beslissen of dit de juiste oplossing is voor je product in plaats van te haasten, net als bij elke andere tool. 

Aarzel niet om contact met ons op te nemen als je meer advies over dit onderwerp wilt – we helpen je graag verder!