Python

Ako zostaviť aplikáciu Python s programami CockroachDB a PonyORM

Ako zostaviť aplikáciu Python s programami CockroachDB a PonyORM

V tejto príručke vám predstavíme nástroje CockroachDB a PonyORM pomocou jazyka Python. Začneme diskusiou o tom, čo sú tieto technológie, a potom prediskutujeme, ako fungujú.

Predtým, ako začneme vytvárať aplikáciu v Pythone s programami CockroachDB a PonyORM, poďme pochopiť, čo sú tieto technológie:

Čo je CockroachDB

CockroachDB je vysoko škálovateľná open-source distribuovaná databáza SQL, ktorá využíva transakčné a konzistentné obchody s kľúčmi a hodnotami.

CockroachDB je veľmi efektívny ako metóda na zabezpečenie perzistencie a obnovy údajov v prípade zlyhania. V prípade zlyhania hardvéru a softvéru môže uchovať údaje pomocou silne konzistentných replikácií svojich údajov a automatických opráv. Pomocou rozhrania SQL API umožňuje program CockroachDB dopytovanie, štruktúrovanie a manipuláciu s údajmi pomocou dotazov SQL.

Pomocou rozhrania SQL API poskytuje program CockroachDB vývojárom ľahký prechod, pretože dostávajú rovnaké známe koncepty. Pretože už má pre väčšinu programovacích jazykov existujúce ovládače SQL, jeho používanie sa stáva pohodlnejším.

Pre lepšie pochopenie vám odporúčame prečítať si dokumentáciu CockroachDB.

https: // linkfy.do / cockroachDocs

Čo je PonyORM

PonyORM je pokročilý Python Object-Relational Mapper. Aj keď existujú ďalšie Python ORM ako Django a SQLAlchemy, PonyORM je výhodný, pretože má funkcie ako podpora zložených kľúčov, automatická optimalizácia dotazov a intuitívna a jednoduchá syntax dotazu.

ORM je jednoducho nástroj, ktorý vám umožní pracovať s databázou SQL pomocou preferovaného programovacieho jazyka. Dáva vývojárom možnosť pracovať s údajmi v databáze vo forme objektov; preto môžete na prácu s údajmi použiť OOP pre svoj jazyk.

Pomocou knižnice PonyORM môžeme na prácu s údajmi v CockroachDB vo forme objektov relačnej databázy používať jazyk Python.

Ako referenciu môžete použiť dokumentáciu PonyORM. Tu je odkaz:

https: // dokumenty.ponyorm.org / toc.html

Ako nainštalovať CockroachDB na Linuxe

Ak chcete nainštalovať CockroachDB na systémoch Linux, postupujte podľa pokynov v tejto príručke a v závislosti od konfigurácie systému budete musieť mať prístup root alebo byť používateľom sudo.

Prvým krokom je zabezpečiť, aby bol váš systém aktuálny, a potom nainštalovať požadované závislosti. Tu je príkaz:

sudo apt-get aktualizácia && sudo apt-get aktualizácia
sudo apt-get nainštalovať glibc libncurses tzdata -y

Ďalším krokom je stiahnutie binárneho súboru CockroachDB pomocou nástroja wget, ako je uvedené v nasledujúcom príkaze:

wget -qO- https: // binárne súbory.šváb.com / šváb-v20.2.3.linux-amd64.tgz

Po stiahnutí binárneho súboru rozbaľte súbor.

tar -xvf šváb-v20.2.3.linux-amd64.tgz

Ak chcete spustiť príkazy CockroachDB z ľubovoľného shellu, pridajte do svojej cesty binárny súbor:

cp -i šváb-v20.2.3. linux-amd64 / šváb / usr / bin /

Skopírujte požadované knižnice:

mkdir -p / usr / lib / šváb
cp -i šváb-v20.2.3.linux-amd64 / lib / libgeos.takže / usr / lib / šváb /
cp -i šváb-v20.2.3.linux-amd64 / lib / libgeos_c.takže / usr / lib / šváb /

Po dokončení potvrďte, že máte nainštalovaného Švába:

ktorý šváb
/ usr / bin / šváb

Spustite dočasný klaster v pamäti pomocou príkazu:

ukážka švábov

Vo vnútri klastra môžete spustiť interaktívny shell SQL a zadať platné dotazy SQL:

ZOBRAZIŤ TABUĽKY;

Ako nainštalovať PonyORM

Ak chcete nainštalovať PonyORM, mali by ste mať nainštalovanú a spustenú verziu Pythonu. Môžete použiť Python 2 (mŕtvy) alebo Python 3.

Pomocou pipu nainštalujte Pony:

pip3 nainštaluj poníka

Ak chcete vyskúšať, či máte nainštalovaný Pony, otvorte tlmočník Pythonu a zadajte kód.

>>> od poníka. orm import *

Pretože budeme používať PonyORM s CockroachDB, musíme si nainštalovať požadovaný ovládač. V tomto prípade musíme nainštalovať psycopg2. Pomocou príkazu pip nainštalujte potrebný ovládač.

pip nainštalujte psycopg2-binary

Skontrolujte, či máte nainštalovaný Psycopg pomocou interaktívnej relácie pythonu a zadajte príkaz:

import psycopg

Keď máte všetko nainštalované, môžete pokračovať a začať pracovať s programami CochroachDB a PonyORM:

