sql >> Database >  >> RDS >> Mysql

Waarom schalen NoSql-databases beter dan relationele databases? Hoe moet ik hiertussen kiezen?

Een blog zoals https://neo4j.com/blog/acid -vs-base-consistency-models-explained/ legt BASE op deze manier uit:

Dit niveau van dubbelzinnigheid klinkt niet erg betrouwbaar, toch? Ze ruilen beschikbaarheid en consistentie in om prestaties en schaalbaarheid te verbeteren.

Dit is prima als u een service uitvoert die tolerant is voor niet-overeenkomende gegevens of verouderde gegevens, of die af en toe een kleine hoeveelheid gegevensverlies kan verdragen. Als deze problemen zelden voorkomen, maar u bijna altijd superieure prestaties krijgt, is dat zeer aantrekkelijk. En nog belangrijker, het demonstreert goed.

Maar als je een service moet draaien met strikte eisen voor data-integriteit, is dat niet goed. Als u door het verliezen van zelfs maar één gegevensrecord in de problemen komt met auditors, of als u gegevens die u net een moment eerder hebt vastgelegd niet betrouwbaar kunt lezen omdat die vastlegging tijd nodig heeft om zich naar alle knooppunten van uw cluster te verspreiden, kan dit een deal-breaker zijn .

Welke gegevensopslag u moet kiezen, hangt dus af van de vereisten van uw app. Alleen jij kunt beoordelen of de ontspannen beschikbaarheid en consistentie van een BASE-datastore voldoende is voor de behoeften van je app.



  1. voeg autoincrement in tweede kolom in

  2. Voorkom automatische verhoging op MySQL dubbele invoeging

  3. Hoe paginaweergaven te volgen zonder de MySQL DB te verslaan

  4. Zeer langzaam verwijderen op mysql-basis met subquery