Páginas

Buscar

Redis y Perl, una breve introduccion

El Salvador se encuentra estancado en sistemas de informacion, hay poca innovacion, no hay ciencia, y esto es causa de muchos factores de los cuales no pretendo listar ni discutir por falta de tiempo y espacio, pero si pretendo dar y escuchar/leer soluciones para cambiar nuestra situacion.

Creo que es posible desarrollar una revolucion computacional en El Salvador, creo que El Salvador puede exportar inteligencia (y ya hablaremos sobre Inteligencia Artificial -AI), y creo que El Salvador puede aprender mucho de Japon en cuanto a las medidas que este tomo despues de la 2a Guerra Mundial, ¿no piensas igual? El problema es cultural, pero es posible, ¿sigues sin pensar igual? Ahora el problema es cientifico (no existe la probabilidad 1, ni la probabilidad 0, por lo que no puedes descartar algo de buenas a primeras ya que nadie sabe nada, simplemente creemos - es aqui donde debe de ingresar el metodo cientifico acompañado de la Fe).

Gracias a Juan Carlos entre a Jerti; pretendo hablar de todo lo que conduce a la revolucion computacional, de inteligencia artificial, de mis proyectos, de AiPI. En todo lo que escribo se podra notar lo que creo, la Fe y el metodo cientifico como las 2 grandes alas que nos hacen volar y llegar muy lejos, y en esta ocasion comienzo con Perl y Redis (2 cosas muy desconocidas para los dogmaticos, pero muy mencionadas entre los jovenes), compartiendo un post de mi sitio (muy descuidado que pronto empezare a retomar) www.neurock.com.

Redis es un servidor de estructuras de datos; permite almacenar, ordenar y operar datos estructurados en simples cadenas, hashes, listas, sets y sorted sets. Puede ser utilizado como un "gestor" de base de datos NoSQL Tiene tanto ventajas como desventajas. Entre las ventajas:
  • Operaciones atomicas
  • Escalable
  • Excelente para el almacenamiento de datos de alta escritura, ya que maneja linked lists
  • Facil de acoplar en la nube, por ejemplo en AWS EC2
  • Da mas uso a la memoria que al disco
  • Excelente para aplicaciones asincronas y puede tomar tareas que suelen hacerse con threads
Las desventajas:
  • No es eficiente (y probablemente no es eficaz) al trabajar con demasiadas relaciones entre los datos
  • Con serias limitaciones en BI
  • Mas lento que gestores SQL en la lectura de datos (para bases de datos grandes)
Unos links para comenzar:
  1. Pagina oficial de Redis: http://redis.io/
  2. Tutorial interactivo de Redis: http://try.redis-db.com/
  3. Descargar Redis: http://redis.io/download
  4. Introduccion a los tipos de datos en Redis: http://redis.io/topics/data-types-intro
  5. Clientes: http://redis.io/clients
  6. Modulo para conectar Perl a Redis: http://search.cpan.org/dist/Redis/lib/Redis.pm
Una vez has instalado Redis, puedes poner a correr el servidor de terminal usando el comando redis-server, y puedes abrir un cliente usando el comando redis-cli. A continuacion dejo un breve ejemplo de un script en Perl que se conecta al servidor Redis, genera un hash y lo muestra:

#!/usr/bin/perl -w 
use strict; 
use warnings; 
use Redis; 

sub main{ 
  print "Ejemplo en Perl usando Redis\n"; 
  my $redis = Redis->new; 
  $redis->set('nombre' => 'Neurock'); 
  print "Valor almacenado en 'nombre': " . $redis->get('nombre') . "\n"; 
  print "Bye...\n"; 


main(@ARGV);

Soy Pablo Martí, un gusto.