RavenDB-ontwikkeling: uiteindelik, 'n soliede dokumentgebaseerde databasis vir Windows?
RavenDB is 'n dokumentgerigte NoSQL-databasisstelsel wat elke dokument in JSON-formaat stoor.
Dit het ontwikkel uit die gebrek aan beskikbare dokumentdatabasisse wat op 'n Windows-stelsel sou werk sonder om beduidende probleme te veroorsaak. Daar is wel toepassings wat handel oor dokumentdatabasisse, maar niks is spesifiek vir die .NET-raamwerk ontwikkel nie.
1 Aan die begin: Wat is databasisse?
1.1 Wat is 'n NoSQL-databasis?
1.2 Wat is 'n dokument-georiënteerde databasis?
2 RavenDB Geskiedenis
4.1 Amptelike bronne
4.2 Aanlyn tutoriale
4.4 Aanlyn gemeenskappe
5 Go Forth en Master Raven
Aan die begin: Wat is databasisse?
Databasisse word gebruik om groot hoeveelhede data te stoor en te organiseer. Daar is baie verskillende soorte databasisse, maar as dit kom by sagteware-ontwikkeling, is die mees gebruikte tipe 'n verhoudingsdatabasis. Die meeste verhoudingsdatabasisse gebruik die SQL-navraagtaal om toegang te verkry tot die data wat in vooraf gedefinieerde tabelle gestoor is. Die kompleksiteit van SQL-databasisse het ontwikkelaars daartoe gelei om 'n eenvoudiger benadering te vind wat aanleiding gegee het tot NoSQL-databasisse.
Wat is 'n NoSQL-databasis?
NoSQL-databasisse bied 'n eenvoudiger en vinniger manier om 'n buitengewoon groot volume verskillende datatipes te organiseer. In plaas daarvan om vooraf gedefinieerde strukture te gebruik om die data te stoor, wat vereis dat die databasis vanlyn geneem word om veranderinge aan te bring, laat NoSQL-databasisse programmeerders toe om nuwe data op die vlug te voeg. Daar is verskillende soorte NoSQL-databasisse, afhangend van watter model hulle gebruik om data te stoor. Een model om data te stoor is 'n dokument-georiënteerde databasis soos XML of RavenDB. Ander bevat sleutelwaarde-winkels soos BerkelyDB, breë kolomwinkels soos Cassandra, grafiese databasisse soos Neo4J, en meer.
Wat is 'n dokument-georiënteerde databasis?
'N Dokument-georiënteerde databasis stoor alle gegewens rakende 'n enkele objek in 'n enkele dokument, tipies in JSON- of XML-formaat. Dit maak die kartering van voorwerpe in die databasis baie makliker.
Die man agter hierdie databasisstelsel is Oren Eini, 'n onafhanklike konsultant wat streef om gehalte sagteware te bevorder en pynpunte in sagteware-ontwikkeling te verminder. Soos baie programmeerders en sagteware-ontwikkelaars wat probeer om hul vaardighede uit te brei, wou Oren sy Erlang-vermoëns verder stoot, sodat hy die CouchDB-bronkode wil lees.
Dit het sy belangstelling in NoSQL ontlok. As gevolg daarvan het hy sy eie dokumentdatabasis begin implementeer. Dit was die eerste weergawe van wat RavenDB geword het, en dinge het van daar af natuurlik verloop.
Toe Oren besef dat dokumentdatabasisse 'n groter toepassing kan hê en dat .NET-ontwikkelaars daarby kan baat vind, het hy sy aanvanklike idee verfyn en is RavenDB gebore. Dit is nog steeds 'n jong projek, maar bring baie voordele op die tafel vir die .NET-ekosisteem.
RavenDB is open source en het 'n kommersiële lisensie beskikbaar. Dit het die volgende kenmerke:
Dit bevat 'n ten volle funksionele .NET- en Java-kliënt-API's.
Dit bied ondersteuning wat ontwikkelaars in staat stel om dinge soos dokumente-samesmeltings, ouditering, weergawe en magtiging te doen.
Dit is skaalbaar en veilig.
Dit werk natuurlik op Windows.
En dit is gebou met die oog op werkverrigting – die opberging kan tot 16 TB op 'n enkele masjien hanteer.
Alhoewel dit relatief jonk is (die aanvanklike konsep is in 2009 ontwikkel), is daar verskillende bronne beskikbaar om u met RavenDB aan die gang te kry. Dit bevat aanlynbronne, boeke en 'n paar aanlyngemeenskappe waar u vrae kan stel en u probleme en oplossings met ander kan deel.
Die volgende bronne bevat die lys van amptelike webwerwe, dokumentasie en beginstappe.
Amptelike webwerf: die aanlynhuis van RavenDB waar u meer daaroor kan leer en dit kan aflaai.
RavenDB-dokumentasie: dit is waar al die amptelike dokumente gestoor word.
Hibernating Rhinos: die onderneming wat gebore is uit werk aan RavenDB het 'n wonderlike blog met 'n lekker versameling tutoriale en artikels.
Ayende.com: die amptelike blog van Oren Eini wat onder die skuilnaam Ayende Rahien skryf en gereeld blogposte publiseer wat voorbeelde toon van die stelsel wat in gebruik is.
Die tutoriale in hierdie afdeling wissel van begin tot meer gevorderd en dek alles van algemene konsepte tot spesifieke toepassings.
RavenDB – 'n Inleiding: 'n inleidende artikel wat die basiese aspekte met kode-voorbeelde verduidelik.
Aan die begin met RavenDB: nog 'n inleidende artikel gepubliseer deur Code Mag.
RavenDB se verborge kenmerke: hierdie artikel ondersoek twee van die minder bekende kenmerke van RavenDB en wys hoe dit u toepassing en u besigheid kan verbeter..
RavenDB Oorsig: 'n aanbieding met 'n hoëvlak tegniese oorsig van die funksies en vermoëns daarvan.
Dokumentdatabasisse en RavenDB: nog 'n skyfievertoning wat 'n oorsig bied van verskillende dokumentdatabasisse.
Geo-ruimtelike soektogte met RavenDB: 'n meer gevorderde tutoriaal wat wys hoe om ingewikkelde geo-ruimtelike soektogte uit te voer.
Hibernating Rhinos Youtube Channel: bevat 'n aantal video-tutoriale op RavenDB.
As u 'n deeglike leesstof verkies, sal die volgende boeke baie inligting en nuttige advies gee.
RavenDB 2.x Beginnersgids (2013) deur Khaled Tannir: stel die sleutelkonsepte voor en leer u alles, van die installasie tot die skep van dokumente en navraag-indekse. Hierdie boek gee u 'n stewige basis waarop u u .NET-toepassings kan skep.
RavenDB High Performance (2013) deur Brian Ritchie: hierdie boek strek verder as die basiese beginsels en lei jou deur die bou van skaalbare toepassings deur gebruik te maak van die ryk funksies en uitbreidbaarheid van die stelsel.
RavenDB in Action (2013) deur Itamar Syn-Hershko: 'n volledige gids wat handel oor die basiese begrippe tot die duik in kernfunksies en -tegnieke.
As u hulp benodig op die pad of bloot met ander wil praat in dieselfde stappe as u, oorweeg dit dan om by die volgende groepe aan te sluit.
Google Group: 'n baie aktiewe Google-groep wat gebruik word vir algemene ondersteuning en bespreking.
StackExchange: die op-die-plek plek vir alle vrae rakende programmering, StackExchange het 'n ordentlike aantal onderwerpe wat Raven bespreek.
Go Forth en Master Raven
Die hulpbronne op hierdie lys is slegs die punt van die ysberg, maar dit behoort 'n goeie beginpunt te wees vir almal wat na dokumentgerigte databasisse wil oorgaan. Sodra u dit regkry, is ons seker dat u met u eie idees vorendag sal kom. Dit is nou die tyd om RavenDB te bemeester.
ASP-hulpbronne: vind uit oor skrifte vir die .NET-raamwerk.
SQL Resources: ons algemene SQL-hulpbron wat van kritieke belang is vir alle ontwikkelaars met betrekking tot databasisse.
Inleiding tot ADO.NET: leer alles oor hierdie stelsel vir die gebruik van enige databasis binne die .NET-raamwerk.
As u databasisgedrewe toepassings gaan skep, moet u dit êrens aanbied. Kyk na ons uiteindelike gids vir webhosting. Dit sal alles verduidelik wat u moet weet om 'n ingeligte keuse te maak.