Python

Cara Membuat Aplikasi Python dengan CockroachDB dan PonyORM

Cara Membuat Aplikasi Python dengan CockroachDB dan PonyORM

Dalam panduan ini, kami akan memperkenalkan Anda ke CockroachDB dan PonyORM menggunakan Python. Kami akan mulai dengan membahas apa itu teknologi ini dan kemudian mendiskusikan cara kerjanya.

Sebelum kita mulai membangun aplikasi Python dengan CockroachDB dan PonyORM, mari kita pahami apa saja teknologi tersebut:

Apa itu CockroachDB

CockroachDB adalah database SQL yang sangat skalabel, open-source, terdistribusi yang menggunakan penyimpanan nilai kunci transaksional dan konsisten.

CockroachDB sangat efisien sebagai metode untuk memastikan persistensi dan pemulihan data jika terjadi kegagalan. Jika terjadi kegagalan perangkat keras dan perangkat lunak, ia dapat menyimpan data dengan menggunakan replikasi data yang kuat dan konsisten dan perbaikan otomatis. Menggunakan SQL API, CockroachDB memungkinkan Anda untuk membuat kueri, menyusun, dan memanipulasi data menggunakan kueri SQL.

Menggunakan SQL API, CockroachDB memberikan transisi yang mudah kepada pengembang karena mereka mendapatkan konsep yang sama. Karena sudah memiliki driver SQL untuk sebagian besar bahasa pemrograman, menggunakannya menjadi lebih nyaman.

Kami sarankan Anda memeriksa dokumentasi CockroachDB untuk pemahaman yang lebih baik.

https://linkfy.ke/kecoaDocs

Apa itu PonyORM?

PonyORM adalah Python Object-Relational Mapper tingkat lanjut. Meskipun ada Python ORM lain seperti Django dan SQLAlchemy, PonyORM menguntungkan karena memiliki fitur seperti dukungan untuk kunci komposit, optimisasi kueri otomatis, dan sintaks kueri yang intuitif dan mudah.

ORM hanyalah alat yang memungkinkan Anda bekerja dengan database SQL menggunakan bahasa pemrograman pilihan Anda your. Ini memberi pengembang kemampuan untuk bekerja dengan data dalam Database dalam bentuk objek; karenanya, Anda dapat menggunakan OOP agar bahasa Anda bekerja dengan data.

Menggunakan library PonyORM, kita dapat menggunakan bahasa Python untuk bekerja dengan data di CockroachDB dalam bentuk objek database relasional.

Anda dapat menggunakan dokumentasi PonyORM untuk referensi. Berikut tautannya:

https://docs.kuda poni.org/toc.html

Cara Menginstal CockroachDB Di Linux

Untuk menginstal CockroachDB pada sistem Linux, ikuti langkah-langkah dalam panduan ini, dan, tergantung pada konfigurasi sistem Anda, Anda harus memiliki akses root atau menjadi pengguna sudo.

Langkah pertama adalah memastikan bahwa sistem Anda mutakhir dan kemudian menginstal dependensi yang diperlukan. Berikut perintah untuk itu:

sudo apt-get update && sudo apt-get upgrade
sudo apt-get install glibc libncurses tzdata -y

Langkah selanjutnya adalah mendownload binari CockroachDB menggunakan wget, seperti pada perintah di bawah ini:

wget -qO- https://binary.kecoa.com/cockroach-v20.2.3.linux-amd64.tgz

Setelah biner diunduh, ekstrak file.

tar -xvf cockroach-v20.2.3.linux-amd64.tgz

Untuk meluncurkan perintah CockroachDB dari shell apa pun, tambahkan biner ke jalur Anda:

cp -i cockroach-v20.2.3. linux-amd64/cockroach /usr/bin/

Salin perpustakaan yang diperlukan:

mkdir -p /usr/lib/cockroach
cp -i cockroach-v20.2.3.linux-amd64/lib/libgeos.jadi /usr/lib/cockroach/
cp -i cockroach-v20.2.3.linux-amd64/lib/libgeos_c.jadi /usr/lib/cockroach/

Setelah selesai, konfirmasikan bahwa Anda telah menginstal Kecoa:

kecoa yang mana
/usr/bin/coach

Mulai cluster sementara dalam memori menggunakan perintah:

demo kecoa

Di dalam cluster, Anda dapat menjalankan shell SQL interaktif untuk memasukkan kueri SQL yang valid:

TAMPILKAN TABEL;

Cara Menginstal PonyORM

Untuk menginstal PonyORM, Anda harus menginstal dan menjalankan versi Python and. Anda dapat menggunakan Python 2 (mati) atau Python 3.

Menggunakan pip, instal Pony:

pip3 menginstal kuda poni

Untuk menguji apakah Anda telah menginstal Pony, buka penerjemah Python dan masukkan kode.

>>> dari kuda poni. impor formulir *

Karena kita akan menggunakan PonyORM dengan CockroachDB, kita perlu menginstal driver yang diperlukan. Untuk kasus ini, kita perlu menginstal psycopg2. Gunakan perintah pip untuk menginstal driver yang diperlukan.

pip install psycopg2-binary

