ORM (Hartimi Relativ i Objektit): automatizoni regjistrimin e të dhënave

ORM (baza e të dhënave dhe logoja e kodit burimor)

A keni menduar ndonjëherë ose keni pasur nevojë të kaloni të dhëna nga objektet e kodit tuaj burimor në një tabelë të përmbajtjes ose bazës së të dhënave? Do të ishte shumë praktike që të keni një mjet për të qenë në gjendje ta bëni atë automatikisht dhe mos ta bëni manualisht, apo jo? Por që të jetë e mundur, ato vlera duhet të jenë në formatin e duhur. Mirë nëse keni nevojë ta bëni këtë, duhet të dini ORM (Hartëzimi Relativ i Objektit).

Me ORM të dhënat e objekteve tuaja do të kalojnë në një format të saktë për të ruajtur të gjitha ato informacione në një bazë të dhënash duke i vendosur në hartë. Kjo krijon një bazë të dhënash virtuale ku vlerat e gjetura në aplikacion që keni krijuar në kodin tuaj, dhe kështu janë të lidhura me këtë bazë të dhënash për t’i dhënë atyre këmbëngulje dhe për t’i regjistruar në këtë mënyrë të thjeshtë. Kjo i jep informacionit të regjistruar me këmbëngulje në mënyrë që të mund të ruhet, analizohet, regjistrohet ose përdoret më vonë.

Por EjemploImagjinoni që keni një program Python i ngarkuar me leximin e vlerave nga një sensor DHT11 që regjistron temperaturën dhe lagështinë. Por ju nuk doni të regjistroni këto vlera nga një mjedis. Në një mënyrë të thjeshtë mund të krijoni një kod burim për të programuar atë që ju nevojitet dhe për të lexuar vlerat e marra nga sensori dhe për t'i shfaqur ato në ekran. Por, çka nëse doni të ruani vlerat për të analizuar kur kanë ndodhur majat e këtyre vlerave ose për ndonjë program tjetër?

Në atë rast, duhet të keni aftësinë që ato të dhëna të ruhen në të njëjtën kohë në një bazë të dhënash dhe këtu ju vjen në ndihmë ORM. Përveç projektit tuaj DIY ju mund të ruani atë që ju nevojitet dhe të trajtoni vlerat manualisht ose përmes softuerit tjetër falë faktit që i keni kapur në një bazë të dhënash ...

Çfarë është ORM?

El hartëzimi relacional i objektit ose ORM për shkurtesën e saj në anglisht, është një teknikë programimi që shërben për të transformuar të dhënat e përdorura në gjuhën programuese ose programin e orientuar drejt objektit dhe bazën e të dhënave relacionale (lloji SQL) si një motor këmbënguljeje. Kjo do t'i bëjë vlerat e programit të krijojnë një bazë të të dhënave virtuale të orientuar drejt objektit për të mbajtur të dhënat që ju nevojiten.

Nëse keni programuar ndonjëherë një aplikacion të lidhur në një bazë të dhënash, do të keni vërejtur se është mjaft e vështirë të transformoni informacionin për ta përshtatur atë në bazën e të dhënave ose anasjelltas. Domethënë, hartëzimi është një gjë e lodhshme që mund të automatizoni duke përdorur ORM, përveç që e bëni atë të pavarur nga baza e të dhënave që dëshironi të përdorni dhe madje mund të ndryshoni motorin e bazës së të dhënave pa problem.

Un Shembull praktik është një makinë F1, ku ka një sërë sensorë që matin vlerat e presionit, temperaturës, konsumit, RPM, shpejtësisë, nxitimit, ndryshimeve të ingranazheve, lëvizjeve të drejtimit, vajit etj. Të gjitha këto vlera janë parë në kohë reale nga inxhinierët në kompjuterët e tyre falë telemetrisë. Por kur mbaron seanca, inxhinierët duhet të studiojnë dhe analizojnë ato të dhëna për të kuptuar se si të përmirësojnë konfigurimin, të evoluojnë makinën ose çfarë e shkaktoi dështimin. Që kjo të jetë e mundur, ato duhet të eksportohen në një bazë të dhënash.

Avantazhet dhe disavantazhet e ORM

Siç kam komentuar tashmë, me ORM ju lejon të abstraktoni nga baza e të dhënave dhe thjeshtoni shumë kodin e nevojshëm burimor. Hartësimi do të jetë automatik dhe kjo do të thotë të heqësh shumë telashe nga supe kur programon. Përveç lehtësisë dhe shpejtësisë së përdorimit, ai siguron sigurinë e shtresës së hyrjes së të dhënave kundër sulmeve.

Por jo të gjitha janë gjëra të mira ORM gjithashtu ka anët e saj të dobëta. Në ambiente të ngarkuara shumë, kjo mund të zvogëlojë performancën ndërsa po shtoni një shtresë shtesë në sistem. Ai gjithashtu përfshin mësimin e ORM në mënyrë që të mund ta përdorni atë, gjë që mund të kërkojë kohë për ta kuptuar dhe përfituar si duhet.

ORM për gjuhët e programimit

Në varësi të gjuhës programuese që përdorni mund të përdorni një ORM. Ju nuk mund të përdorni vetëm ndonjë ORM, duhet të përdorni atë të saktë. Për shembull:

  • Java: Hibernate, MyBatis, iBatis, Ebean, etj.
  • . NET: Korniza e njësisë, nHibernate, MyBatis.Net, etj.
  • PHP: Doktrina, Propel, Rocks, Torpor, etj.
  • python: Peewee, SQLAlchemy, PonyORM, Elixir, etj.

Shembull me Python dhe ORM

Peewee është një ORM e thjeshtë dhe e shkurtuar për përdorim me Python. Ju mund të merrni më shumë informacion nga tuaji faqen zyrtare të internetit. Gjithashtu, duhet të dini se Peewee mbështet DBMS të ndryshëm, domethënë, disa sisteme të menaxhimit të bazës së të dhënave, të tilla si SQLite, MySQL dhe Postgresql. Thjesht duhet të ndryshoni deklaratën fillestare bbdd dhe kaq.

Për shembull, në udhëzuesi juaj i shpejtë ose fillimi i shpejtë Nga faqja mund të shihni shembuj të thjeshtë të kodit me Peewee si kjo:

from peewee import *

db = SqliteDatabase('people.db')

class Person(Model):
    name = CharField()
    birthday = DateField()

    class Meta:
        database = db # This model uses the "people.db" database.

Në rast se kjo ju duket pak, ju keni në dispozicionin tuaj mjeti pwiz, një program që siguron modele Peewee nga bazat e të dhënave. Për shembull:

<br data-mce-bogus="1">

python -m pwiz -e postgresql basedatos &gt; modelo.py<br data-mce-bogus="1">


Bëhu i pari që komenton

Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: Miguel Ángel Gatón
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.