NO SQL: como se modelan las bases de datos no relacionales?

HolaMundo
19 Mar 202114:55

Summary

TLDREl video discute las diferencias entre bases de datos SQL y NoSQL, destacando la eficiencia de las NoSQL en el rendimiento a gran escala. Se aborda el tema de lecturas versus escrituras y cómo modelar datos en una base de datos NoSQL, a través de ejemplos de aplicaciones como blogs y sistemas de stock. Se menciona la importancia de las transacciones o batch en la consistencia de los datos y se sugiere la paginación para manejar grandes volúmenes de información.

Takeaways

  • 📈 Las bases de datos NoSQL surgieron para resolver problemas de rendimiento a gran escala.
  • 🔄 La elección entre SQL y NoSQL depende del objetivo de la aplicación, como la cantidad de escrituras y lecturas que se esperan.
  • 🤔 Es importante entender el problema que se busca solucionar al modelar una base de datos NoSQL.
  • 📚 La tercera forma normal es común en bases de datos SQL, pero NoSQL permite más libertad en la estructura de datos.
  • 🔄 En NoSQL, se deben considerar las actualizaciones en múltiples documentos como transacciones o batch writes para mantener la consistencia de los datos.
  • 📊 Al modelar una base de datos NoSQL, se deben tener en cuenta las vistas y cómo se mostrarán los datos.
  • 🌐 La estructura de los documentos en NoSQL refleja la forma en que se presentarán los datos en la aplicación.
  • 🔄 Si se necesita actualizar información en varios documentos, se debe utilizar un mecanismo de transacción o batch para evitar inconsistencias.
  • 📈 Para aplicaciones con un gran número de lecturas, como blogs o portafolios, NoSQL puede ser una mejor opción que SQL.
  • 🔄 NoSQL permite una mayor flexibilidad en la estructura de datos, lo que puede facilitar la adaptación a cambios en la vista de la aplicación.
  • 📊 La modelado de bases de datos NoSQL se debe basar en la vista que se desea mostrar y en el rendimiento que se espera de la aplicación.

Q & A

  • ¿Qué problema específico resuelven las bases de datos NoSQL?

    -Las bases de datos NoSQL resuelven el problema del rendimiento a gran escala, siendo ideales para aplicaciones que no anticipan problemas de rendimiento en el futuro.

  • ¿Cuándo sería apropiado utilizar una base de datos NoSQL en lugar de una SQL?

    -Se debe utilizar una base de datos NoSQL cuando se enfrente a una aplicación que tenga una gran cantidad de lecturas y poca escritura, y se requiera un rendimiento a gran escala.

  • ¿Qué es la tercera forma normal y cómo se aplica en las bases de datos SQL?

    -La tercera forma normal es una técnica utilizada para la modelación de bases de datos SQL, con el objetivo de eliminar las dependencias transitivas y mejorar la integridad referencial de los datos.

  • ¿Qué sucede si necesitamos actualizar un dato en una base de datos NoSQL?

    -Al actualizar un dato en una base de datos NoSQL, se debe actualizar en todas las colecciones o documentos donde aparezca ese dato para mantener la consistencia de los datos.

  • ¿Qué es un raid batch en bases de datos NoSQL?

    -Un raid batch, también conocido como transacción en algunas bases de datos, es un mecanismo que permite escribir múltiples documentos a la vez, asegurando que todas las actualizaciones tengan éxito o ninguna se realice, evitando así la inconsistencia de los datos.

  • ¿Cómo se modela una colección en una base de datos NoSQL según el script?

    -Para modelar una colección en una base de datos NoSQL, se crea un documento con los atributos relevantes para la vista, como el título, la descripción, la fecha de creación, el nombre del autor y la imagen del autor.

  • ¿Qué es la ventaja de modelar una colección en función de la vista en una base de datos NoSQL?

    -La ventaja de modelar una colección en función de la vista es que se pueden realizar consultas más sencillas y directas, obteniendo exactamente los datos necesarios sin la necesidad de realizar join o actualizaciones en múltiples lugares.

  • ¿Cómo se podrían manejar los cambios en la vista de una aplicación en una base de datos NoSQL?

    -Para manejar cambios en la vista, se podría escribir un script para actualizar los documentos existentes o se podrían agregar nuevos campos al documento sin afectar la estructura general de la colección.

  • ¿Cómo se podrían implementar la paginación y los informes en una base de datos NoSQL?

    -La paginación se implementaría buscando los datos en partes, mientras que los informes se podrían crear actualizando una colección de informes con los datos relevantes a medida que se actualizan los datos en la colección principal.

  • ¿Qué es la diferencia principal entre la modelación de bases de datos SQL y NoSQL según el script?

    -La principal diferencia es que en SQL se busca una estructura rígida y definida mediante la tercera forma normal, mientras que en NoSQL se modela la colección basada en la vista y se permite una mayor flexibilidad en la estructura de los documentos.

