Este artigo é o ponto inicial para a jornada de aprendizado do REDIS utilizando o REDIS-CLI e do utilizando o .NET Core.
Sobre o REDIS
Sumário
O que é o REDIS?
O termo / nome REDIS é um acrônimo para Remote Dictionary Server ou servidor de dicionário remoto, ele é um banco de dados NO-SQL open source com armazenamento de estrutura de dados em memória e que pode ser utilizado também como cache, motor de stream e message broker além é claro de banco de dados
Alto desempenho
Por sua velocidade e facilidade de uso, ele geralmente é utilizado para a implementação de sistemas de alto desempenho e altamente escaláveis.
Nele todos os dados residem na memória principal do seu servidor, em contraste com a maioria dos sistemas de gerenciamento de banco de dados que armazenam dados em disco ou SSDs.
Ao eliminar a necessidade de acessar discos, evitamos atrasos de tempo de busca e também ganhamos a possibilidade de acessar dados com algoritmos mais simples que usam menos instruções de CPU.
Com ele algumas operações comuns exigem menos do que 10 milissegundos para serem executadas.
Estruturas de dados na memória
Comentei que temos aqui um banco NO-SQL e por isso ele segue os princípios de armazenamento Chave-Valor.
A estrutura de dados fundamental utilizada por ele é a String, que pode ser em formato de dados de texto ou binários e ter no máximo 512 MB.
Também temos outras estruturas de dados simples como List (ordenadas ou não ordenadas) e Sets, e também estruturas de dados mais complexas com o HyperLogLog, Bitmaps e índices Geoespaciais que nos permite calcular distância entre dois pontos ou encontrar itens dentro de um raio definido.
Praticamente qualquer tipo de dados pode ser armazenado na memória usando o REDIS e no decorrer do curso, veremos todos esses tipos.
Versatilidade e facilidade de uso
Temos a possibilidade de podermos utilizá-lo com a maioria das linguagens de programação tais como:
- C
- Dart
- Elixir
- Go
- Java
- Lua
- Node
- PHP
- Python
- Ruby
- C#
Vou explicar um pouco mais a frente, mas nesse curso, focaremos em trabalhar com ele utilizando o REDIS CLI que irá lhe permitir trabalhar com todas essas linguagens, mas teremos um bloco especializado em C# utilizando o .NET CORE.
Compatibilidade de sistemas Operacionais
O REDIS é desenvolvido em ANSI C e suporta oficialmente sistemas operacionais como Linux BSD e OSX, e não há nenhum suporte oficial a Windows, mas se você utiliza o Windows não se assuste, pois veremos como conseguimos trabalhar com o Redis facilmente em qualquer sistema operacional e isso inclui o Windows.
Cacheamento de dados
Cacheamento de dados ou cache é o processo de armazenamento de dados em um armazenamento temporário prevendo a reutilização e consumo desses dados.
Geralmente os dados armazenados em cache não são armazenados em disco, comumente eles são armazenados em memória, para que o acesso a esses dados seja facilitado e a leitura seja extremamente rápida.
Devido ao fato de ser muito rapido, podendo fazer mais de 100 mil escritas e 80 mil leituras por segundo, o Redis é extremamente indicado quando pensamos em cacheamento de dados.
Publisher / Subscriber
O PUB/SUB ou publisher e subscriber nos disponibiliza um padrão de trocas de mensagens em tempo real.
Isso permite que o Redis seja compatível com salas de chat de alto desempenho, streams de comentários em tempo real e intercomunicações do servidor.
Você também pode usar o PUB/SUB para ativar ações com base em eventos publicados.
Quem o utiliza?
Uma gama de empresas de pequeno, médio e grande porte utilizam o Redis para auxiliar a distribuição de seus sistemas, aplicações ou app, podemos citar como algumas das grandes empresas que o utilizam:
Como será o curso?
O intuito de criar esse curso é permitir que você consiga trabalhar com o REDIS em qualquer plataforma ou projeto, porém o objetivo desse curso também é focar na utilização dele junto ao framework .NET CORE.
Tento isso em mente, decidi criar dois cursos em um único, ou seja, iremos abordar as funcionalidades do REDIS utilizando o CLI do REDIS e termos uma outra parte onde abordaremos as funcionalidades do REDIS junto o framework .NET CORE.
Mapa Mental
Abaixo você pode visualizar o conteúdo do curso através do mapa mental que estou criando conforme vamos caminhando com os tópicos e aulas. (P.S: O curso está em andamento, portanto o mapa mental está em crescimento e representa tudo o que já foi abordado/gravado)
Acompanhe o curso em nosso canal do Youtube
Você pode assistir à essa apresentação falando a respeito do REDIS em um vídeo no canal do Youtube.
Considerações finais
Essa foi uma pequena introdução falando um pouco a respeito dessa tecnologia maravilhosa que iremos estudar.
No próximo artigo, realizaremos a configuração do ambiente que utilizaremos para o nosso estudo e aprendizado.
Um grande abraço e até lá.
1 comentário
Excelente artigo!!! Que venham mais! Já estou ansiosa para os próximos.