Está en la página 1de 5

Resumen.

Al igual que otros sistemas de gestión de información en la metodología NoSQL, Riak fue creado
con el objetivo de brindar una distinción sistemática que lo sitúe por encima de otras opciones para
desarrolladores web, administrando Su lógica es tan buena como la mayoría de NoSQL, pero se
adapta a algunos requisitos específicos. dependiendo del tipo de red o cliente sobre el que se
resuelva el tema.
Este, entre otras cosas, tomó como modelo a sus antecesores para mejorar varios aspectos que, tras
una función u otra, muestran aspectos a mejorar su opción.
NoSQL es diferente en el sentido de que brinda beneficios adicionales sobre los modelos SQL
tradicionales, como más memoria, mejor escalado y muchas otras funcionalidades que
generalmente son importantes para ayudar tanto a los desarrolladores como a los expertos en el
campo a hacer el trabajo real. gestión de la información para satisfacer las necesidades del cliente
para el que se está desplegando el modelo.

Introducción.

Riak es una plataforma de base de datos distribuida diseñada para resolver los problemas difíciles
asociados con la creación y el escalado de aplicaciones intensivas de lectura y escritura. Riak fue
creado por bashful technologies, una empresa de software fundada por ejecutivos anteriores y de
Akanai. Está descripción general cubrirá algunas de las características básicas de riak como una
base de datos distribuida tolerante a fallas y de alta disponibilidad al comenzar primero comprenda
que riak tiene la capacidad de almacenar cualquier tipo de datos y lo hace a través de múltiples
nodos en lo que se llama un clúster de reacción, en un clúster de reacción los datos se replican para
tolerancia de partición mediante la replicación de datos de este modo, sus datos siempre están
disponibles, un ejemplo de estos serían los usuarios de una aplicación web como un sitio de redes
sociales o una herramienta para compartir archivos en el caso de una falla del sistema del servidor y
otra anomalía en la red, sus datos están seguros por qué se han replicado en varios nodos que se
extienden a través de varios servidores una vez que todos sus nodos han regresado con éxito en
línea de nuevo reaccionar automáticamente sabe que debe comenzar a permitir lecturas y escrituras
hacia y desde los nodos que no estaban operativos además tolerancia extrema a fallas reaccionar es
altamente escalable puede agregar nuevos nodos con unos pocos comandos cortos y escalar el
tamaño de su clúster para cumplir con sus necesidades de almacenamiento de datos de una manera
simple, lineal y predecible, ahorrando tiempo y dinero, si sus datos se extienden a través de
múltiples centros de datos, las capacidades de replicación de múltiples centros de datos de riak le
permiten escalar a múltiples sitios con facilidad, lo que garantiza que todo su conjunto de datos este
siempre disponible para alimentarse. Sus aplicaciones, sistemas y redes.
Concepciones Riak.

 Riak ha sido un socio valioso en


nuestra transformación y ha  Ellos (Riak) han trabajado con
demostrado ser un componente nosotros en una verdadera sociedad
crítico como la base de datos para mantenerse al día con nuestro
distribuida NoSQL que impulsa negocio en rápida expansión y
nuestra nueva plataforma. siempre han abordado nuestras
preocupaciones de manera oportuna.
-BRYSON KOEHLER, VICEPRESIDENTE
EJECUTIVO Y DIRECTOR DE -MATT DAVIS, INGENIERO DE
INFORMACIÓN, THE WEATHER CONFIABILIDAD DEL SITIO EN OPENX
COMPANY

 Mi experiencia con Riak ha sido que  Hoy, ahora vemos picos de más de
la promesa central de ser una tienda 250,000 operaciones por segundo,
clave-valor disponible, escalable, con todo mientras se mantienen tiempos
soporte operativo mínimo, cumple de respuesta inferiores al milisegundo
como se anuncia. y una estabilidad sólida como una
roca. A pesar de este cambio masivo
- MATT RANNEY, INGENIERO SÉNIOR en el crecimiento, todavía no
DE PERSONAL, UBER empleamos ingenieros de tiempo
completo para trabajar en nuestro
 Después de un riguroso proceso de grupo Riak. Es así de fácil de usar.