Outlines

00:00

🔍 Introducción a las bases de datos NoSQL

Este segmento inicia con una revisión de la historia de las bases de datos, enfocándose en las diferencias entre SQL y NoSQL. Se destaca que las bases de datos NoSQL son ideales para escenarios de alto rendimiento, aunque muchas aplicaciones no requieren este nivel de escalabilidad. El presentador enfatiza la importancia de estar preparados para modelar y migrar datos a NoSQL cuando sea necesario. Se advierte que el método de modelado que se va a mostrar no es único ni definitivo, y se deben considerar distintas estrategias según el problema específico a resolver. Se aborda el balance entre lecturas y escrituras en el diseño de bases de datos, recomendando SQL para altas escrituras y NoSQL para intensivas lecturas, especialmente en aplicaciones web, blogs o portafolios.

05:00

📊 Modelando una base de datos NoSQL

En este segmento se explica cómo modelar una base de datos NoSQL usando el ejemplo de un blog. Se describe la interfaz de usuario, incluyendo elementos como el autor, título y descripción de los posts. Se discute la creación de una colección NoSQL llamada 'cosas', detallando los atributos necesarios como título, descripción, fecha de creación y autor, incluyendo el avatar. También se aborda la necesidad de una colección de usuarios para gestionar datos adicionales como correo y contraseña. El narrador subraya la complejidad de actualizar datos en múltiples colecciones y cómo las transacciones o 'batch updates' pueden ayudar a mantener la consistencia entre ellas.

10:01

🔧 Manejo de transacciones y reportes en NoSQL

Este último segmento cubre el manejo de transacciones en bases de datos NoSQL, explicando conceptos como 'write batch' o transacciones, que permiten actualizar múltiples documentos de manera consistente. Se enfatiza la importancia de mantener la coherencia de datos entre diferentes colecciones, utilizando el ejemplo de actualizar el nombre de un usuario en posts y colecciones de usuarios simultáneamente. Se explica cómo modelar las colecciones basadas en las vistas de la aplicación, con ejemplos de reportes y paginación de datos en redes sociales. El narrador concluye instando a los espectadores a considerar cómo la estructura de la base de datos se alinea con las necesidades de la aplicación y menciona la posibilidad de actualización de colecciones conforme cambian las vistas.

Mindmap

Keywords

💡bases de datos

Las bases de datos son sistemas informáticos diseñados para almacenar, gestionar y recuperar información de manera eficiente. En el video, se discuten dos tipos principales: SQL (relacionales) y NoSQL (no relacionales), y se explica cómo cada uno resuelve diferentes problemas en términos de rendimiento y estructura de datos.

💡SQL

SQL (Structured Query Language) es un lenguaje de programación utilizado en la gestión de bases de datos relacionales. Permite el almacenamiento, manipulación y recuperación de datos de forma estructurada. En el video, se discute cómo las bases de datos SQL suelen seguir la tercera forma normal, lo que les da una estructura bien definida y predecible.

💡NoSQL

