ORM (Object Relational Mapping): Automatisieren Sie die Datenaufzeichnung

ORM (Datenbank- und Quellcode-Logo)

Haben Sie jemals darüber nachgedacht oder mussten Daten aus Ihren Quellcodeobjekten in ein Inhaltsverzeichnis oder eine Datenbank übertragen? Es wäre sehr praktisch, ein Werkzeug zu haben, um dies automatisch und nicht manuell zu tun, oder? Damit dies jedoch möglich ist, sollten diese Werte das richtige Format haben. Nun, wenn Sie dies tun müssen, Sie müssen ORM (Object Relational Mapping) kennen..

Mit ORM werden die Daten Ihrer Objekte an ein korrektes Format übergeben, um all diese Informationen in einer Datenbank speichern zu können, indem Sie sie zuordnen. Dadurch wird eine virtuelle Datenbank erstellt, in der die in der Anwendung gefundenen Werte, die Sie in Ihrem Code erstellt haben, und damit sind mit dieser Datenbank verknüpft um ihnen Ausdauer zu geben und sie auf diese einfache Weise zu registrieren. Dadurch erhalten die aufgezeichneten Informationen eine Beständigkeit, sodass sie gespeichert, analysiert, aufgezeichnet oder später verwendet werden können.

von ejemploStellen Sie sich vor, Sie haben ein Python-Programm, das für das Lesen von Werten von einem DHT11-Sensor zuständig ist, der Temperatur und Luftfeuchtigkeit aufzeichnet. Sie möchten diese Werte jedoch nicht aus einer Umgebung aufzeichnen. Auf einfache Weise können Sie einen Quellcode erstellen, um zu programmieren, was Sie benötigen, die vom Sensor erfassten Werte lesen und auf dem Bildschirm anzeigen. Was aber, wenn Sie die Werte speichern möchten, um zu analysieren, wann Spitzen dieser Werte aufgetreten sind, oder für ein anderes Dienstprogramm?

In diesem Fall sollten Sie die Möglichkeit haben, diese Daten gleichzeitig in einer Datenbank zu speichern. Hier bietet sich ORM an. Zusätzlich zu Ihrem DIY-Projekt Sie können speichern, was Sie benötigen, und die Werte behandeln manuell oder über andere Software dank der Tatsache, dass Sie sie in einer Datenbank erfasst haben ...

Was ist ORM?

El Objektrelationales Mapping oder ORM Für sein Akronym in Englisch ist es eine Programmiertechnik, die dazu dient, Daten zu transformieren, die in der objektorientierten Programmiersprache oder dem Programm und der relationalen Datenbank (SQL-Typ) als Persistenz-Engine verwendet werden. Dadurch erstellen die Programmwerte eine virtuelle objektorientierte Datenbank, in der die von Ihnen benötigten Daten gespeichert werden.

Wenn Sie jemals eine mit einer Datenbank verbundene Anwendung programmiert haben, werden Sie feststellen, dass es ziemlich schwierig ist, die Informationen zu transformieren, um sie an die Datenbank anzupassen, oder umgekehrt. Nämlich, Mapping ist eine mühsame Sache Sie können die Verwendung von ORM automatisieren und es unabhängig von der Datenbank machen, die Sie verwenden möchten, und Sie können sogar das Datenbankmodul problemlos ändern.

Un praktisches Beispiel ist ein F1-AutoHier gibt es eine Reihe von Sensoren, die Werte wie Druck, Temperatur, Verbrauch, Drehzahl, Geschwindigkeit, Beschleunigung, Gangwechsel, Lenkbewegungen, Öl usw. messen. Alle diese Werte werden dank der Telemetrie von Ingenieuren auf ihren Computern in Echtzeit angezeigt. Am Ende der Sitzung müssen die Ingenieure diese Daten untersuchen und analysieren, um zu verstehen, wie das Setup verbessert, das Auto weiterentwickelt oder was den Fehler verursacht hat. Damit dies möglich ist, müssen sie in eine Datenbank exportiert werden.

Vor- und Nachteile von ORM

Wie ich bereits kommentiert habe, mit Mit ORM können Sie abstrahieren aus der Datenbank und vereinfachen den notwendigen Quellcode erheblich. Das Mapping erfolgt automatisch und das bedeutet, dass Sie beim Programmieren viel Mühe von Ihren Schultern nehmen müssen. Zusätzlich zur Benutzerfreundlichkeit und Geschwindigkeit bietet es Sicherheit der Datenzugriffsschicht gegen Angriffe.

Aber nicht alle sind gute Dinge ORM hat auch seine Nachteile. In stark ausgelasteten Umgebungen kann dies die Leistung verringern, wenn Sie dem System eine zusätzliche Ebene hinzufügen. Dazu gehört auch das Erlernen von ORM, damit Sie es verwenden können. Dies kann einige Zeit in Anspruch nehmen, um es richtig zu verstehen und zu nutzen.

ORM für Programmiersprachen

Abhängig von der verwendeten Programmiersprache Sie können ein ORM verwenden. Sie können nicht irgendein ORM verwenden, sondern müssen das richtige verwenden. Beispielsweise:

  • Javac: Ruhezustand, MyBatis, iBatis, Ebean usw.
  • .NET: Entity Framework, nHibernate, MyBatis.Net usw.
  • PHP: Lehre, Antrieb, Felsen, Erstarrung usw.
  • Python: Peewee, SQLAlchemy, PonyORM, Elixier usw.

Beispiel mit Python und ORM

Peewee ist ein einfaches und verkürztes ORM zur Verwendung mit Python. Weitere Informationen erhalten Sie von Ihrem offizielle Website. Außerdem sollten Sie wissen, dass Peewee verschiedene DBMS unterstützt, dh mehrere Datenbankverwaltungssysteme wie SQLite, MySQL und Postgresql. Sie müssen nur die ursprüngliche bbdd-Deklaration ändern und fertig.

Zum Beispiel wird in Ihre Kurzanleitung oder Schnellstart Auf der Website sehen Sie einfache Codebeispiele mit Peewee wie folgt:

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.

Für den Fall, dass Ihnen das wenig erscheint, stehen Ihnen diese zur Verfügung das pwiz tool, ein Programm, das Peewee-Modelle aus Datenbanken bezieht. Beispielsweise:

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

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


Schreiben Sie den ersten Kommentar

Hinterlasse einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert mit *

*

*

  1. Verantwortlich für die Daten: Miguel Ángel Gatón
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.