Šiame vadove mes supažindinsime jus su „CockroachDB“ ir „PonyORM“, naudojant „Python“. Pirmiausia aptarsime, kokios yra šios technologijos, tada aptarsime, kaip jos veikia.
Prieš pradėdami kurti „Python“ programą su „CockroachDB“ ir „PonyORM“, supraskime, kas yra šios technologijos:
Kas yra tarakonasDB
„CockroachDB“ yra labai keičiama, atviro kodo, paskirstyta SQL duomenų bazė, naudojanti sandorių ir nuoseklias raktų vertės parduotuves.
„CockroachDB“ yra labai efektyvus būdas užtikrinti duomenų patvarumą ir atkūrimą gedimo atveju. Aparatinės ir programinės įrangos gedimų atveju jis gali išsaugoti duomenis, naudodamasis nuosekliais duomenų atkartojimais ir automatiniu remontu. Naudodamas SQL API, „CockroachDB“ leidžia pateikti užklausas, struktūrizuoti ir tvarkyti duomenis naudojant SQL užklausas.
Naudodamas SQL API, „CockroachDB“ suteikia kūrėjams lengvą perėjimą, nes jie gauna tas pačias žinomas sąvokas. Kadangi jis jau turi daugumos programavimo kalbų SQL tvarkykles, patogiau naudotis.
Norėdami geriau suprasti, rekomenduojame susipažinti su „CockroachDB“ dokumentais.
https: // linkfy.to / tarakonasDocs
Kas yra PonyORM
„PonyORM“ yra pažangus „Python Object-Relational Mapper“. Nors yra ir kitų „Python“ ORM, tokių kaip „Django“ ir „SQLAlchemy“, „PonyORM“ yra naudingas, nes turi tokių funkcijų kaip sudėtinių raktų palaikymas, automatinis užklausos optimizavimas ir intuityvi bei nesudėtinga užklausų sintaksė.
ORM yra tiesiog įrankis, leidžiantis dirbti su SQL duomenų baze naudojant jūsų pageidaujamą programavimo kalbą. Tai suteikia kūrėjams galimybę dirbti su duomenų bazėje esančiais duomenimis objektų pavidalu; taigi galite naudoti OOP savo kalbai dirbti su duomenimis.
Naudodami „PonyORM“ biblioteką, galime naudoti „Python“ kalbą darbui su duomenimis „CockroachDB“ reliacinės duomenų bazės objektų pavidalu.
Norėdami sužinoti, galite naudoti „PonyORM“ dokumentus. Štai nuoroda:
https: // docs.ponyorm.org / toc.HTML
Kaip įdiegti CockroachDB į Linux
Norėdami įdiegti „CockroachDB“ „Linux“ sistemose, atlikite šiame vadove pateiktus veiksmus ir, priklausomai nuo sistemos konfigūracijos, turėsite turėti root prieigą arba būti sudo vartotojas.
Pirmasis žingsnis yra užtikrinti, kad jūsų sistema būtų atnaujinta, ir tada įdiegti reikiamas priklausomybes. Štai komanda tam:
sudo apt-get update && sudo apt-get upgradesudo apt-get install glibc libncurses tzdata -y
Kitas žingsnis yra atsisiųsti „CockroachDB“ dvejetainį failą naudojant „wget“, kaip parodyta žemiau esančioje komandoje:
wget -qO- https: // dvejetainiai failai.tarakonas.com / tarakonas-v20.2.3.„Linux-amd64“.tgzAtsisiuntę dvejetainį failą, ištraukite failą.
degutas -xvf tarakonas-v20.2.3.„Linux-amd64“.tgzNorėdami paleisti „CockroachDB“ komandas iš bet kurio apvalkalo, pridėkite dvejetainį savo kelią:
cp -i tarakonas-v20.2.3. linux-amd64 / tarakonas / usr / bin /Nukopijuokite reikalingas bibliotekas:
mkdir -p / usr / lib / tarakonascp -i tarakonas-v20.2.3.„Linux-amd64 / lib / libgeos“.so / usr / lib / tarakonas /
cp -i tarakonas-v20.2.3.„Linux-amd64 / lib / libgeos_c“.so / usr / lib / tarakonas /
Baigę patikrinkite, ar turite tarakoną:
kuris tarakonas/ usr / bin / tarakonas
Paleiskite laikiną atminties grupę naudodami komandą:
tarakonų demonstracijaKlasterio viduje galite paleisti interaktyvų SQL apvalkalą, kad galėtumėte įvesti galiojančias SQL užklausas:
RODYTI LENTELES;Kaip įdiegti PonyORM
Norėdami įdiegti „PonyORM“, turite turėti įdiegtą ir veikiančią „Python“ versiją. Galite naudoti tiek „Python 2“ (negyvas), tiek „Python 3“.
Naudodami „pip“, įdiekite „Pony“:
pip3 įdiekite ponisNorėdami patikrinti, ar įdiegėte „Pony“, atidarykite „Python“ vertėją ir įveskite kodą.
>>> iš ponio. orm importas *Kadangi naudosime „PonyORM“ su „CockroachDB“, turime įdiegti reikiamą tvarkyklę. Šiuo atveju turime įdiegti psycopg2. Norėdami įdiegti reikiamą tvarkyklę, naudokite komandą pip.
„pip install psycopg2-binary“Patikrinkite, ar įdiegėte „Psycopg“ naudodamiesi interaktyvia python sesija, ir įveskite komandą:
importuoti psycopgKai viską įdiegsite, galėsite tęsti ir pradėti dirbti su „CochroachDB“ ir „PonyORM“:
Kaip sukurti „Python“ programą su tarakonuDB ir „PonyORM“
Norėdami sukurti „python“ programą, pirmiausia paleiskite interaktyvų SQL apvalkalą naudodami komandą.
tarakonas SQLKitas žingsnis yra sukurti duomenų bazę ir vartotoją, su kuriais norite bendrauti, o tai galite padaryti naudodami komandą:
SUKURKITE VARTOTOJĄ, JEI NEBŪTŲ admin;KURTI DUOMENŲ BAZĖS tinklaraštį;
Pridėkite būtinas privilegijas administratoriaus vartotojui naudodami komandą:
SUTEIKTI VISUS DUOMENŲ BAZĖS tinklaraštyje administratoriui;\ q;
Dabar apie programų skyrių:
Žemiau pateiktas kodas naudoja „PonyORM“ sąveikai su tinklaraščio duomenų baze ir „Python“ objektų bei metodų susiejimui su SQL duomenų baze.
Žemiau pateiktu kodu atliekamos šios operacijos:
nuo ponio.orm importas *importavimo laikas
duomenų bazė = duomenų bazė ()
db_params = dict (teikėjas = 'tarakonas', vartotojas = 'administratorius',
host = 'localhost', port = 26257, database = 'blog')
klasės Vartotojas (duomenų bazė.Subjektas):
first_name = Būtinas („unicode“)
blogs = Nustatyti („Dienoraštis“)
klasės tinklaraštis (duomenų bazė.Subjektas):
vartotojo vardas = Būtinas (vartotojas)
title = Būtinas („unicode“)
publish_date = Būtinas (datos laikas.data)
kategorija = Būtina („unicode“)
set_sql_debug (tiesa)
duomenų bazė.surišti (** db_params)
duomenų bazė.generuoti_mapping (create_tables = True)
@db_session
def create_blog ():
vartotojas = vartotojas (first_name = u "Administratorius")
blog = tinklaraštis (vartotojo vardas = vartotojas,
title = u "Sveikas pasaulis",
publish_date = datos laikas.data (2021, 1, 1),
kategorija = u „Juodraštis“)
tinklaraščiai = [
"vartotojas": vartotojas,
"title": "Sveikas pasaulis 1",
"publish_date": datos laikas.data (2021, 1, 2),
„category“: „Juodraštis“
,
"vartotojas": vartotojas,
"title": "Sveikas pasaulis 2",
"publish_date": datos laikas.data (2021, 1, 3),
„category“: „Juodraštis“
,
"vartotojas": vartotojas,
"title": "Sveikas pasaulis 3",
"publish_date": datos laikas.data (2021,1,4),
"category": "Juodraštis"
]
tinklaraščiui tinklaraščiuose:
b_ = Tinklaraštis (** tinklaraštis)
jei __pavadinimas = = "__main__":
sukurti_blogą ()
b_ = Vartotojas („Administratorius“)
Kai paleisite programą, turėtumėte pamatyti išvestį, panašią į toliau pateiktą:
GAUTI NAUJĄ JUNGTĮATLEISKITE JUNGTĮ
Gaukite ryšį iš vietinio baseino
Pereiti prie automatinio režimo
SUKURTI LENTEL "" vartotojas "(
"ID" SERIALINIS PAGRINDINIS RAKTAS,
"first_name" TEKSTAS NENUOL
)
SUKURTI LENTEL “„ tinklaraštis “(
„ID“ SERIALINIS PAGRINDINIS RAKTAS,
„Vartotojo vardas“ INT8 NOT NULL,
„Pavadinimas“ TEKSTAS NENUOL,
„Publish_date“ DATA NOT NULL,
„Kategorija“ TEKSTAS NENUOL
)
CREATE INDEX "idx_blog__username" ON "tinklaraštis" ("vartotojo vardas")
KEITIMO LENTELĖ "tinklaraštis" PRIDĖTI SĄLYGĄ "fk_blog__username" UŽSIENIO RAKTAS ("vartotojo vardas") NUORODOS "vartotojas" ("id") IŠTRINTI KASKADE
PASIRINKITE „tinklaraštį“.„id“, „blog“.„vartotojo vardas“, „tinklaraštis“.„pavadinimas“, „tinklaraštis“."publish_date", "blog"."Kategorija"
IŠ „dienoraščio“ „tinklaraščio“
KUR 0 = 1
PASIRINKTI „vartotoją“."id", "user"."Pirmas vardas"
IŠ "vartotojas" "vartotojas"
KUR 0 = 1
Išvada
Naudodamiesi aukščiau esančia programa, mes sukūrėme paprastą tinklaraščio programą, kuri sukuria vartotoją ir priskiria tinklaraščius vartotojo vardui. Tada mes įtraukėme duomenis į duomenų bazę, kuriai galime pateikti užklausą naudodami SQL užklausas. Nors programa yra paprasta, ji parodo, kaip mes galime naudoti „CockroachDB“ ir „PonyORM“, kad sukurtume „Python“ programą.