2012-04-09 2 views
11

ho scoperto RavenDB e mi è piaciuto, ma poi ho visto la patente ... GPL o PayNoSQL alternativa libera (in alternativa a RavenDB) per C# sviluppo

Così sto cercando bene gratuito per chiuso- sviluppo Cen di sviluppo raven-db alternativo. Sembra che anche MongoDB e Berkley siano GPL.

Ed è molto meglio per me trovare una soluzione integrata.

+0

Cosa c'è di sbagliato nella licenza gpl? non è libero allora? – nawfal

+1

non è gratuito perché non posso scrivere opensource con le regole aziendali – Cynede

+0

È possibile utilizzare direttamente Lucene.Net (licenza Apache) che viene utilizzata da ravendb –

risposta

4

Se ho capito bene, allora è possibile safely use MongoDB con il suo modello di licenza dual core/driver.

E ancora una cosa, AFAIK a meno che il tuo codice non venga rilasciato in un "mondo" puoi fare quello che vuoi.

+1

Fai attenzione - specialmente con i database GPL e cosa significa "collegare" il tuo codice. Il tuo codice potrebbe non avere nulla a che fare con il database, ma la tua mano è costretta a concedere licenze se mai "distribuisci" il tuo codice. La definizione di "distribuire" può essere ambigua, specialmente sul web. Quando si tratta di cose come database e widget GUI, LGPL è una scommessa più sicura. – mattmc3

5

Come RavenDB e MongoDB, CouchDB è un documento archivio di database NoSQL con API REST (in modo da poter utilizzare con qualsiasi linguaggio).

Ma CouchDB è sotto Apache 2.0, che può essere utilizzato su progetto commerciale/chiuso

+1

Couchdb purtroppo non incorporato – Cynede

+0

Che tipo di database nosql stai cercando, eccetto possibilità embedded? Solo documento orientato o no? – Kakawait

+0

non orientato al documento – Cynede

-1

Essere GPL non significa che non è possibile utilizzarlo in un progetto closed source, a meno che non si ha intenzione di modificare l'origine.

MODIFICA: per essere più chiari, la cosa fondamentale qui è la distribuzione di eventuali modifiche. Puoi utilizzare il software GPL e fare tutto ciò che ti piace in-house, ma non puoi distribuire i binari di queste modifiche senza rendere disponibile la fonte (a meno che tu non abbia raggiunto un accordo con il detentore del copyright).

non so nulla in merito a Raven-db, ma immagino si riduce a uno dei seguenti scenari:

  1. vostre interfacce applicative direttamente con la fonte. Se la tua applicazione non può essere compilata senza il progetto GPL, allora la tua domanda deve essere concessa in licenza sotto licenza GPL, o devi avere il permesso dal detentore del copyright. LGPL è diverso, ma hai dichiarato GPL nella tua domanda.
  2. L'applicazione può essere compilata senza il software GPL, ma deve essere eseguita. Sarebbe come se stessi costruendo un'applicazione su MySQL e istruendo i clienti a configurare loro stessi un'istanza MySQL.
+4

IANAL, ma AFAIK, è totalmente OK modificare il codice sorgente GPL e non pubblicare le modifiche sotto GPL, purché l'applicazione non sia distribuita.Se viene distribuita un'applicazione che utilizza librerie GPL, la GPL è "virale" e il L'applicazione deve essere posta sotto la GPL. Se l'applicazione rimane in-house e non è distribuita, non deve necessariamente essere GPLd. – hangy

+0

Hai perfettamente ragione, avrei dovuto essere più chiaro. –

3

https://github.com/mcintyre321/PieDb è una base molto MIT-licenza incorporato WOT documento db ho scritto

E

  • scrive oggetti per App_Data utilizzando json.net documenti serializzati
  • utilizza Lucene.Net.Linq di fornire supporto IQueryable base
  • concorrenza ottimistica
  • non richiede alcuna configurazione

Sarebbe bello avere dietro di sé altri sviluppatori, dato che ha avuto solo un fine settimana di lavoro su di esso, ma funziona per casi semplici come una sostituzione RavenDb.

+0

Ciao, perché non usare Lucene.Net? – Cynede

+0

Invece di un database intendi? O per l'interrogazione? Lucene.Net.Linq è un provider IQueryable, utilizza Lucene.Net sotto il cofano. – mcintyre321

+0

Intendo invece del database. – Cynede

3

iBoxDB.net è un database nosql integrabile leggero con supporto transazioni. può incorporare in applicazione di rete, windows phone, applicazione mono, unity3d, nodo.js