NoSQL ('No SQL' o 'Not Only SQL') se refiere a un tipo de sistema de gestión de bases de datos que no sigue el modelo relacional tradicional. Estas bases de datos están diseñadas para manejar grandes cantidades de datos no estructurados o semiestructurados, y son ideales para aplicaciones que requieren un alto rendimiento y escalabilidad.

💡rendimiento a gran escala

El rendimiento a gran escala se refiere a la capacidad de un sistema de manejar una gran cantidad de carga de trabajo, tráfico o datos sin comprometer su velocidad ni su integridad. En el contexto del video, este concepto es crucial a la hora de elegir el tipo de base de datos que se utilizará en una aplicación.

💡lecturas versus escrituras

La distinción entre lecturas y escrituras es fundamental a la hora de diseñar y elegir la base de datos adecuada para una aplicación. Las lecturas se refieren a la obtención de datos de la base de datos, mientras que las escrituras implican la inserción o actualización de información. El video destaca la importancia de entender esta relación para modelar correctamente la base de datos.

💡modelado de datos

El modelado de datos es el proceso de definir la estructura y las relaciones de los datos en una base de datos. Este proceso es crucial para optimizar el rendimiento y la eficiencia de la aplicación. En el video, se abordan diferentes enfoques de modelado según el tipo de base de datos (SQL o NoSQL) y las necesidades específicas de la aplicación.

💡transacciones

Las transacciones son un conjunto de operaciones en una base de datos que se ejecutan de manera atómica, es decir, todas las operaciones deben completarse correctamente o ninguna se realiza. Esto garantiza la integridad y consistencia de los datos en caso de actualizaciones o cambios en varios documentos o registros.

💡colecciones

En el contexto de las bases de datos NoSQL, una colección es un grupo de documentos que contienen datos similares. Las colecciones son la forma en que se organiza y almacena la información en sistemas NoSQL, en contraposición a las tablas en bases de datos relacionales.

💡documento

Un documento es una unidad de datos en una base de datos NoSQL. Los documentos suelen tener un formato JSON-like y contienen un conjunto de campos y valores que representan la información almacenada. Los documentos son flexibles y permiten una variedad de estructuras de datos.

💡consultas

Las consultas son solicitudes para obtener información de una base de datos. En bases de datos NoSQL, las consultas se utilizan para recuperar datos de una o más colecciones, y pueden ser más sencillas o complejas dependiendo de los criterios de búsqueda y la estructura de los documentos.

💡paginación

La paginación es un método de presentación de datos en las que se dividen en páginas, mostrando un número limitado de elementos en cada página. Es útil para manejar grandes cantidades de información y mejorar la experiencia del usuario al evitar la sobrecarga de contenido en una sola pantalla.

Highlights

Discusión sobre las bases de datos SQL y NoSQL, y sus diferencias en términos de rendimiento y aplicación.

Explicación de cómo las bases de datos NoSQL resuelven problemas de rendimiento a gran escala.

La importancia de entender el equilibrio entre lecturas y escrituras al elegir un tipo de base de datos.

Comparación entre el modelado de bases de datos SQL y NoSQL, y su impacto en la estructura de datos.

La necesidad de adaptar el modelado de datos según las necesidades de lectura y escritura de la aplicación.

Ejemplo práctico de cómo modelar una base de datos NoSQL para un blog.

La ventaja de la flexibilidad en el modelado de datos en NoSQL para aplicaciones de lectura intensiva.

El desafío de mantener la consistencia de datos al actualizar información en bases de datos NoSQL.

Método para actualizar datos en múltiples colecciones utilizando transacciones o operaciones de escritura múltiple (write batch).

Importancia de la modelación de colecciones en NoSQL basada en la vista y la necesidad de adaptarla en caso de cambios.

Aplicación de paginación para manejar grandes cantidades de datos en colecciones NoSQL.

Estrategia para actualizar documentos en una colección cuando la vista cambia.

Uso de colecciones de informes para almacenar datos agregados y estadísticas.