Ako zostaviť aplikáciu v Pythone s programami CockroachDB a PonyORM

Ak chcete zostaviť aplikáciu v jazyku Python, začnite spustením interaktívneho shellu SQL pomocou príkazu.

šváb SQL

Ďalším krokom je vytvorenie databázy a používateľa na interakciu, ktoré môžete vykonať pomocou príkazu:

VYTVORIŤ UŽÍVATEĽA, AK NEJDE
Blog CREATE DATABASE;

Pridajte potrebné oprávnenia používateľovi admin pomocou príkazu:

UDELIŤ VŠETKO NA DATABÁZE blog administrátorovi;
\ q;

Teraz k sekcii s aplikáciami:

Nasledujúci kód používa PonyORM na interakciu s databázou blogov a na mapovanie objektov a metód Pythonu do databázy SQL.

Nasledujúci kód vykonáva nasledujúce operácie:

od poníka.orm import *
importovať čas a čas
database = Databáza ()
db_params = dict (provider = 'šváb', užívateľ = 'admin',
hostiteľ = 'localhost', port = 26257, databáza = 'blog')
trieda Užívateľ (databáza.Subjekt):
first_name = povinný (unicode)
blogs = Set ("Blog")
trieda Blog (databáza.Subjekt):
používateľské meno = požadované (užívateľ)
title = povinný (unicode)
publish_date = Povinné (dátum a čas.dátum)
category = Povinné (unicode)
set_sql_debug (True)
databázy.väzba (** db_params)
databázy.generate_mapping (create_tables = True)
@db_session
def create_blog ():
user = User (first_name = u "Admin")
blog = Blog (používateľské meno = užívateľ,
title = u „Ahoj svet“,
publish_date = datetime.dátum (2021, 1, 1),
kategória = u „Koncept“)
blogy = [

"užívateľ": užívateľ,
"title": "Hello world 1",
„publish_date“: dátum a čas.dátum (2021, 1, 2),
"category": "Koncept"
,

"užívateľ": užívateľ,
"title": "Hello world 2",
„publish_date“: dátum a čas.dátum (2021, 1, 3),
"category": "Koncept"
,

"užívateľ": užívateľ,
"title": "Hello world 3",
„publish_date“: dátum a čas.dátum (2021,1,4),
"category": "Koncept"

]
pre blog v blogoch:
b_ = Blog (** blog)
ak __name__ == "__main__":
create_blog ()
b_ = Používateľ („správca“)

Po spustení aplikácie by sa mal zobraziť výstup podobný tomuto:

ZÍSKAJTE NOVÉ PRIPOJENIE
PRIPOJENIE K UVOĽNENIU
ZAPOJTE SA Z MIESTNEHO BAZÉNU
ZAPNITE REŽIM AUTOMOBILU
VYTVORIŤ TABUĽKU „užívateľ“ (
„id“ SÉRIOVÝ ZÁKLADNÝ KLÍČ,
"krstne meno" TEXT NIE JE NULL
)
VYTVORIŤ TABUĽKU „blog“ (
„Id“ SÉRIOVÝ ZÁKLADNÝ KLÍČ,
„Používateľské meno“ INT8 NIE JE NULL,
„Title“ TEXT NIE JE NULOVÝ,
„Publish_date“ DATE NOT NULL,
TEXT „kategórie“ NIE JE NULOVÝ
)
CREATE INDEX "idx_blog__username" ON "blog" ("username")
ALTER TABLE "blog" PRIDAŤ OBMEDZENIE "fk_blog__username" FOREIGN KEY ("username") REFERENCIE "user" ("id") ON DELETE CASCADE
VYBERTE „blog“.„id“, „blog“."používateľské meno", "blog".„title“, „blog“.„publish_date“, „blog“.„kategória“
Z „blogu“ „blogu“
KDE 0 = 1
VYBERTE „používateľ“."id", "užívateľ"."krstné meno"
FROM „užívateľ“ „užívateľ“
KDE 0 = 1

Záver

Pomocou aplikácie vyššie sme vytvorili jednoduchú blogovú aplikáciu, ktorá vytvorí používateľa a priradí blogy používateľskému menu. Údaje sme potom pridali do databázy, na ktorú môžeme dotazovať pomocou dotazov SQL. Aj keď je táto aplikácia jednoduchá, ukazuje, ako môžeme na vytvorenie aplikácie v jazyku Python použiť program CockroachDB a PonyORM.

Ako nainštalovať League Of Legends na Ubuntu 14.04
Ak ste fanúšikom League of Legends, potom je to pre vás príležitosť otestovať spustenie League of Legends. Upozorňujeme, že program PlayOnLinux podpor...
Hry Nainštalujte si najnovšiu strategickú hru OpenRA na Ubuntu Linux
Nainštalujte si najnovšiu strategickú hru OpenRA na Ubuntu Linux
OpenRA je herný engine Libre / Free Real Time Strategy, ktorý obnovuje rané hry z Westwoodu, ako napríklad klasické Command & Conquer: Red Alert. Dist...
Hry Nainštalujte si najnovší Dolphin Emulator pre Gamecube a Wii na Linuxe
Nainštalujte si najnovší Dolphin Emulator pre Gamecube a Wii na Linuxe
Emulátor Dolphin vám umožní hrať vybrané hry Gamecube a Wii na osobných počítačoch Linux (PC). Emulátor Dolphin, ktorý je voľne dostupným emulátorom ...