sql >> Databasteknik >  >> NoSQL >> MongoDB

Kan mongodb användas som en inbäddad databas?

(Jag har ännu inte 50 rep-poäng att kommentera och bygga vidare på det accepterade svaret; annars skulle jag, förlåt!)

Du kan bädda in MongoDB i din OEM-lösning men det finns två saker att tänka på:

  1. Det är skrivet i C++, så om du kodar på ett annat språk kan du behöva skriva ett omslag som startar databasprocessen separat.

  2. MongoDB är licensierad under Gnu AGPL-3.0 som är en kopia vänster serverlicens. Det godkända svaret, och Google-gruppcitatet, anger båda korrekt att detta normalt skulle tvinga dig att också bli AGPL-licens. Men de MongoDb uppger att avsikten med licensen är att tillåta förfinningar av deras kod att skickas tillbaka, och att din produkt kommer att förbli separat. Detta får mig att tro att de vanliga reglerna för kopiera vänster inte gäller.

Målet med serverlicensen är att kräva att förbättringar av MongoDB släpps till communityn. Traditionell GPL uppnår ofta inte detta längre eftersom en enorm mängd mjukvara körs i molnet. Till exempel har Google ingen skyldighet att släppa sina förbättringar av MySQL-kärnan – om de gör det är de trevliga.

För att göra ovanstående praktiskt lovar vi att din klientapplikation som använder databasen är ett separat arbete. För att underlätta detta släpps de drivrutiner som stöds av mongodb.org (den del du länkar till din ansökan) under Apache-licens, som är copyleft-fri. Obs:om du vill ha ett undertecknat brev som hävdar ovanstående löfte, begär det via e-post.

Källa:http://www.mongodb.org/display/DOCS/Licensing



  1. Hadoop InputFormat och typer av InputFormat i MapReduce

  2. Varför kan jag inte köra lua script i redis efter omstart?

  3. Fjäderdata och mongodb - enkel återställning med fjäder inom @Transactional

  4. Varning om anslutning till MongoDB med en nodserver