ORM (מיפוי יחס אובייקטים): הקלטת נתונים אוטומטית

ORM (לוגו בסיס נתונים וקוד מקור)

האם אי פעם חשבת או נזקקת להעביר נתונים מאובייקטים של קוד המקור שלך לתוכן עניינים או למסד נתונים? זה יהיה מעשי מאוד שיהיה לך כלי שיוכל לעשות את זה באופן אוטומטי ולא לעשות את זה באופן ידני, נכון? אך כדי שזה אפשרי, ערכים אלה צריכים להיות במתכונת הנכונה. ובכן, אם אתה צריך לעשות זאת, עליכם להכיר ORM (מיפוי יחס אובייקטים).

עם ORM הנתונים של האובייקטים שלך יועברו לפורמט נכון כדי להיות מסוגל לשמור את כל המידע הזה במסד נתונים על ידי מיפוי. זה יוצר מסד נתונים וירטואלי שבו הערכים שנמצאו ביישום שיצרת בקוד שלך, וכך מקושרים למסד נתונים זה לתת להם התמדה ולרשום אותם בדרך הפשוטה הזו. זה נותן התמדה למידע המוקלט כך שניתן יהיה לאחסן, לנתח, להקליט או להשתמש בו מאוחר יותר.

ידי ejemploדמיין שיש לך תוכנית פייתון שאחראית על קריאת ערכים מחיישן DHT11 שמתעד טמפרטורה ולחות. אך אינך רוצה להקליט ערכים אלה מסביבה. בצורה פשוטה תוכל ליצור קוד מקור כדי לתכנת את מה שאתה צריך ולקרוא את הערכים שנלקחו על ידי החיישן ולהציג אותם על המסך. אבל מה אם ברצונך לאחסן את הערכים לניתוח מתי התרחשו שיאים של ערכים אלה או עבור כלי עזר אחר?

במקרה כזה, אתה אמור להיות יכולת לשמור את הנתונים באותו זמן במסד נתונים וכאן ORM שימושי. בנוסף לפרויקט DIY שלך אתה יכול לאחסן את מה שאתה צריך ולטפל בערכים באופן ידני או באמצעות תוכנות אחרות בזכות העובדה שתפסת אותם במסד נתונים ...

מה זה ORM?

El מיפוי או יחסי אובייקט או ORM על ראשי התיבות שלו באנגלית, זוהי טכניקת תכנות המשמשת לשינוי נתונים המשמשים בשפת התכנות או בתכנות מונחה האובייקטים ובמאגר היחס (סוג SQL) כמנוע התמדה. זה יגרום לערכי התוכנית ליצור מסד נתונים מונחה עצמים וירטואלי כדי להחזיק את הנתונים שאתה צריך.

אם אי פעם תכננת יישום המחובר למסד נתונים, תבחין שקשה למדי לשנות את המידע כדי להתאים אותו למסד הנתונים או להיפך. כלומר, מיפוי הוא דבר מייגע שתוכלו לבצע אוטומציה באמצעות ORM, בנוסף להפוך אותה לבלתי תלויה במסד הנתונים בו תרצו להשתמש ואף תוכלו לשנות את מנוע מסד הנתונים ללא בעיה.

Un דוגמה מעשית היא מכונית F1, שם יש לו סדרת חיישנים המודדים ערכי לחץ, טמפרטורה, צריכה, סל"ד, מהירות, תאוצה, החלפות הילוכים, תנועות היגוי, שמן וכו '. כל הערכים הללו נראים בזמן אמת על ידי מהנדסים במחשבים שלהם בזכות הטלמטריה. אך עם סיום המפגש, המהנדסים צריכים ללמוד ולנתח את הנתונים כדי להבין כיצד לשפר את ההתקנה, לפתח את המכונית או מה גרם לכישלון. כדי שזה יהיה אפשרי, הם צריכים להיות מיוצאים למסד נתונים.

יתרונות וחסרונות של ORM

כפי שכבר הגבתי, עם ORM מאפשר לך להפשט ממסד הנתונים ופשט מאוד את קוד המקור הדרוש. המיפוי יהיה אוטומטי וזה אומר להוריד הרבה בעיות מהכתפיים בעת התכנות. בנוסף לנוחות ומהירות השימוש, הוא מספק אבטחה של שכבת הגישה לנתונים מפני התקפות.

אבל לא כולם דברים טובים ל- ORM יש גם חסרונות. בסביבות עמוסות בכבדות זה יכול להפחית את הביצועים כאשר אתה מוסיף שכבה נוספת למערכת. זה כולל גם לימוד ORM כך שתוכלו להשתמש בו, מה שיכול לקחת זמן להבין ולנצל אותו כראוי.

ORM לשפות תכנות

תלוי בשפת התכנות בה אתה משתמש אתה יכול להשתמש ב- ORM. אינך יכול להשתמש בשום ORM סתם, עליך להשתמש בתיקון הנכון. לדוגמה:

  • Java: שינה, MyBatis, iBatis, Ebean וכו '.
  • NET.: Framework Entity, nHibernate, MyBatis.Net וכו '.
  • PHP: דוקטרינה, הנעה, סלעים, טורפורט וכו '.
  • פִּיתוֹן: פיווי, SQLAlchemy, PonyORM, Elixir וכו '.

דוגמה עם Python ו- ORM

Peewee הוא ORM פשוט ומקוצר לשימוש עם Python. אתה יכול לקבל מידע נוסף מה- אתר רשמי. כמו כן, עליך לדעת כי פיווי תומכת ב- DBMS שונים, כלומר בכמה מערכות לניהול מסדי נתונים, כגון SQLite, MySQL ו- Postgresql. אתה רק צריך לשנות את הצהרת ה- bbdd הראשונית וזהו.

לדוגמה, ב המדריך המהיר שלך או ההתחלה המהירה שלך מהאתר תוכלו לראות דוגמאות פשוטות של קוד עם פיווי כך:

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.

במקרה שנראה לכם מעט, עומדים לרשותכם הכלי pwiz, תוכנית שמשיגה מודלים של פיואי ממאגרי מידע. לדוגמה:

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

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


היה הראשון להגיב

השאירו את התגובה שלכם

כתובת הדוא"ל שלך לא תפורסם. שדות חובה מסומנים *

*

*

  1. אחראי לנתונים: מיגל אנחל גטון
  2. מטרת הנתונים: בקרת ספאם, ניהול תגובות.
  3. לגיטימציה: הסכמתך
  4. מסירת הנתונים: הנתונים לא יועברו לצדדים שלישיים אלא בהתחייבות חוקית.
  5. אחסון נתונים: מסד נתונים המתארח על ידי Occentus Networks (EU)
  6. זכויות: בכל עת תוכל להגביל, לשחזר ולמחוק את המידע שלך.