Recomendación de seguir investigando para encontrar diferentes formas de modelar bases de datos NoSQL según el problema específico.

El mensaje patrocinador sobre Hola Beats, una opción de música de fondo para profesionales.

Transcripts

play00:00

nosotros hemos conversado sobre bases de

play00:02

datos anteriormente en este canal hemos

play00:04

visto su historia y también las

play00:06

diferencias que tienen las bases de

play00:08

datos sql con las no sql las bases de

play00:11

datos no sql resuelven un problema muy

play00:13

específico y estas llegaron para

play00:16

quedarse y el problema que estas

play00:17

resuelven es rendimiento a gran escala

play00:21

un porcentaje muy grande de las

play00:22

aplicaciones que existen y que van a

play00:24

existir no van a tener nunca problemas

play00:26

de rendimiento por lo que no tiene

play00:28

sentido utilizar una base de datos no

play00:30

relacional con ese objetivo en mente sin

play00:33

embargo cuando ese momento llegue

play00:35

debemos estar preparados para saber cómo

play00:38

modelar nuestros datos y por supuesto

play00:40

cómo realizar la migración hola mundo y

play00:49

bienvenidos a este vídeo las bases de

play00:51

datos no relacionales al tener un

play00:53

formato estás más libre hace que sea más

play00:56

difícil encontrar una estructura única

play00:59

para poder modelar las a diferencia de

play01:01

las sql que por lo general se utiliza

play01:04

mucho la tercera

play01:05

forma normal y hoy nosotros en este

play01:07

vídeo vamos a ver una forma de como tú

play01:09

puedes modelar una base de datos sql

play01:12

pero por favor

play01:13

mira este vídeo con mucha discreción

play01:15

esta no es la única forma de modelar una

play01:18

base de datos no sql y lo más probable

play01:20

es que si sigues investigando vas a

play01:22

encontrar también distintas formas de

play01:25

modelar una base de datos no sql y por

play01:27

supuesto está quizás no va a ser la

play01:30

mejor opción para modelar una base de

play01:32

datos no sql dependiendo de tu problema

play01:35

lo primero que nosotros tenemos que

play01:36

tener en claro es cuál es el problema

play01:38

que nosotros vamos a solucionar en este

play01:41

caso tenemos que primero conversar de un

play01:45

punto bastante importante que es

play01:46

lecturas versus escrituras cuando

play01:50

nosotros estamos construyendo una

play01:52

aplicación que va a tener una gran

play01:54

cantidad de escritura pero va a tener

play01:57

poca lectura como podría ser por ejemplo

play01:59

un listado de productos que nosotros

play02:01

vamos a estar agregando y quitando

play02:03

constantemente de un stock eso es de

play02:06

rápida escritura y por el contrario si

play02:07

nosotros vamos a tener un sistema que va

play02:09

a tener muchas más lecturas

play02:11

en este caso puede ser un blog o un

play02:15

portafolio para el caso que nosotros

play02:16

tengamos que escribir mucho la verdad es

play02:19

que es bastante más sensato utilizar

play02:21

bases de datos sql y modelar las en la

play02:24

tercera forma normal pero si nosotros

play02:25

vamos a estar leyendo mucho de la base

play02:28

de datos y no vamos a estar escribiendo

play02:30

tanto cómo puede ser una página web un

play02:31

blog o también un portafolio en ese caso

play02:34

va a ser mucho mejor utilizar una base

play02:36

de datos no relacional para solucionar

play02:38

el problema del rendimiento pero insisto

play02:40

no vamos a tener problemas de

play02:41

rendimiento a menos que nosotros estemos

play02:43

trabajando con datos y también con

play02:45

concurrencia a gran escala y tratando de

play02:48

explicarlo de esta manera cuando

play02:49

nosotros tengamos una lista nosotros lo

play02:52

que vamos a querer hacer si estamos

play02:54

trabajando con una base de datos

play02:56

relacionales sql vamos a necesariamente

play02:59

tener que hacer join si en este caso

play03:01

