Тёмный

ORM vs SQL ¿Cuándo usar cada uno? 🤔 

CodelyTV - Redescubre la programación
Подписаться 150 тыс.
Просмотров 36 тыс.
50% 1

Los ORM (Object Relational Mappers ) sirven para persistir entidades en la Base de Datos, pero añaden una capa de abstracción superior respecto a usar direcamente SQL. Aquí explicamos cuándo utilizar ORM en vez de SQL, mostramos código de ejemplo con Doctrine Dbal y ORM.
¡Este video es parte de nuestro curso de Symfony escalable y mantable! 👉bit.ly/symfony-codely
{▸} CodelyTV
├ 🎥 Suscríbete: ru-vid.com?sub_co...
├ 🐦 Twitter CodelyTV: / codelytv
├ 👩‍🌾 Twitter Dani: / dsantaka
├ 🧔🏻 Twitter Javi: / javiercane
├ 📸 Instagram: / codelytv
├ ℹ️ LinkedIn: / codelytv
├ 🟦 Facebook: / codelytv
└ 📕 Catálogo cursos: bit.ly/cursos-codely

Наука

Опубликовано:

 

30 июн 2021

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 66   
@CodelyTV
@CodelyTV 3 года назад
¿Sueles utilizar ORM? ¿Cuando prefieres utilizarlo y cuándo no?
@balapy
@balapy 2 года назад
ORM cuando a través de consultas solo accedes a un dominio funcional y la base de datos de éste dominio está correctamente normalizada, sino SQL
@rodrigovictorcondoriquisbe9431
@rodrigovictorcondoriquisbe9431 2 года назад
SQL es hermoso, tanto para proyectos grandes como pequeños; tienes todo el control de las consultas y un gran rendimiento en su ejecución. Los ORM puede darte desagradables sorpresas si no los utilizas correctamente en bases que escalen demasiado.
@sancanella97
@sancanella97 3 года назад
Justo hoy estaba empezando un proyecto pequeño en mi empresa y estaba investigando sobre si usar o no ORM 🤗
@victoraguileralara
@victoraguileralara 3 года назад
Increíble, hace unas horas justo estaba buscando información al respecto
@majm975
@majm975 2 года назад
Gracias por compartir sus experiencias y conocimiento :) esta muy cool su contenido
@jerkan7
@jerkan7 3 года назад
Buen fichaje este Dani ;-)
@danielcastillo7133
@danielcastillo7133 3 года назад
Pase dos años haciendo casi exclusivamente solo SQL, aprendí un montón de cosas pero... realmente prefiero usar un ORM siempre que este disponible, sobre todo cuando hay varias personas trabajando sobre el mismo código y las tablas tienen relaciones complejas, ademas tampoco se pierde taaaanto rendimiento..
@felixcomp
@felixcomp 3 года назад
Excelente video!.
@juan_paulino
@juan_paulino 3 года назад
Yo llevó desconectado del ecosistema PHP unos años, pero creo recordar que PDO si evita la inyección SQL. De echo es el sustituto de la librería MySQLi que si tiene problemas de inyección SQL. ¿No es así? En cualquier caso muy interesante el video. 😉
@javierchiquitoavellan1666
@javierchiquitoavellan1666 2 года назад
Tengo entendido que una manera de evitar inyección sql es con consultas preparadas. Y si, pdo permite realizar eso.
@kiriitoh
@kiriitoh 3 года назад
8:16 A parte del argumento que da Dani sobre los condicionales en las consultas, otra ventaja muy importante y que destacaría es que usando el queryBuilder nos podemos abstraer de la tecnología concreta de base de datos ya que DBAL sería el encargado de montar la query para ya sea MariaDB, PostgreSQL... etc. Por otro lado, si usamos el approach de SQL en raw, nos estamos acomplando a esa tecnología en concreto para la cual hemos escrito la consulta (sí es cierto que para consultas sencillas de SQL no importaría ya que serían compatibles). ¡👍🏻 Muy buen vídeo 👍🏻!
@kiriitoh
@kiriitoh 3 года назад
@@flavioe.salasm.9922 Desde luego que los ORM no soportan esas cosas tan específicas; no es el objetivo de un ORM darte un soporte al 100% de la tecnología. Si tienes que hacer cosas manualmente con triggers... pues no tienes muchas alternativas. La verdad es que no soy nada fan de tener lógica en la base de datos; fue un approach muy usado hace años pero creo que ya se ha demostrado la mala escalabilidad de esas soluciones.
@vicenteangellopezromero3187
@vicenteangellopezromero3187 3 года назад
@@flavioe.salasm.9922 Una cosa es cargar el servidor de aplicaciones y otra muy distinta es cargar el servidor de bases de datos. Está claro que ​ @K B habla de descargar el servidor de bases de datos y cargar de lógica de negocio al servidor de aplicaciones, con sus balanceos de carga, etc. "Programar del lado del servidor" es programar tanto en el servidor de aplicaciones como en el servidor de bases de datos. Y sí, en el propio DBMS se puede meter lógica a base de procedimientos, funciones, triggers, etc.
@adolfocuadros3619
@adolfocuadros3619 2 года назад
@@kiriitoh Estoy totalmente de acuerdo contigo, para mí una mala practica es meter lógica de negocios en la base de datos, si una aplicación lo tiene que hacer por temas de rendimiento debería ser su última opción.
@78fgreen
@78fgreen 3 года назад
ORM para consultas simples y SQL para consultas pesadas c:
@hyiedrax5519
@hyiedrax5519 2 года назад
Gracias:)
@hyiedrax5519
@hyiedrax5519 2 года назад
Me has ahorrado media hora
@roy_c
@roy_c 2 года назад
Para hacer una query simple, para eso me quedo con SQL. Para que añadir mas complejidad para hacer algo simple?
@adolfocuadros3619
@adolfocuadros3619 2 года назад
@@roy_c ORM por temas de practicidad. y SQL directo por temas de rendimiento.
@roy_c
@roy_c 2 года назад
@@adolfocuadros3619 depende que sea practicidad para cada caso. Para mi un ORM sirve para no perder tiempo, por ejemplo, si tenes muchos cruds. Igual, hace años que no hago cruds ja. O para prototipar algo.
@elProdigio
@elProdigio 3 года назад
Mola que os hayáis puesto de acuerdo en el colORM de la camiseta 😅
2 года назад
21:53 excelente! 🥳 Saludos...
@benjamincisneros797
@benjamincisneros797 3 года назад
Que opinan de probar métodos que consultan la base de datos? Por ejemplo con DBUnit o similar
@ing.juandiaz2789
@ing.juandiaz2789 2 года назад
HOLA, como Hacemos un proyecto laravel symfony que tiene patrones de diseño y mucha carga de objetos escalable sin quedarse pobre por los recursos en memoria y procesador que se consume al tener el Monolito
@emmanuelvalverderamos
@emmanuelvalverderamos 3 года назад
Un curso de diseño u gestión de base de datos (de las más conocidas y open source, como MySQL, o Postgres).
@WilfredoTorresAriza
@WilfredoTorresAriza 3 года назад
Porfa me pueden aclarar a que se refieren con 'proyecciones' .
@cermlkdf
@cermlkdf Месяц назад
se pueden tener las consultas en un procedimiento almacenado y solo llamarlo y enviarle los parámetros, es correcto ?
@carmeloramirez9559
@carmeloramirez9559 3 года назад
Honestamente, los ORM son una caja negra con un performance muy pero muy malo , mejor realizar consultas optimizadas desde el principio aunque demores un poco porque el dolor de cabeza de migrar despues va hacer Grande. claro esta cada quien saque sus conclusiones con sus experiencias.
@MiguelPerez-wq1lh
@MiguelPerez-wq1lh 2 года назад
hexagonal con ORM y consultas custom, la combinacion y usar cada cosa para lo que esta diseniada es lo idea
@EldiariodeAlbert
@EldiariodeAlbert 3 года назад
La seguridad tiene como precio el rendimiento
@gempf
@gempf 9 месяцев назад
pero no entiendo, ellos hacen una consulta a un endpoint y ese enpoint les responde algo ¿y ese "algo" ya se fué a la base de datos? No entendí el paso de mostrarme el endpoint a ir al código, mas o menos 4:30 del video
2 года назад
22:45 bien dicho 👍
@katelme
@katelme 3 года назад
Y MyBatis de java donde se englobaría?
@katelme
@katelme 3 года назад
Se podría tratar un xml,json como fuente de datos de una tabla. Hay algun driver sql?
@SimaDamian
@SimaDamian 3 года назад
En Mysql podes trabajar con xml pero es un quilombo (no te recomiendo). En MSSQL es un poco mejor. En ambos casos el SP que realizaría el trabajo se puede volver inmantenible. Depende de lo que quireas hacer. Por otro lado si queres trabajar con un XML desde codigo y luego invocas las sentencias en una transacción. Desconozco si existen herramientas que realizen ese trabaja y se las pueda configurar.
@jhonvalencia6902
@jhonvalencia6902 3 года назад
Que es eso del profiler? Dónde puedo leer sobre la herramienta?
@katelme
@katelme 3 года назад
Al menos en hibernate es un parámetro de configuración debug con el que te logea la HQL relacionada con la SQL que genera. También tienes el plan de ejecución del motor de base de datos
@edustreamimg
@edustreamimg 2 года назад
donde haya una freequery con redis que se quite cualquier orm y más si tienes que hacer reporting
@marcosgarces7962
@marcosgarces7962 3 года назад
Que pensáis de flutter
@katelme
@katelme 3 года назад
Otro peligros de los ORM. Solo debería haber una aplicación leyendo de una tabla determinada? Si hay una app que lee y otra escribe como queda esa cache?
@SimaDamian
@SimaDamian 3 года назад
Entiendo el punto. Pero ese cache que comenta se entiende que es sobre tablas con datos fijos (estilo configuraciones). Se debe saber cuales tablas (objetos mapeados) deberían ser chache y cuales no. O actualizar el cache en base a eventos. Por otro lado no es un probelma exclusivo de ORM.
@ahnsylimbal6811
@ahnsylimbal6811 3 года назад
Yo en lo personal me quedo con lo tradicional, sin ORM y PDO, usando SQL de forma programáticamente, así aprendo de cosas nuevas que puedan surgir en SQL y tener el control total de lo que hago.
@jesusruedarosas459
@jesusruedarosas459 Год назад
Pero pierdes flexibilidad y escalabilidad
@chaosdemon3182
@chaosdemon3182 Год назад
En lo personal me gusta mas sql, utitlizar ORM siempre me da bugs en algo xD
@snithfferx
@snithfferx Год назад
Spoiler alert. Ya no se usan Yaml. jejejejej van a tener que rehacer o más bien, deberán hacer una pequeña actualización. Hablando de ORM, sé que no lo es, qué opinan de usar graphql como ORM ? Yo para evitarme estar creando consultas SQL en el medio de mi modelo (porque uso MVC) me hice un par de métodos que hicieran eso, usando como conector y ejecutor de dichas consultas a PDO, qué opinion me dan de eso. Para simplificarles, para pedir algo o agregar algo, haces una arreglo con cierta estructura y se lo pasas a una función y esta usando otra función pero ésta vez con las herramientas de PDO se conecta a la base y devuelven el resultado en un arreglo asociado listo para consumir.
@marcosr.guevara2225
@marcosr.guevara2225 3 года назад
Spoiler: Si el ORM tiene lo que te hace falta, siempre que puedas.
@felixcomp
@felixcomp 3 года назад
Por cierto, lo de las camisas casi iguales Jajajajajajajajaja
@SergioCasmuz
@SergioCasmuz 3 года назад
Si lo uso, siempre que se pueda y no me complica lo uso, RE
@Takyomismo
@Takyomismo 3 года назад
Eloquent de Laravel no necesita mapear la bd
@Hasdpk
@Hasdpk 3 года назад
Eloquent usa ActiveRecord, que no es lo mismo que ORM.
@soj3da
@soj3da 3 года назад
@@Hasdpk los dos son ORM, solo que hay dos tipos por asi decirlo Data Mappers (Doctrine se basa en este patron) y Active Record (Eloquent en este)
@mezdelex
@mezdelex 3 года назад
ORM + QueryDSL la salud
@DiegoLozada77
@DiegoLozada77 3 года назад
La explicación seria mas hermosa si hubiese empezado con Java o Javascript :v
@ziat1988
@ziat1988 3 года назад
subtitle please
@abrahamfract
@abrahamfract 3 года назад
Si el objetivo era darme tips sobre cuando usar uno y cuando otro para empezar un desarrollo, su video no me aporto casi nada. Los tips que dieron es cuando ya está hecho y eso no me sirve de mucho. En cambio yo me enfocaría si la base es heredada y tiene claves compuestas (pésima práctica) no usaría un orm, y si la base está bien hecha (es decir, claves enteras únicas) si usaría un orm. La cuestión es poder decidir antes del desarrollo y no después, ya que los temas de rendimiento se ven después, cuando la aplicación está en producción y se conoce el volumen de uso, y los tips que me han dado es para cuando ya está hecho. Además cada orm tiene la opción de ejecutar sql directo cuando el rendimiento de una operación con orm no es óptima. Me gustarían tips para decidir desde el análisis y diseño, y no tips de rendimiento para cuando ya está implementado.
@cristianmosteiro6458
@cristianmosteiro6458 3 года назад
Bueno tu aporte técnico. El inicio innecesario. El objetivo era compartir el pienso. Te lo tiro porque suenas grosero y no te va a sumar al trabajar en equipo. De nuevo va con ganas de sumarte no en lo técnico vale. Abrazo
@bryan98pa
@bryan98pa 2 года назад
El ORM de Laravel tambien es bueno.
@aheadlabs
@aheadlabs 3 года назад
¿Y Entity Framework no os merece un comentario? :D
Далее
Surprise 😲🤣 #demariki
00:18
Просмотров 1,7 млн
Raw SQL, SQL Query Builder, or ORM?
16:19
Просмотров 94 тыс.
RAG JavaScript - De Local a AWS EC2
17:31
DONT USE AN ORM | Prime Reacts
25:46
Просмотров 199 тыс.
SQL Course from Scratch | Databases for Beginners
52:56
AWS SQS vs SNS vs EventBridge - ¿Cuál escoger?
21:23
¿Qué es un ORM? ¿Reemplazará a SQL?
13:51
Просмотров 84 тыс.
How To Unlock Your iphone With Your Voice
0:34
Просмотров 26 млн
Спидран по ПК
0:57
Просмотров 27 тыс.