Está en la página 1de 20

UNIDAD: I

BITÁCORA SOBRE EL PROCESO DE


CREACIÓN DE UNA BASE DE
DATOS DISTRIBUIDA MULTI-NODO
CON COCKROACHDB

DIANA LAURA RAMIREZ GARCIA

TÓPICOS DE BASE DE DATOS VERANO-2022

[Escriba aquí] [Escriba aquí] [Escriba aquí]


1

INSTITUTO TECNOLÓGICO DEL VALLE DE OAXACA


DEPARTAMENTOS DE CIENCIAS ECONÓMICO ADMINISTRATIVA
CLAVE: IFF1026

UNIDAD: I

TÓPICO DE BASE DE DATOS


SISTEMAS DE BASES DE DATOS DISTRIBUIDAS

ALUMNA: DIANA LAURA RAMIREZ GARCIA

CARRERA: INGENIERÍA INFORMÁTICA

PERIODO VERANO: 2022

DOCENTE: I.S.C. KEVIN DAVID MOLINA GÓMEZ

CICLO ESCOLAR: 2022-1

EX HACIENDA DE NAZARENO, SANTA CRUZ XOXOCOTLÁN,


OAXACA, 31 DE JULIO DE 2022

Diana Ramírez García Tópicos de base de datos Curso de Verano 2022


2

CONTENIDO
INTRODUCCIÓN .................................................................................................... 3

INSTALACIÓN DE COCKROACHDB ..................................................................... 4

INICIAR UN CLÚSTER DE UN SOLO NODO (WINDOWS) ................................... 7

CONEXIÓN CON EL SHELL DE SQL .................................................................... 9

GIRE Y ESCALE HORIZONTALMENTE UN CLÚSTER LOCAL (WINDOWS)..... 11

RESULTADOS ...................................................................................................... 17

CONCLUSIÓN ...................................................................................................... 18

BIBLIOGRAFÍA ..................................................................................................... 19

Diana Ramírez García Tópicos de base de datos Curso de Verano 2022


3

INTRODUCCIÓN

En tópicos una base de datos se puede implementar de manera clásica o más


compleja dependiendo a la gestión que los administradores y usuarios desean
desempeñar dentro de su información, las bases de datos han sido de gran utilidad
en el mundo laboral ya que soporta el almacenamiento de grandes volúmenes de
información que es de mucho valor dentro de sus respectivas dependencias.

Sin embargo, en la actualidad hay diversos gestores que permiten gestionar y


administrar la información de manera más segura y remota como son los servicios
en línea o mejor mencionado CockroachDB este permite administrar y distribuir
bases de datos para implementar una base de datos distribuidas de manera que al
levantar los nodos la información se replique en cada nodo dentro del clúster.

En esta práctica se pretende conocer el concepto de nodo y multando de una base


de datos ya que en la actualidad son altamente implementadas gracias a su
funcionalidad en la réplica de información, rangos y el uso del clúster dentro del
sistema de Cockroach, así mismo se hace uso de las principales sentencias de SQL,
así como esta herramienta existen más que permiten que la información fluya con
mayor eficiencia dentro de su organización.

Diana Ramírez García Tópicos de base de datos Curso de Verano 2022


4

INSTALACIÓN DE COCKROACHDB
Para iniciar con la instalación de CockroachDB nos dirigiremos a las instrucciones
de instalación dependiendo al sistema operativo que tenga su dispositivo, en esta
ocasión se instalara en versión Windows.

1. Para ir a la instrucción de instalación nos dirigimos a nuestro navegador con la


siguiente liga https://www.cockroachlabs.com/docs/stable/install-cockroachdb-
windows dentro de la opción de instalación aparecerá descargar el ejecutable, para
ello en el paso uno damos clic sobre el enlace para que nos descargara el ejecutable
con la versión 22.1.3.

2. Guardamos y automáticamente se comenzará a descargará archivo ejecutable de


Cockroach.

3. Una vez terminada la descarga localizamos la ubicación del archivo .exe de


Cockroach en esta ocasión se ubica en la carpeta de descargas, descomprimimos
el archivo con la opción extraer todo.

Diana Ramírez García Tópicos de base de datos Curso de Verano 2022


5

4. Una vez que termino la extracción cambiamos el nombre de la carpeta a


cockroachdb para que el nombre no sea tan extenso.

5. Copiamos la carpeta de cockroachdb dentro de la carpeta de archivos de programa


para ello nos dirigimos a Disco local (C:) -> Archivos de Programa, y pegamos la
carpeta dentro de esta ruta de manera manual.

6. Abrimos la carpeta que acabamos de agregar y copiamos la ruta que tiene la carpeta
de cockroachdb C:\Program Files\cockroachdb ya que esta nos servirá para crear
una variable de entorno del sistema.

7. En nuestro buscador de Windows escribimos las letras env que nos permitirá
localizar y editar las variables de entorno y le damos clic en abrir. posteriormente
Nos abrirá un cuadro de dialogo donde le daremos clic en la opción de variables de
entorno.