vamos a tener que traer los datos desde

play03:02

distintas tablas pero si nosotros

play03:04

queremos escribir en uno de estos

play03:06

registros por ejemplo queremos

play03:07

actualizar el usuario el único dato que

play03:10

nosotros vamos a tener que actualizar

play03:12

para hacer la tabla del usuario ahora

play03:14

poniendo el ejemplo para la parte

play03:15

contraria si nosotros quisiéramos leer

play03:17

de una

play03:18

de datos no relacional y quisiéramos

play03:20

poblar una vista la forma de modelar la

play03:22

sería que nosotros crearemos un

play03:24

documento en base a la vista que

play03:26

nosotros estamos creando por ejemplo si

play03:28

nosotros tenemos un blog donde estamos

play03:29

mostrando el nombre del usuario también

play03:31

estamos mostrando el título la fecha en

play03:33

que se creó el contenido de este lo

play03:35

mejor sería modelar una tabla o una

play03:38

colección que contenga esos datos pero

play03:40

si nosotros por alguna razón tenemos que

play03:42

actualizar el usuario

play03:45

el problema que nosotros tendremos será

play03:46

que tenemos que actualizar la colección

play03:48

de usuarios y también todos los otros

play03:51

documentos donde el usuario haya escrito

play03:55

pero antes de continuar vamos a

play03:57

entregarles un mensaje de nuestro

play03:59

patrocinador hola bits es música pensada

play04:02

en profesionales programadores

play04:03

diseñadores analistas o quienquiera que

play04:06

necesite realizar una tarea compleja y

play04:09

debe concentrarse o la bits lo puedes

play04:11

encontrar en todas las grandes

play04:12

plataformas de streaming como apple

play04:14

music o spotify

play04:15

yo personalmente escucho esta música

play04:17

cuando estoy trabajando actualmente

play04:18

tiene 100 canciones pero estaremos

play04:21

agregando más y más

play04:23

los meses para que puedas golpear al

play04:26

maldito del botón de play y así

play04:28

sumergirte en tu mundo

play04:29

hola beats te ayudará a mantener la

play04:32

concentración y si eres creador de

play04:34

contenido y necesitas música de fondo

play04:36

mientras estás interactuando con tu

play04:38

audiencia ya sea en vídeos para youtube

play04:40

o cast streams puedes utilizar todas las

play04:43

canciones de hola beats

play04:45

sin miedo a un copyright klein son

play04:47

completamente gratis para ustedes hola

play04:50

beats es una creación de hola mundo y

play04:52

recuerden se escribe

play04:54

beatz y no beats y esa es principalmente

play04:58

la razón por la cual tú vas a preferir

play05:00

utilizar este tipo de modelamiento de

play05:02

base de datos cuando tú tengas que leer

play05:04

muchísimo pero que así no tengas que

play05:06

escribir ahora nosotros vamos a ver un

play05:07

ejemplo de una aplicación en este caso

play05:09

yo tengo una página de un blog y vamos a

play05:12

ver cómo se moderaría está en forma de

play05:14

no sql lo primero que nosotros vamos a

play05:17

hacer por supuesto va a ser tratar de

play05:18

graficar la interfaz en este caso

play05:21

nosotros vamos a tener nuestro

play05:22

explorador

play05:24

y vamos a tener un listado de posts y

play05:28

posiblemente aquí nosotros también vamos

play05:30

a tener alguna imagen de algún usuario

play05:31

en este caso los datos que yo voy a

play05:34

estar mostrando en mi post van a ser el

play05:37

autor o el nombre del autor vamos a

play05:39

colocar el nombre del autor vamos a

play05:41

querer también mostrar el título y

play05:43

también una pequeña descripción del post

play05:46

y vamos a colocar que esto va a ser una

play05:48

descripción además de eso por supuesto

play05:50

dentro de esta pantalla nosotros vamos a

play05:53

tener en este caso una imagen de usuario

play05:55

en este caso esta imagen de usuarios lo

play05:58