evaluación, decidimos que la base de
datos escalable y flexible de Riak se MAURO INCORY, DE
adapta mejor a nuestras necesidades. OPERACIONES DE TADION

MARTIN DAVIES, DIRECTOR  Riak ha sido un socio valioso en


EJECUTIVO DE TECNOLOGÍA, BET365 nuestra transformación y ha
demostrado ser un componente
crítico como la base de datos
 Iniciativas como la integración de distribuida NoSQL que impulsa
Riak KV con Redis y Apache Solr nuestra nueva plataforma.
tienen el potencial de aliviar
considerablemente nuestra futura BRYSAIN KOEHLER, VICEPRESIDENTE
carga de trabajo de desarrollo. EXECUTIVO Y DIRECTOR DE
INFORMACIÓN THE WEATHER
JASON ORDWAY, CTO, SHOPKEEP POS COMPANY
Historia.

Fundada en 2008, Riak fue una de las  Tolerancia a fallos: el clúster


primeras empresas de sistemas soporta o admite fallos en nodos
distribuidos dedicada a desarrollar aislados, o incluso en partes del
tecnología disruptiva para simplificar clúster, está preparado para no perder
los desafíos de gestión de datos más datos ante este tipo de fallos. El
críticos para las empresas.
sistema ha sido diseñado con fallos
de máquinas e interrupciones de
Actualmente cuenta con uno de los
grupos de ingenieros y expertos servicio de red como norma, no como
técnicos más grandes y talentosos excepción.
jamás reunidos, dedicado  Alta disponibilidad: para alta
exclusivamente a resolver algunos de disponibilidad el sistema debe de
los problemas más complejos que estar disponible, no solo para
presenta el escalado de sistemas lecturas, sino también para escrituras.
distribuidos. La arquitectura de share-nothing
(nada compartido) hace que cada
Riak también disfruta de un gran y nodo en el clúster esté habilitado para
creciente número de seguidores entre realizar lecturas y escrituras, por lo
programadores, arquitectos y
que, la alta disponibilidad está
académicos influyentes, y es el
garantizada.
organizador de RICON, una
conferencia de sistemas distribuidos  Replicación: dependiendo de las
que reúne a muchas de las luminarias necesidades, Riak se puede
líderes de la actualidad en el universo configurar para replicar entre
en expansión de la gestión de bases múltiples clústeres iguales o diseñar
de datos distribuidas ilustradas. uno o más clúster como solo-lectura
o backup. Cada nodo en el clúster
puede responder a las peticiones de
Características Principales. lectura/escritura, y el evento de
replicación asegura que todos los
Riak, además de seguir las bases de Dynamo, clústers sean actualizados. Los
ha agregado otras características propias a la algoritmos se ejecutan en cada nodo
lista, la siguiente lista de características a asegurando la consistencia de datos.
destacar:
En base al teorema CAP del Dr. Eric Brewer,
 Escalabilidad: la escalabilidad con las tres propiedades deseadas de un sistema
Riak es lineal, predecible y de coste distribuido son: consistencia, disponibilidad y
efectivo. Agregar nuevas máquinas partición (tolerancia a fallos). El teorema
no significa tener una avalancha de establece que puedes solo puedes tener dos de
peticiones que ponga en peligro la las tres propiedades en cada momento. Riak
efectividad del sistema. Se pueden ir se enfoca en Disponibilidad y Partición. Esta
agregando o eliminando máquinas sin elección pone a Riak en el campo de la
mayor problema, y sin que suponga consistencia eventual. Sin embargo, la
una carga excesiva para el sistema ventana para consistencia eventual es en
base. términos de milisegundos, lo que es
suficiente para la mayoría de aplicación.
Arquitectura.
Riak tiene una arquitectura de múltiples nodos sin maestro que proporciona lecturas y escrituras
rápidas incluso en caso de fallas en la red i el hardware. Para garantizar la disponibilidad de los
datos y la tolerancia a la partición, Riak replica los datos de forma predeterminada en tres nodos del
Duster. No hay un solo maestro, no hay un solo punto de falla y cualquier modis puede atender
cualquier solicitud entrante
Con su arquitectura sin maestro, Riak es fácil de configurar y operar. Agregar o eliminar nodos de
un clúster es simple.
El enfoque de Riak en la disponibilidad lo hace un buen ajuste cada vez que el tiempo de
inactividad es inaceptable.

