Beste svaret
Som andre allerede skrev, betyr det å legge til data i den å fylle ut en database.
bakgrunn av begrepet er grunnlaget for databaseteorien. I utgangspunktet består en database av et skjema (de logiske reglene som styrer dataene, implementert som tabellstruktur og begrensninger) – også kalt intensjonen – og befolkningen (fakta representert som data i disse tabellene) – også kalt utvidelsen.
Siden dataene i tabellene kalles populasjon, blir fylling av tabellene med data kalt fylle databasen.
Svar
Hva gjør applikasjonen din? Hvor komplisert er DB-skjemaet ditt? Eller bryr du deg om DB-skjema? Hvor mye bryr du deg om noen av dataene går tapt hvert dusin tusen transaksjoner? Trenger du transnasjonal støtte?
Det avhenger egentlig av naturen til dataene du vil lagre, forholdet mellom enhetene i dataene dine og antall spørsmål den vil utføre hvert minutt, time og dag. Det er ingen sølvkule.
SQL-baserte databasesystemer som MySQL har ikke skalerbarhetsproblemer. I 2008 kjørte Facebook 1800 MySQL-servere med bare to DBA-er. Distribuerte databaser som MongoDB, CouchDB og Cassandra er ikke veldig skalerbare eller stabile når det gjelder å kjøre dem som primært databasesystem for let say 1k maskiner. [1]
MySQL : En relasjonsdatabase som fungerer godt for kommersiell / sluttbrukerapplikasjon der det er et klart forhold mellom forskjellige typer enheter (f.eks. kunder og produkter, brukere og anmeldelser). Brukes på de fleste selskaper du har hørt om. Se MySQL-kunder .
SQLite : «SQLite er et programvarebibliotek som implementerer en selvstendig, serverløs, transaksjonell SQL-databasemotor uten konfigurasjon. SQLite er databasemotoren som er mest distribuert i verden. «[2]
Den brukes i Android-, iPhone- og iOS-enheter , nettlesere (Chrome, Firefox, Safar), PHP og Python, tv-apparater, multimedia-systemer til biler osv. Tenkte det er flott for applikasjoner og mobilapper, og det er ikke ideelt for et nettsted som utfører tusenvis av transaksjoner per sekund. p>
PostgreSQL : En ORDMBS, ACID-kompatibel og transnasjonal DB. Det er en god sammenligning her mellom MySQL og PostreSQL på MySQL vs PostgreSQL ?
MongoDb : En dokumentdatabase. Den lagrer data i rike strukturer, som kart over kart med lister, som inneholder heltall og flytende punktdata. Brukes til skalering (horisontal). Brukes også når du har en enklere datamodell som krever mindre sammenføyninger og trenger relativt enkel utvikling. MongoDb støtter enkel skjæring, mye enklere enn SQL.
Redis : «Redis er en åpen kildekode, i minnet datastrukturlager , brukt som database, cache og meldingsmegler. Den støtter datastrukturer som strenger , hashes , lister , sett , sorterte sett med områdespørsmål, bitmaps , hyperlogger og geospatiale indekser med radius-spørsmål. Redis har innebygd replikering , Lua scripting , LRU-utkastelse , transaksjoner og forskjellige nivåer av persistens på disk , og gir høy tilgjengelighet via Redis Sentinel og automatisk partisjonering med Redis Cluster . » [3]
DynamoDb / SimpleDb : NoSQL db-tjenester, tilgjengelig via web-API. Det er en rask, meget skalerbar databasetjeneste som tilbys. Jeg har sett den primært brukes til hurtigbufring og relativt mindre kompliserte datastrukturer. Det er høye kostnader sammenlignet med DB-systemer. Det er forutsigbar gjenvinningshastighet, teoretisk ubegrenset lagring. Det er flott for lagring av brukerøkt, datastaging og som et cachelag av noe slag.
Avhengig av applikasjonen din, kan det hende du må bruke flere av de ovennevnte. De mest brukte parene er RDBM for datalagring, og et NoSQL db / caching-lag for cache
[1] – Facebook kjører nå 10.000 webservere | Data Center Knowledge [2] – Om SQLite [3] – Introduksjon til Redis – Redis