Começando com o Redis e entendendo como funciona esses nosql

Fotografia de capa por Jonas Jacobsson, tirada por uma Fujifilm X100F

Hey galera, tenho demorado a postar devido algumas coisas coisas que tenho passado ultimamente mas estou de volta! e hoje vamos falar de RedisDB.

O que é o Redis?

Redis significa REmote DIctionary Server, ele é um banco de dados NoSQL que tem como uma de suas principais características armazenar os dados em memória o que o torna extremamente rápido tanto para leitura quanto para escrita. Ele também é conhecido por Antirez e foi liberado em 2009 sob a licença BSD.

Todos seus comandos são atômicos, já que é executado como uma aplicação single threaded. Ele armazena dados chave valor, mas são suportados outros tipos de dados que entre eles estão strings, hashes, lists, sets...

É importante ter na cabeça que o Redis não é um banco de dados orientado a documentos como o MongoDB, ou seja não é um banco de dados para você sair armazenando tudo, vai pensando em uma arquitetura híbrida ae lek :D

Como eu começo a usar?

Basicamente você precisa executar o binário redis-server para subir o servidor(se for ubuntu o serviço já vai esta rodando) e o redis-cli para acessar a CLI. Eles estão disponíveis na sua linha de comando, mas se você estiver usando Windows... se mata eu não tenho como testar aqui até porquê tem uns 5/6 anos que não uso, mas creio que seja só executar o .exe :D

Para você saber os comandos é bem fácil, aqui você tem a documentação que é extremamente simples para entender como usar e aqui estão seus Clients que por sua vez, a forma de uso é bem simples também já que o comando é o próprio método.

Primeiros passos

Vamos começar associando uma chave a um valor com o set que tem sua syntax SET chave valor, e mostrando o valor definido com get que tem sua syntax GET chave

127.0.0.1:6379> set name 'igor'
127.0.0.1:6379> get name "igor"

o Redis é incrivelmente simples, basta saber o comando e pronto.
Não faria sentido eu fazer uma lista de comandos aqui, até porquê assim ninguém aprende, então é só olhar na documentação do Redis conforme a necessidade que ela é muito boa, basta olhar o comando e testar, simples assim :D

Mas destacando uns comandos aqui para você dar uma olhada:

Convenção para nomear chaves

Utilizar um "namespace" para nomeação das chaves no Redis, é algo muito adotado e seu formato é tipo:identificador:campo. Por exemplo aluno:igor:nome.

Pesquisando por chaves

O Redis possui o comando KEYS que é usando para fazer pesquisas com um determinado pattern, por exemplo, vamos imaginar que temos dedo, dado, desde, dando como chaves.

Vamos ver agora como usar os padrões disponíveis:

  • O pattern *, faz a representação de um conjunto de caracteres que vão de zero ou mais.
    ex: KEYS d*o, irá me retornar as chaves dedo, dado e dando.
  • O pattern ?, faz a representação de um único caracter.
    ex: KEYS de?de irá me retornar as chaves desde.
  • O pattern [], faz a representação de um grupo de caracteres.
    ex: KEYS d[ea]do irá me retornar dedo e dado.

além de você poder encapsular esses pattern, como por exemplo KEYS d[ea]*do, então para ver todas as chaves cadastradas é só usar KEYS *

Encerramento

Bem é isso ae pessoal, qualquer dúvida ou algo assim, coloca aí nos comentários qué noix xD

Read next...