más probable es que venga de algún panel

play05:59

de administración o de alguna barrita de

play06:01

navegación esta no tiene que ver en lo

play06:04

absoluto con la vista que nosotros

play06:07

estamos mostrando en este caso que

play06:09

vendría siendo el listado de los posts

play06:12

por lo que esto nosotros no lo vamos a

play06:14

incluir dentro de la consulta o dentro

play06:17

del modelamiento que nosotros

play06:18

necesitamos pero sí vamos a incluir el

play06:21

nombre de autor título la descripción y

play06:23

supongamos que aquí nosotros también

play06:25

tenemos una fecha

play06:26

ahora lo que nosotros vamos a hacer es

play06:28

tratar de crear una colección que

play06:30

contenga estos atributos así es que

play06:31

vamos a bajar ahora y vamos a crear en

play06:34

este caso una colección que se va a

play06:36

llamar cosas y aquí nosotros vamos a

play06:38

empezar a colocar los atributos que nos

play06:40

interesan lo primero que tenemos por

play06:42

supuesto es el título

play06:45

vamos a dejarlas todas estas en inglés y

play06:48

el título por supuesto es un string

play06:50

vamos a colocar también el tipo de dato

play06:54

tenemos el título y vamos a continuar

play06:56

con la descripción y yo sencillamente la

play06:59

voy a dejar como cesc string vamos a

play07:01

hacer es ver qué más necesitamos

play07:03

necesitamos la fecha de creación de este

play07:05

post entonces aquí vamos a colocar

play07:07

created

play07:09

y en este caso el tipo de dato va a ser

play07:11

tipo 20 y además nosotros tenemos el

play07:14

nombre del autor y posiblemente también

play07:16

estamos mostrando la imagen del autor

play07:18

así es que en cada post que nosotros

play07:20

creemos también vamos a crear un

play07:23

giuseppe aquí pueden utilizar la

play07:24

convención que quieran si no les gusta

play07:26

yo se pueden colocar created buy o autor

play07:29

eso la verdad es que no es tan real y

play07:31

aquí nosotros dentro de este documento

play07:33

vamos a abordar por supuesto el ibi del

play07:36

usuario que éste va a ser puede ser un

play07:39

string puede ser un número lo que

play07:40

ustedes quieran yo lo voy a dejar con un

play07:41

string lo siguiente que nosotros

play07:43

necesitamos es el name que también va a

play07:45

ser un string y lo siguiente que

play07:46

nosotros necesitamos va a ser

play07:48

mencionamos que íbamos a colocar también

play07:50

la imagen del usuario una pequeña carita

play07:51

así que vamos a colocar acá también

play07:54

avatar en este caso también va a ser una

play07:56

estrella en este caso este stain va a

play07:58

ser una url cerramos esto y cerramos

play08:02

nuestro documento de post y éste vendría

play08:05

siendo la estructura que nosotros

play08:07

queremos crear cuando vayamos a modelar

play08:10

una colección en no sql ahora bien lo

play08:14

que pasaría si nosotros también

play08:16

queríamos ver el listado nuestros

play08:17

usuarios porque estos usuarios van a

play08:18

tener un nombre para tener un usuario

play08:20

para tener una contraseña y los cuales

play08:22

que también un correo vamos a crear

play08:23

inmediatamente también esa colección que

play08:26

nosotros vamos a agregar users este por

play08:28

supuesto también va a tener una idea

play08:29

pero lo vamos a omitir pero va a tener

play08:32

en este caso un nombre que va a ser un

play08:34

string es tormenta eléctrica

play08:36

no sé si alcanzan a escucharla tenemos

play08:38

el nombre vamos a tener un correo que

play08:41

también va a ser un string también vamos

play08:42

a tener el avatar que también va a ser

play08:44

un string y supongamos que también

play08:46

nosotros tenemos un password que también

play08:48

es un string y un salto que también es

play08:50

un estudio y vamos a dejarlo solamente

play08:51

hasta ahí para que sea sencillo el