Diana Ramírez García Tópicos de base de datos Curso de Verano 2022


6

8. Al dar clic en variables de entorno nos abrirá otra ventana donde nos permitirá
agregar una variable de usuario, damos clic a la variable Path y luego en editar

9. Al estar adentro de la variable damos clic en nuevo y pegamos la ruta C:\Program


Files\cockroachdb que mencionamos en el paso número 6, damos clic en aceptar
en todas las opciones y cerramos la venta de variables de entorno

Diana Ramírez García Tópicos de base de datos Curso de Verano 2022


7

10. Para verificar que Cockroach se haya instalado correctamente iremos a la consola
de PowerShell y ejecutamos el comando de cockroach version y nos mostrara la
siguiente pantalla.

INICIAR UN CLÚSTER DE UN SOLO NODO (WINDOWS)


1. Para comenzar ejecutar los comandos en la terminal de PowerShell es necesario
crear previamente una carpeta que nos permita almacenar todos los directorios que
se generaran al momento de iniciar el clúster, o levantar un nodo. Para ello en la
carpera de Documentos se creó la carpeta llamada TopicosBDD.

2. abrimos PowerShell y entramos a la carpeta que se creó llamada TopicosBDD con


la final de que la información quede almacenada en este sitio y ejecutamos el
siguiente comando para conectar el clúster local con el Shell de SQL.

Diana Ramírez García Tópicos de base de datos Curso de Verano 2022


8

3. Para verificar que el nodo que se inició este corriendo abrimos en el navegador el
localhost siguiente -> http://localhost:8080 y nos abrirá una página donde nos
muestre que el nodo está iniciado.

4. Como siguiente paso importaremos una base de datos con el comando cockroach
workload init movr este permitirá que se inicie y cargue la base de datos de manera
más automatizada, abrimos una nueva ventaja de PowerShell y lo ejecutamos.

5. Corroboramos que la base de datos ya esté en uso, actualizamos la página del


navegador que abrió el localhost 8080 y veremos que hay memoria en uso como se
muestra a continuación.

Diana Ramírez García Tópicos de base de datos Curso de Verano 2022


9

6. En la sesión de Databases encontraremos la base de datos que se acabó de


importar esta tiene como nombre movr donde mostrara todas las tablas y la
información de la base de datos.

CONEXIÓN CON EL SHELL DE SQL


7. El siguiente comando a ejecutar en la terminal será para abril el SQL de manera
insegura lo cual no será necesario entrar con un usuario y contraseña y abrirá la
terminal para MySQL es: cockroach sql --insecure

8. A continuación, se implementarán unos comandos que nos permitirá usar la base


de datos dentro de la terminal ejecutando las sentencias correspondientes como se
presenta en la siguiente imagen, esto es con el fin de verificar las sentencias de
SQL sean compatibles dentro del sistema de Cockroach.

Diana Ramírez García Tópicos de base de datos Curso de Verano 2022


10

El primer comando es para entra a SQL de manera insegura lo que significa que no
pedirá usuario y contraseña.

Show databases; mostrara las bases de datos que se encuentran dentro de


cockroach.

Use movr; pondrá en uso la base de datos permitiendo ejecutar consultas dentro de
movr.

SHOW TABLES FROM movr; mostrara todas las columnas de la base de datos
movr.

SELECT * FROM movr.users LIMIT 10; esta consulta muestra un límite de los
primeros 10 registro de la tabla users de la base de datos movr.

Diana Ramírez García Tópicos de base de datos Curso de Verano 2022


11

GIRE Y ESCALE HORIZONTALMENTE UN CLÚSTER LOCAL


(WINDOWS)
Para continuar con esta etapa, detenemos el nodo con el comando Ctrl + C y en
automático la ventana en el navegador no tendrá acceso a CockroachDB.

Para iniciar con el clúster de tres nodos es necesario eliminar los archivos que se
hayan creado en el directorio que se creó para el almacenamiento los archivos de
un solo nodo. A continuación, nos ubicamos dentro de la carpeta llamada
TopicosBDD y ejecutamos el comando dir para ver lo que contiene la carpeta y en
seguida con el comando del.\cockroach-data\ este eliminaremos el contenido de la
carpeta
1. Dentro de la terminal de PowerShell nos ubicamos en el directorio correspondiente
para comenzar a levantar el primer nodo.

Este nodo se inicia de manera insegura dentro de la dirección localhost


correspondiente al puerto uniendo dos nodos que se abrirá en el navegador dentro
del puerto localhost:8080 y se guardara una carpeta llamada cockroach-data-1 esta
acción se hará con todos los nodos que se levanten.

Diana Ramírez García Tópicos de base de datos Curso de Verano 2022


12

2. Por cada nodo que se levante es necesario abrir otra terminal para ello el siguiente
ejemplo tiene un error dentro del comando a ejecutar ya que el puerto 26257 fue
utilizado en el nodo anterior y no se puede hacer uso de este porque ya está en
funcionamiento, en automático enviara error al ejecutar.