Periksa apakah Anda telah menginstal Psycopg menggunakan sesi python interaktif dan masukkan perintah:

impor psycopg

Setelah semuanya terinstal, Anda dapat melanjutkan dan mulai bekerja dengan CochroachDB dan PonyORM:

Cara Membuat Aplikasi Python Dengan CockroachDB Dan PonyORM

Untuk membangun aplikasi python, mulailah dengan meluncurkan shell SQL interaktif menggunakan perintah.

kecoa SQL

Langkah selanjutnya adalah membuat database dan pengguna untuk berinteraksi, yang dapat Anda lakukan dengan menggunakan perintah:

BUAT USER JIKA TIDAK ADA admin;
BUAT blog DATABASE;

Tambahkan hak istimewa yang diperlukan ke pengguna admin menggunakan perintah:

HIBAH SEMUA DATABASE blog KEPADA admin;
\q;

Sekarang untuk bagian aplikasi:

Kode di bawah ini menggunakan PonyORM untuk berinteraksi dengan database blog dan memetakan objek dan metode Python ke database SQL.

Kode di bawah ini melakukan operasi berikut:

dari kuda poni.impor formulir *
waktu impor
basis data = basis data ()
db_params = dict(penyedia = 'kecoa', pengguna = 'admin',
host='localhost', port=26257, database='blog')
Pengguna kelas (basis data).Kesatuan):
first_name = Wajib (unicode)
blog = Set("Blog")
Kelas Blog (basis data.Kesatuan):
nama pengguna = Diperlukan (Pengguna)
judul = Wajib (unicode)
publish_date = Diperlukan(datetime.tanggal)
kategori = Wajib(unicode)
set_sql_debug(Benar)
basis data.mengikat (**db_params)
basis data.generate_mapping(create_tables=True)
@db_session
def create_blog():
pengguna = Pengguna(nama_pertama=u"Admin")
blog = Blog (nama pengguna = pengguna,
title=u"Halo dunia",
publish_date=datetime.tanggal (2021, 1, 1),
kategori=u"Draf")
blog = [

"pengguna": pengguna,
"title": "Halo dunia 1",
"publish_date": datetime.tanggal (2021, 1, 2),
"kategori": "Draf"
,

"pengguna": pengguna,
"title": "Halo dunia 2",
"publish_date": datetime.tanggal (2021, 1, 3),
"kategori": "Draf"
,

"pengguna": pengguna,
"title": "Halo dunia 3",
"publish_date": datetime.tanggal (2021,1,4),
"kategori": "Draf"

]
untuk blog di blog:
b_ = Blog(**blog)
jika __name__ == "__main__":
buat_blog()
b_ = Pengguna("Admin")

Setelah Anda menjalankan aplikasi, Anda akan melihat output yang mirip dengan yang ditunjukkan di bawah ini:

DAPATKAN KONEKSI BARU
KONEKSI RELEASE
DAPATKAN KONEKSI DARI KOLAM RENANG LOKAL
BERALIH KE MODE KOMIT OTOMATIS
BUAT TABEL "pengguna" (
"id" SERIAL KUNCI UTAMA,
TEKS "nama_pertama" BUKAN NULL
)
BUAT TABEL "blog" (
KUNCI UTAMA SERI "id",
"nama pengguna" INT8 BUKAN NULL,
TEKS "judul" BUKAN NULL,
TANGGAL “publish_date” BUKAN NULL,
TEKS "kategori" BUKAN NULL
)
BUAT INDEKS "idx_blog__username" PADA "blog" ("nama pengguna")
ALTER TABLE "blog" ADD CONSTRAINT "fk_blog__username" FOREIGN KEY ("username") REFERENSI "user" ("id") PADA DELETE CASCADE
PILIH "blog"."id", "blog"."nama pengguna", "blog"."judul", "blog"."publish_date", "blog"."kategori"
DARI "blog" "blog"
DIMANA 0 = 1
PILIH "pengguna"."id", "pengguna"."nama depan"
DARI "pengguna" "pengguna"
DIMANA 0 = 1

Kesimpulan

Menggunakan aplikasi di atas, kami membuat aplikasi blog sederhana yang membuat pengguna dan menetapkan blog ke nama pengguna. Kami kemudian menambahkan data ke dalam database, yang dapat kami kueri menggunakan kueri SQL. Meskipun aplikasinya sederhana, ini menggambarkan bagaimana kita dapat menggunakan CockroachDB dan PonyORM untuk membuat aplikasi Python.

SuperTuxKart untuk Linux
SuperTuxKart adalah judul hebat yang dirancang untuk memberi Anda pengalaman Mario Kart gratis di sistem Linux Anda. Ini cukup menantang dan menyenang...
Pertempuran untuk Tutorial Westnoth
The Battle for Wesnoth adalah salah satu game strategi open source terpopuler yang bisa kamu mainkan saat ini. Tidak hanya game ini telah dikembangkan...
0 A.D. tutorial
Dari sekian banyak game strategi di luar sana, 0 A.D. berhasil menonjol sebagai judul yang komprehensif dan permainan taktis yang sangat dalam meskipu...