play08:53

ejercicio en este caso el salto es una

play08:55

string generado de manera aleatoria que

play08:58

se utiliza para encriptar la contra

play09:00

del usuario después vamos a hablar de

play09:02

eso ahora qué es lo que ocurre si

play09:03

nosotros queremos actualizar el usuario

play09:06

inmediatamente si queremos cambiar por

play09:08

ejemplo el nombre qué raro que una

play09:10

persona se cambie no me pero supongamos

play09:11

que te quieres cambiar el nombre yo

play09:13

tengo que venir a buscar el documento de

play09:15

usuario tengo que encontrar el nombre

play09:17

que éste tiene tengo que actualizarlo y

play09:20

posterior a eso tengo que acordarme y yo

play09:22

de que otras conexiones también incluyen

play09:25

el nombre del usuario en este caso yo sé

play09:28

que está en post pero también podría

play09:30

estar en otra colección así que luego de

play09:32

yo actualizar el nombre del usuario

play09:34

también tengo que venir a post y tengo

play09:36

que buscar esta propiedad de name que se

play09:39

encuentra dentro del documento de post

play09:41

dentro de post ngoi users y dentro de

play09:44

giuseppe tengo el nombre del usuario

play09:46

entonces tengo que actualizarlo en dos

play09:47

partes en giuseppe y también en osea

play09:51

afortunadamente si nosotros queremos

play09:53

actualizar el nombre del usuario en

play09:56

varias colecciones existe algo que se

play10:01

llama right

play10:03

algunos motores de base de datos o

play10:05

algunos servidores de base de datos no

play10:07

motores servidores de base datos llaman

play10:09

a esto también transacciones pero en

play10:10

algunas bases de datos como por ejemplo

play10:12

en fire with fire store esto

play10:14

sencillamente se conoce como raid patch

play10:16

que cuando nosotros queremos ir a

play10:18

escribir múltiples documentos a la vez

play10:20

aunque en este caso también necesitarías

play10:22

leer los documentos actualizarlos y

play10:24

luego hilos abordar cuál es la gracia

play10:25

que tiene este raid bach o esta

play10:27

transacción en el caso que cuando

play10:30

estemos tratando de actualizar el nombre

play10:32

de usuario

play10:32

este fallo también inmediatamente va a

play10:34

fallar o no va a dejar actualizar el

play10:37

post pero si es que el usuario tiene

play10:38

éxito y el poste en este caso fracasa

play10:41

cuando nosotros estamos escribiendo en

play10:43

raid bach o una transacción no nos va a

play10:46

dejar actualizar en este caso el nombre

play10:49

del usuario creo que había dicho de esta

play10:50

manera nosotros nos vamos a asegurar que

play10:53

cuando tengamos que actualizar el nombre

play10:54

de usuario ya sea en post y también en

play10:56

you search o estas dos tienen éxito o

play10:59

ambas fracasan y de esta manera nosotros

play11:01

no nos vamos a quedar con datos

play11:03

inconsistentes esto quiere decir la

play11:05

tabla de usuario con un nombre y la

play11:07

tabla de post con otro nombre

play11:09

para eso tenemos que utilizar sí o sí

play11:12

nuestras

play11:14

transacciones o greatbatch van a cambiar

play11:18

el nombre dependiendo del servidor de

play11:19

base de datos que nosotros estemos

play11:20

utilizando pero esto es lo importante lo

play11:23

importante es que si estamos modelando

play11:25

una colección no sql nuestras tablas en

play11:29

este caso tenemos acá los posts nuestra

play11:31

colección de post

play11:33

se va a ver como la página donde

play11:36

nosotros estamos licitando los postres

play11:39

el beneficio que tiene esto cuando

play11:40

nosotros vayamos a hacer una consulta lo

play11:43

podemos hacer con gracia y lo podemos

play11:44

hacer sencillamente un llamado una

play11:45

encuesta lo que nos va a devolver va a

play11:49

ser exactamente lo que nosotros