3. Eliminamos la carpeta que nos generó el comando anterior y levantamos el nodo


con el comando para levantar el nodo 2 con el puerto 26258 para evitar errores
dentro de la ejecución.

4. Ejecución del comando para el nodo 3 con el puerto 26259.

Diana Ramírez García Tópicos de base de datos Curso de Verano 2022


13

5. A vista de cada nodo se crea una carpeta dentro del directorio que se levantaron
distinguiéndose con su respectivo nombre como se muestra en la siguiente imagen.

6. Abrimos una nueva terminal y ejecutamos el comando sin necesidad de estar dentro
en la carpeta de los nodos, sin el siguiente comando no será posible entra al
navegador del localhost:8080 del Cockroach, este inicializa el clúster de los nodos.

7. Corremos en el navegador el puerto localhost:8080 y verificamos que los notos ya


corren dentro de CockroachDB.

Diana Ramírez García Tópicos de base de datos Curso de Verano 2022


14

Vista de los tres nodos con un status live

Dentro de CockroachDB vemos que ya hay memoria usada lo que significa que la
información se está replicando.

8. A continuación, proseguiremos a crear otros dos nodos para ver el funcionamiento


de este abriendo para cada nodo una terminal de PowerShell nodo 4

Diana Ramírez García Tópicos de base de datos Curso de Verano 2022


15

Nodo 5

9. Nueva vista de los 5 nodos dentro de CockroachDB.

Diana Ramírez García Tópicos de base de datos Curso de Verano 2022


16

10. A continuación, se irán deteniendo los nodos para ver la interrupción que hay y como
afecta al clúster con las réplicas de información, detenemos el nodo 3 con las teclas
Ctrl+C y vemos que en el navegador el nodo 2 está en modo suspendido y
posteriormente morirá el nodo.

Suspendimos otros dos nodos y veremos que su recuperación es más lenta

11. Al final si se detiene el nodo dos la base de datos se caerá y ya no será posible
replicar la información en los demás nodos ya que este es el nodo principal del
clúster.

Diana Ramírez García Tópicos de base de datos Curso de Verano 2022


17

RESULTADOS
La información esta segmentada y replicada en estos nodos y al caer la mayoría de
los nodos es más complicada la recuperación o replicar la información cabe
mencionar que como mínimo deben de estar 3 nodos levantados para que el clúster
funciones y permita ejecutar la replicar de la información.
Al inicializar todos los nodos se obtendrá una vista como se refleja en la siguiente
imagen donde se aprecia cada uno de los detalles relevantes.

En el directorio que se generó de manera local se creó una carpera donde se


almaceno la información que corresponde a cada nodo.

Diana Ramírez García Tópicos de base de datos Curso de Verano 2022


18

CONCLUSIÓN

Esta práctica nos permitió conocer el funcionamiento que tiene una base de datos
multi-nodo ya que en la actualidad es mayormente demandada dentro de las
empresas y organizaciones debido a su respaldo y organización de la información,
es bueno resaltar que para crear un clúster como mínimo se requiere de tres nodos
para ejecutar réplicas de ahí se pueden levantar más nodos que estén distribuidos
en un espacio físico o lógico para que los usuarios puedan tener mayor acceso a la
información.

Entre mayor sea las réplicas de información menor será la perdida entre los nodos
ya que como administradores de información siempre es bueno estar al pendiente
que la base de datos no sufran perdidas o fallas al acceder, las bases de datos
distribuidas tienen mayor ventaja en su funcionamiento ya que la distancia no será
un impedimento para subir o publicar información, así como su acceso remoto, para
generar reportes eficientes en una toma de decisiones.

Cockroach es una herramienta funcional en los sistemas distribuidos de base de


datos que como esta existen otras herramientas en línea que facilitan y gestionan
las bases de datos de una manera más eficiente y viable para los usuarios, para
finalizar vemos que su operación se basa en la ejecución de comandos dentro de la
terminal y obtenemos una vista detallada en la ventana del navegador con los nodos
levantados detallando sus réplicas, rangos, status y memoria usada haciendo una
vista más eficaz de datos para el usuario.

Diana Ramírez García Tópicos de base de datos Curso de Verano 2022


19

BIBLIOGRAFÍA

University., C. (2022). Cockroach University. Obtenido de Practical First Steps with


CockroachDB: https://university.cockroachlabs.com/courses/course-
v1:crl+practical-first-steps-with-crdb+self-
paced/courseware/b2626847312f4029b4772be74808d9c5/2d4877efbe6245bbaf8eb
790f466683a/

Gómez, K. D. (julio de 2022). Youtube.com. Obtenido de INSTALACION DE


COCKROACHDB - BASES DE DATOS DISTRIBUIDAS - TOPICOS DE BASE
DE DATOS: https://www.youtube.com/watch?v=k62RAz46c6I

Diana Ramírez García Tópicos de base de datos Curso de Verano 2022

También podría gustarte