Inhoudsopgave
EEN SDK of Software ontwikkelingspakket is een groep tools waarmee we een aantal elementen hebben die het ons gemakkelijker maken om applicaties te ontwikkelen onder een bepaald platform, bijvoorbeeld als we een applicatie willen maken in Android we hebben een SDK dat omvat een SDI, verschillende apparaatemulators, evenals de klassen en basisprojecten die we nodig hebben.In het geval van hulpmiddelen zoals: Bankstel we hebben ook SDK's die het leven voor ons gemakkelijker maken, in tegenstelling tot anderen, dit SDK Het is verdeeld in verschillende delen volgens de taal die we willen, dus op deze manier kan elke ontwikkelaar op een modulaire manier kiezen wat hem interesseert.
De tools die het moet bevatten, zijn verschillende, maar wat ons misschien het meest interesseert, zijn de modules en klassen waarmee we zowel de verbindingen als de methoden kunnen maken die ons de mogelijkheid geven om te communiceren met onze datastructuren in Bankstel.
Het eerste dat we moeten begrijpen, is hoe de SDK van Bankstel, zal dit ons in staat stellen om de voordelen te zien die het ons biedt en hoe we ten volle kunnen profiteren van de technologie die het ons ter beschikking stelt.
Hoe werkt het?Wanneer we een client initialiseren met de API er wordt een permanente verbinding gemaakt wanneer: TROS van Bankstel, op deze manier wanneer er een verandering in is, dat wil zeggen, een knooppunt wordt verwijderd of toegevoegd en een bericht wordt uitgegeven in het formaat JSON die door onze opdrachtgever is ontvangen. Deze aanpak maakt Bankstel verschilt van de meeste Databases relationele en niet-relationele die op de markt bestaan, omdat het het gebruik van een centraal punt waar de communicatie moet worden geconcentreerd, wordt vermeden.
Daarom vermijdt deze operatie de vorming van een bottleneck op het moment dat er een grote hoeveelheid vragen is tussen de verschillende clients die we in onze applicaties hebben geïnstantieerd. Dit maakt bijvoorbeeld een structuur TROS van Bankstel van 4 nodes kan tot 1 miljoen zoekopdrachten of bewerkingen per seconde aan, iets heel indrukwekkends als we er rekening mee houden dat dit aantal alleen voorkomt in toepassingen voor gemiddeld gebruik.
vBucketBovendien is de verbinding tussen client en cluster niet direct, maar een structuur genaamd vBucket, een virtuele opslagplaats van informatie waarmee bewerkingen kunnen worden uitgevoerd en deze vervolgens worden overgedragen naar het cluster zonder tussenkomst van de ontwikkelaar. Dus ongeacht hoeveel knooppunten er zijn, er zal altijd hetzelfde aantal zijn vBuckets de complexiteit van het ontwikkelen van onze applicaties aanzienlijk verminderen.
Wanneer geconfronteerd met een motor zoals Bankstel Het eerste waar we als ontwikkelaars aan denken, is hoe we een CRUDAls we deze acroniemen onthouden, komen ze overeen met de vier essentiële acties van elke toepassing: maken, lezen, bijwerken en verwijderen. Wat stelt ons in staat om absolute controle te hebben over een record, document of sleutelwaardesysteem in Bankstel.
Deze operaties worden bereikt dankzij: API die de motor ons biedt, maar om er toegang toe te hebben, hebben we de opname en installatie van een SDK in een ondersteunde taal en van onze voorkeur, omdat we hiermee de verschillende instanties van clients kunnen maken waarmee we met de clusters kunnen communiceren.
Ja ok Bankstel biedt een communicatietool via de console, dit is niet compatibel met programmeertalen, voordat we denken dat een SDK niet nodig is als we die interface hebben.
om de . te krijgen SDK van de taal die we willen, hoeven we alleen maar naar de officiële website van Bankstel in zijn sectie open source Op de volgende link. Hier krijgen we de nodige informatie aangeboden naast het vermelden van elk SDK.
Elk heeft een download- en documentatiegedeelte dat ons een eerste idee geeft van hoe we met elk van hen kunnen gaan werken, aangezien er verschillende zijn, kunnen we rechtstreeks naar degene gaan die ons interesseert. Laten we eens kijken hoe de lijst eruitziet in de volgende afbeelding:
VERGROTEN
We weten dat er in de technologische wereld een groot aantal programmeertalen is, dus niemand kan ernaar streven ze allemaal te ondersteunen Bankstel biedt een vrij uitgebreide lijst met ondersteuning, laten we eens kijken wat we kunnen gebruiken:- Java
- .Netto
- Node.js
- PHP
- Python
- Robijn
- C / C ++
- ios
- Android
- .NETTO
- TelefoonGap
- Gateway synchroniseren
We gaan een klein voorbeeld laten zien van hoe de te installeren SDK in Python, deze taal is een van de meest populaire, dus het dient als centraal voorbeeld voor deze demonstratie, maar eerst moeten we aan deze twee vereisten voldoen:
1- We moeten een server hebben geïnstalleerd BankstelHiervoor kunnen we verwijzen naar de eerste stappen tutorial om dit doel te bereiken.
2- We moeten geïnstalleerd zijn in ons systeem Python 2.6 of hoger, in ons geval hebben we Python 2.7 zoals we in de afbeelding zien:
Nu we de vereisten hebben, gebruiken we de pakkethandler van Python, Pip Om de installatie uit te voeren, schrijven we hiervoor in onze console het volgende:
pip install couchbaseBij het uitvoeren van de opdracht moeten we de volgende console-uitvoer verkrijgen:
Als er uiteindelijk geen foutmeldingen zijn, betekent dit dat onze installatie correct was. Als er een fout optreedt, moeten we de documentatie van onze SDK om het probleem op te lossen.
CRUD-bewerkingenZodra het installatieproces van een van de SDK beschikbaar is, is het tijd om te zien hoe we de 4 basisacties kunnen uitvoeren die we eerder hadden genoemd, voor deze voorbeelden zullen we verschillende talen gebruiken, dus het wordt aanbevolen om eenvoudig aan te passen aan de juiste syntaxis van degene die we gebruiken. Het doel is om te zien hoe Bankstel Het maakt het voor ons veel gemakkelijker om onze applicaties te ontwikkelen, ongeacht de gebruikte taal.
Het eerste dat we moeten doen, is verbinding maken met een server, hiervoor kunnen we de methode gebruiken verbinding van Python of gewoon als we gebruiken C # In de instantiatie kunnen we definiëren waar verbinding moet worden gemaakt, zoals we in de volgende afbeelding zien:
Zoals we kunnen zien, hoewel de vormen een beetje verschillen, is het op de achtergrond dezelfde code, omdat we de klassenconstructor gebruiken om de server en de host te definiëren in het geval van Python, in C # we maken een object met de host en definiëren vervolgens de emmer op een ander voorwerp.
Nadat we de verbindingsbewerking hebben gezien, laten we die bewerkingen bekijken die de sleutel zijn om gegevens in onze structuur in te voegen of bestaande te wijzigen, hiervoor zullen we gebruiken in het geval van Python de methode toevoegen () en de methode vervangen (), de eerste maakt een nieuw record aan en de tweede werkt een bestaand record bij. Laten we in de volgende afbeelding zien hoe de broncode voor deze bewerkingen eruit zou zien:
Zoals we kunnen zien, geven we in dit geval gewoon een sleutel door en vervolgens de waarde die moet worden opgeslagen, net zo eenvoudig als contant geld.
Als we een sleutel willen lezen, bijvoorbeeld een bericht dat we in het vorige voorbeeld hebben toegevoegd, kunnen we de methode gebruiken KRIJGEN, zal dit het object retourneren dat het gewenste record bevat, als het niet bestaat volgens de taal, krijgen we een lege waarde of een wikkel dus we kunnen die uitzondering aan.
In het geval van het verwijderen van een sleutel of een record, hoeven we alleen de methode aan te roepen verwijderen () Door op een schone en effectieve manier de sleutel aan te geven die we uit onze structuur willen verwijderen, kunnen we deze missie vervullen. Laten we hieronder in de volgende afbeelding zien hoe deze twee bewerkingen kunnen worden uitgevoerd vanuit het oogpunt van: C #:
Als we kijken, hebben we een object gebruikt met de naam emmer Om deze acties uit te voeren, is dit object het object dat we in het verbindingsvoorbeeld hebben gedefinieerd en dat de . selecteert vBucket die ons knooppunt bezit om onze records op te slaan.
Hiermee zijn we klaar met deze tutorial, zoals we zien Bankstel Het is niet alleen een van de motoren van Database Geen SQL meest moderne en krachtige op de markt, maar het is ook erg vriendelijk voor de ontwikkelaar, een factor waarmee we rekening moeten houden wanneer we dit type structuur gaan gebruiken, want als er ondersteuning is voor de taal waarin we gaan om te werken, zullen we zeker een stap vooruit zijn de hele tijd.Vond je deze Tutorial leuk en heb je eraan geholpen?Je kunt de auteur belonen door op deze knop te drukken om hem een positief punt te geven