play11:50

necesitamos qué es

play11:52

lo que se encuentra acá y toda esta

play11:56

información se va a encontrar guardada

play11:58

en nuestra colección de post por esto es

play12:02

que cuando yo les menciona que tenemos

play12:04

que modelar una conexión no es secuela

play12:08

es que lo tenemos que hacer en base a la

play12:11

pista que nosotros tenemos ahora cuál

play12:13

sería el problema si nosotros después

play12:15

cambiamos nuestra vista o queremos

play12:16

mostrar más cosas en este caso nosotros

play12:18

vamos a tener que escribir un script que

play12:21

actualice los documentos que se

play12:23

encuentran dentro de esta colección u

play12:24

otra alternativa también sería

play12:26

sencillamente si es que el documento no

play12:28

tiene ese elemento no mostramos en él

play12:30

así es que esta es una buena alternativa

play12:31

y este fue el vídeo esta semana chicos

play12:33

quería mostrarles la forma de cómo yo he

play12:35

visto que se moderan las bases de datos

play12:37

no sql y la ventaja que tiene esto es

play12:39

que tu sencillamente realizas una

play12:41

consulta

play12:42

ahora si los datos que tú vas a mostrar

play12:44

son muchos por ejemplo como en las redes

play12:46

sociales twitter facebook etcétera

play12:48

tienes muchos muchos datos o muchos

play12:51

muchos muchos documentos metidos dentro

play12:52

de la misma colección lo que haces es

play12:54

que las vas a buscar por paginación es

play12:57

decir esto vas a buscar los bienes de

play12:58

los uno

play12:59

y cuando el usuario llega hasta abajo al

play13:02

final hay tuberías una siguiente

play13:05

búsqueda y vas a buscar los siguientes

play13:07

10 y los siguientes discos y los

play13:09

siguientes días y cuando quieres hacer

play13:11

un reporte porque esa pregunta espejo me

play13:13

iba a llegar lo que tú haces es que no

play13:15

vas a leer directamente de estas tablas

play13:18

sino que cada vez que tú crees un

play13:20

registro tienes que ir a actualizar tu

play13:24

conexión de reports y en reports tú vas

play13:29

a tener un tipo de reporte por ejemplo

play13:31

el del home esto también por supuesto va

play13:33

a ser un string y aquí tú vas a tener su

play13:35

data a mejores formas de modelar esto

play13:37

pero lo importante es que se lo que está

play13:38

aquí tú tienes un objeto con todos los

play13:40

datos que están guardados entonces en

play13:43

resumen las colecciones las modelamos

play13:44

con respecto a la vista y si tenemos un

play13:46

reporte este también es una vista así

play13:48

que nosotros tenemos que ir escribiendo

play13:50

dentro de nuestra colección de reportes

play13:52

a medida que vayamos actualizando los

play13:54

datos esto es una forma donde

play13:56

sencillamente colocamos un tipo en la

play13:58

vista o lo pueden hacer también con la

play14:00

misma forma que anterior tenemos

play14:02

word home podemos también tener más

play14:05

sport no con el producto y así

play14:09

sucesivamente y este fue el vídeo tras

play14:11

semana chicos espero que les haya

play14:12

gustado si le gustó recuerda volver

play14:14

mucho al maldito del botón de me gusta

play14:16

si les encantó considera también

play14:17

suscribirte a este canal déjame un

play14:19

comentario acá abajo de que otro tipo de

play14:21

vídeo te gustaría que hiciera y si

play14:23

deseas profundizar en alguna materia por

play14:25

supuesto que acá abajo también vas a

play14:26

encontrar links con acceso a todos mis

play14:28

cursos hasta próxima y chau mundo

play14:31

[Música]

play14:36

e

play14:37

[Música]

play14:50

no

Rate This

5.0 / 5 (0 votes)

Related Tags
Base de DatosNoSQLSQLRendimientoEscrituraLecturaModelado de DatosAplicacionesTransaccionesColecciones
Do you need a summary in English?