Implementación.

En principio, Riak se basa en REST, esto quiere decir que cada URI especifica un recurso dentro de
la base de datos, y sobre ese recurso podemos realizar las acciones HTTP que se relacionan a
cualquiera de las acciones básicas de una petición:

 GET equivale a tomar datos, sería la URI para localizar recursos dentro de Riak se
R del CRUD (retrieve) o el SELECT puede establecer como sigue:
del SQL. PUT equivale insertar datos
/riak/BUCKET/RESOURCE
nuevos, sería la C del CRUD (create)
o el INSERT del SQL. Estos recursos son un espacio en el que
 POST equivale a una modificación o podemos guardar la información que
actualización de datos, sería la U del necesitemos. Puede ser un texto normal,
CRUD (update) o el UPDATE de codificado como YAML, como JSON, como
SQL. XML, o incluso una imagen o un vídeo... o
 DELETE equivale a una eliminación incluso una imagen ISO (comprobado con
del dato, sería la D (delete) o el una ISO de Sabayón de 700 MB
DELETE de SQL. aproximadamente).
Esto permite muchas ventajas, como el uso, Por lo que, podemos probar a hacer algunas
en el GET, de la cabecera If-Modified-Since, prácticas. Lanzamos Riak. Si lo tenemos en
que nos dará la posibilidad de comprobar si ejecución en el puerto 8098 (es el de por
un elemento pesado (imagen, vídeo o similar) defecto cuando se instala el paquete deb),
es nuevo o no, para volver a descargarlo. podemos hacer lo siguiente:
Riak nos retornará el objeto con el mensaje
curl -v -X PUT -H "Content-type:
200 para indicar que hay uno nuevo, o solo la
image/jpeg" --data-binary @imagen.jpg
cabecera 304 (Not Modified) para indicarnos
http://127.0.0.1:8098/riak/pruebas/imagen.jpg
que es el mismo que ya tenemos, por lo que
no hace falta volver a transmitirlo. La comprobación más simple es a través del
cualquier navegador que tengas instalado en
Composición de la URI.
esa misma máquina
Conclusión.
Como puede verse, Riak solventa con su paradigma de NoSQL, basado en el almacenamiento por
clave-valor y búsquedas por MapReduce, la mayoría de necesidades que se pueden encontrar a la
hora de emplear este tipo de sistemas. Lo único que queda un poco en el aire, o hay que realizar con
llamadas sucesivas, son las actualizaciones y eliminaciones masivas, pero realmente, puede ser un
mal menor, si estas no son empleadas en el esquema que se vaya a implementar Riak.
Hay que tener presente que Riak es una muy buena base de datos, que fundamenta sus potencias en
la posibilidad de contar con un clúster, lecturas rápidas con caché, y búsquedas artificiosas con
MapReduce, pero puede haber otros usos en los que las consultas de modificación y eliminación
masivas sean lo más importante y esto ya sería mejor abarcarlo con otra base de datos de otro tipo.

Referencias.

Riak: Sistemas NoSQL para Todos los Gustos. (2021, 29 junio). Máster en Big Data y Business

Analytics. Recuperado 7 de septiembre de 2022, de https://master-bigdata.com/riak-

sistemas-nosql-todos-los-gustos/

Solutions, S. A. L. (2011, 14 septiembre). Riak: Base de Datos sin SPOF. Altenwald Blog.

Recuperado 12 de septiembre de 2022, de https://altenwald.org/2011/09/14/riak-base-de-

datos-sin-spof/

Solutions, S. A. L. (2017, 19 mayo). Redis 3.0 Cluster: Mayor Disponibilidad para Redis.

Altenwald Blog. Recuperado 12 de septiembre de 2022, de

https://altenwald.org/2017/05/19/redis-3-cluster/

También podría gustarte