SlideShare uma empresa Scribd logo
1 de 12
Baixar para ler offline
O que é e como devo usar o REDIS?
Mario Guedes
25 Nov 2023
Mario Guedes
Arquiteto de Soluções
• 26 anos em atividade
• Humano
• @jmarioguedes
• developer@jmarioguedes.dev.br
• https://eugostododelphi.dev
• https://arrayof.io
O que é?
• https://redis.io
• Sistema de armazenamento de dados na memória RAM, permitindo
que ele seja extremamente rápido
• Oferece várias estruturas de dados, tornando-o bem conveniente
para várias situações
• Baseado no paradigma chave/valor
• Abordagem NoSQL
• Sem esquema
Como é?
• Persistência opcional
• Suporte a transação
• Replicação e particionamento
• Mecanismo de Pub/Sub, de Fila e de Streaming
• Execução de código arbitrário (Linguagem Lua, em breve outras)
Casos de Uso
• Banco de dados primário
• Contadores em tempo real
• Dashboards em tempo real
• Cacheamento no lado servidor
• Streaming de eventos
• Mensageria
• Geo-localização
• Rate-limit
• Controle de sessão de usuário
• Detecção de fraude
• Telemetria
• Armazenamento JSON
• Grafo (descontinuado)
• Arquitetura Orientada a Eventos
Tipos de dados
• String
• Lista
• Hash
• Conjuntos
• Conjuntos ordenados
• Mapa de bits
• HyperLogLogs
• Streams
Biblioteca Delphi
• Delphi Redis Client
https://github.com/danieleteti/delphiredisclient
Redis Cloud Enterprise
• O Redis executa nativamente em Linux e há várias distribuições
possíveis
• No Windows podemos executar via WSL ou Docker
• E também temos a opção de usar como serviço auto gerenciado da
Redis Cloud Enterprise a custos acessíveis
Redis Stack 7
• O Redis encontra-se na versão 7
• Existem módulos oficiais que dá mais poder ao Redis: Redis Stack
• RediSearch: Busca baseada em texto, dando extrema flexibilidade pelas buscas dos dados
• RedisJSON: Armazenamento e operações em documentos JSON
• RedisTimeSeries: Armazenamento de dados temporais, ou seja, conjunto de dados ordenados
por tempo
• RedisBloom: Adiciona estruturas de dados probabilísticas e algoritmos de Bloom Filter,
HyperLogLog, Count-Min Sketch e Top-K. Essas estruturas são projetadas para resolver problemas
específicos de maneira eficiente e escalável.
• RedisGraph: [DESCONTINUADO] Adiciona suporte a grafo, com compatibilidade com a linguagem
Cypher.
Opções
• As alternativas dependem do caso de uso
• Algumas possíveis são:
• Memcached
https://memcached.org/
• Memurai
https://www.memurai.com/
• Memgraph
https://memgraph.com/
Conheça mais
• Universidade Redis
https://university.redis.com/
• No meu canal do YouTube
https://www.youtube.com/arrayof
• Dicas de configuração para produção
https://www.youtube.com/watch?v=VB52cVYK0M8
Obrigado

Mais conteúdo relacionado

Semelhante a O que é e como devo usar o REDIS? - 1o Mobile REST Summit

Tecnologias para sistemas distribuidos escalaveis
Tecnologias para sistemas distribuidos escalaveisTecnologias para sistemas distribuidos escalaveis
Tecnologias para sistemas distribuidos escalaveisLuiz Bettega
 
Palestra de PHP
Palestra de PHPPalestra de PHP
Palestra de PHPledsifes
 
Arquitetando Soluções de Dados com PostgreSQL
Arquitetando Soluções de Dados com PostgreSQLArquitetando Soluções de Dados com PostgreSQL
Arquitetando Soluções de Dados com PostgreSQLRaul Oliveira
 
Ruby on Rails - Introdução ao Framework
Ruby on Rails - Introdução ao FrameworkRuby on Rails - Introdução ao Framework
Ruby on Rails - Introdução ao FrameworkGuilherme Carlos
 
Otimizacao de websites em PHP
Otimizacao de websites em PHPOtimizacao de websites em PHP
Otimizacao de websites em PHPFelipe Ribeiro
 
NoSQL no Microsoft Azure - Global Azure Bootcamp 2017
NoSQL no Microsoft Azure - Global Azure Bootcamp 2017NoSQL no Microsoft Azure - Global Azure Bootcamp 2017
NoSQL no Microsoft Azure - Global Azure Bootcamp 2017Renato Groff
 
BigQuery Performance Improvements Storage API
BigQuery Performance Improvements Storage APIBigQuery Performance Improvements Storage API
BigQuery Performance Improvements Storage APIAlvaro Viebrantz
 
[MinhaVida TechDay] NoSQL
[MinhaVida TechDay] NoSQL[MinhaVida TechDay] NoSQL
[MinhaVida TechDay] NoSQLCleber Dantas
 
Microserviços - Cristiano dos Santos Diedrich - Tchelinux Bento Gonçalves 2017
Microserviços - Cristiano dos Santos Diedrich - Tchelinux Bento Gonçalves 2017Microserviços - Cristiano dos Santos Diedrich - Tchelinux Bento Gonçalves 2017
Microserviços - Cristiano dos Santos Diedrich - Tchelinux Bento Gonçalves 2017Tchelinux
 
Boas Práticas em Aplicações na Nuvem: Twelve-Factor App - Março-2021
Boas Práticas em Aplicações na Nuvem: Twelve-Factor App - Março-2021Boas Práticas em Aplicações na Nuvem: Twelve-Factor App - Março-2021
Boas Práticas em Aplicações na Nuvem: Twelve-Factor App - Março-2021Renato Groffe
 
Xen e CoreOS: solução para data mining com NodeJS e ElasticSearch
Xen e CoreOS: solução para data mining com NodeJS e ElasticSearchXen e CoreOS: solução para data mining com NodeJS e ElasticSearch
Xen e CoreOS: solução para data mining com NodeJS e ElasticSearchBernardo Donadio
 
AspNet 5 & Redis - Escalando sua performance
AspNet 5 & Redis - Escalando sua performanceAspNet 5 & Redis - Escalando sua performance
AspNet 5 & Redis - Escalando sua performanceJosé Roberto Araújo
 

Semelhante a O que é e como devo usar o REDIS? - 1o Mobile REST Summit (20)

Web Scale Data Management
Web Scale Data ManagementWeb Scale Data Management
Web Scale Data Management
 
Redis
RedisRedis
Redis
 
Tecnologias para sistemas distribuidos escalaveis
Tecnologias para sistemas distribuidos escalaveisTecnologias para sistemas distribuidos escalaveis
Tecnologias para sistemas distribuidos escalaveis
 
Palestra de PHP
Palestra de PHPPalestra de PHP
Palestra de PHP
 
TA1 - Slides Acessibilidade.pdf
TA1 - Slides Acessibilidade.pdfTA1 - Slides Acessibilidade.pdf
TA1 - Slides Acessibilidade.pdf
 
Arquitetando Soluções de Dados com PostgreSQL
Arquitetando Soluções de Dados com PostgreSQLArquitetando Soluções de Dados com PostgreSQL
Arquitetando Soluções de Dados com PostgreSQL
 
Ruby on Rails - Introdução ao Framework
Ruby on Rails - Introdução ao FrameworkRuby on Rails - Introdução ao Framework
Ruby on Rails - Introdução ao Framework
 
Banco de dados
Banco de dadosBanco de dados
Banco de dados
 
Otimizacao de websites em PHP
Otimizacao de websites em PHPOtimizacao de websites em PHP
Otimizacao de websites em PHP
 
Meetup Tivir - Big Data Clusters
Meetup Tivir - Big Data ClustersMeetup Tivir - Big Data Clusters
Meetup Tivir - Big Data Clusters
 
NoSQL no Microsoft Azure - Global Azure Bootcamp 2017
NoSQL no Microsoft Azure - Global Azure Bootcamp 2017NoSQL no Microsoft Azure - Global Azure Bootcamp 2017
NoSQL no Microsoft Azure - Global Azure Bootcamp 2017
 
BigQuery Performance Improvements Storage API
BigQuery Performance Improvements Storage APIBigQuery Performance Improvements Storage API
BigQuery Performance Improvements Storage API
 
[MinhaVida TechDay] NoSQL
[MinhaVida TechDay] NoSQL[MinhaVida TechDay] NoSQL
[MinhaVida TechDay] NoSQL
 
Material Seminário NoSQL
Material Seminário NoSQLMaterial Seminário NoSQL
Material Seminário NoSQL
 
Trabalho de sgbd
Trabalho de sgbdTrabalho de sgbd
Trabalho de sgbd
 
MySQL - visão geral
MySQL - visão geralMySQL - visão geral
MySQL - visão geral
 
Microserviços - Cristiano dos Santos Diedrich - Tchelinux Bento Gonçalves 2017
Microserviços - Cristiano dos Santos Diedrich - Tchelinux Bento Gonçalves 2017Microserviços - Cristiano dos Santos Diedrich - Tchelinux Bento Gonçalves 2017
Microserviços - Cristiano dos Santos Diedrich - Tchelinux Bento Gonçalves 2017
 
Boas Práticas em Aplicações na Nuvem: Twelve-Factor App - Março-2021
Boas Práticas em Aplicações na Nuvem: Twelve-Factor App - Março-2021Boas Práticas em Aplicações na Nuvem: Twelve-Factor App - Março-2021
Boas Práticas em Aplicações na Nuvem: Twelve-Factor App - Março-2021
 
Xen e CoreOS: solução para data mining com NodeJS e ElasticSearch
Xen e CoreOS: solução para data mining com NodeJS e ElasticSearchXen e CoreOS: solução para data mining com NodeJS e ElasticSearch
Xen e CoreOS: solução para data mining com NodeJS e ElasticSearch
 
AspNet 5 & Redis - Escalando sua performance
AspNet 5 & Redis - Escalando sua performanceAspNet 5 & Redis - Escalando sua performance
AspNet 5 & Redis - Escalando sua performance
 

Mais de Mario Guedes

Fazendo barba, cabelo e bigode com REDIS
Fazendo barba, cabelo e bigode com REDISFazendo barba, cabelo e bigode com REDIS
Fazendo barba, cabelo e bigode com REDISMario Guedes
 
Integrando-se à Blockchain da Ethereum
Integrando-se à Blockchain da EthereumIntegrando-se à Blockchain da Ethereum
Integrando-se à Blockchain da EthereumMario Guedes
 
Entendendo HTTP para entender o REST
Entendendo HTTP para entender o RESTEntendendo HTTP para entender o REST
Entendendo HTTP para entender o RESTMario Guedes
 
Expressão Regular - Cookbook
Expressão Regular - CookbookExpressão Regular - Cookbook
Expressão Regular - CookbookMario Guedes
 
Geolocalização com Redis e Google Maps
Geolocalização com Redis e Google MapsGeolocalização com Redis e Google Maps
Geolocalização com Redis e Google MapsMario Guedes
 
Foco no app, viva o serverless!
Foco no app, viva o serverless!Foco no app, viva o serverless!
Foco no app, viva o serverless!Mario Guedes
 
Geolocalização com Redis e Google Maps
Geolocalização com Redis e Google MapsGeolocalização com Redis e Google Maps
Geolocalização com Redis e Google MapsMario Guedes
 
Paralelismo na prática: Threads de uma vez por todas e sem medo!
Paralelismo na prática: Threads de uma vez por todas e sem medo!Paralelismo na prática: Threads de uma vez por todas e sem medo!
Paralelismo na prática: Threads de uma vez por todas e sem medo!Mario Guedes
 
Escalando o backend com NGINX e Redis
Escalando o backend com NGINX e RedisEscalando o backend com NGINX e Redis
Escalando o backend com NGINX e RedisMario Guedes
 
Turbinando o seu sistema com Redis!
Turbinando o seu sistema com Redis!Turbinando o seu sistema com Redis!
Turbinando o seu sistema com Redis!Mario Guedes
 
Microsserviço, Escalabilidade e Resiliência - #comofas?
Microsserviço, Escalabilidade e Resiliência - #comofas?Microsserviço, Escalabilidade e Resiliência - #comofas?
Microsserviço, Escalabilidade e Resiliência - #comofas?Mario Guedes
 
TDCSP - 2018 - Possibilidades com o REDIS no Delphi
TDCSP - 2018 - Possibilidades com o REDIS no DelphiTDCSP - 2018 - Possibilidades com o REDIS no Delphi
TDCSP - 2018 - Possibilidades com o REDIS no DelphiMario Guedes
 
Extreme Experience 2018 | Estudo de Caso: Aplicação DataSnap para 10.000 usuá...
Extreme Experience 2018 | Estudo de Caso: Aplicação DataSnap para 10.000 usuá...Extreme Experience 2018 | Estudo de Caso: Aplicação DataSnap para 10.000 usuá...
Extreme Experience 2018 | Estudo de Caso: Aplicação DataSnap para 10.000 usuá...Mario Guedes
 
Extreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe DelphiExtreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe DelphiMario Guedes
 
Intensive Delphi 2017 - E este tal de Redis hein?
Intensive Delphi 2017 - E este tal de Redis hein?Intensive Delphi 2017 - E este tal de Redis hein?
Intensive Delphi 2017 - E este tal de Redis hein?Mario Guedes
 
BOT: Conversando com o seu sistema
BOT: Conversando com o seu sistemaBOT: Conversando com o seu sistema
BOT: Conversando com o seu sistemaMario Guedes
 
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...Mario Guedes
 
Extreme 360º 2017 | Arquitetura Extrema: Rumo aos 10.000 usuários
Extreme 360º 2017 | Arquitetura Extrema: Rumo aos 10.000 usuáriosExtreme 360º 2017 | Arquitetura Extrema: Rumo aos 10.000 usuários
Extreme 360º 2017 | Arquitetura Extrema: Rumo aos 10.000 usuáriosMario Guedes
 
Arquitetura escalável e resiliente com NGINX, DataSnap, REDIS e MongoDB
Arquitetura escalável e resiliente com NGINX, DataSnap, REDIS e MongoDBArquitetura escalável e resiliente com NGINX, DataSnap, REDIS e MongoDB
Arquitetura escalável e resiliente com NGINX, DataSnap, REDIS e MongoDBMario Guedes
 
Big data da teoria à prática
Big data  da teoria à práticaBig data  da teoria à prática
Big data da teoria à práticaMario Guedes
 

Mais de Mario Guedes (20)

Fazendo barba, cabelo e bigode com REDIS
Fazendo barba, cabelo e bigode com REDISFazendo barba, cabelo e bigode com REDIS
Fazendo barba, cabelo e bigode com REDIS
 
Integrando-se à Blockchain da Ethereum
Integrando-se à Blockchain da EthereumIntegrando-se à Blockchain da Ethereum
Integrando-se à Blockchain da Ethereum
 
Entendendo HTTP para entender o REST
Entendendo HTTP para entender o RESTEntendendo HTTP para entender o REST
Entendendo HTTP para entender o REST
 
Expressão Regular - Cookbook
Expressão Regular - CookbookExpressão Regular - Cookbook
Expressão Regular - Cookbook
 
Geolocalização com Redis e Google Maps
Geolocalização com Redis e Google MapsGeolocalização com Redis e Google Maps
Geolocalização com Redis e Google Maps
 
Foco no app, viva o serverless!
Foco no app, viva o serverless!Foco no app, viva o serverless!
Foco no app, viva o serverless!
 
Geolocalização com Redis e Google Maps
Geolocalização com Redis e Google MapsGeolocalização com Redis e Google Maps
Geolocalização com Redis e Google Maps
 
Paralelismo na prática: Threads de uma vez por todas e sem medo!
Paralelismo na prática: Threads de uma vez por todas e sem medo!Paralelismo na prática: Threads de uma vez por todas e sem medo!
Paralelismo na prática: Threads de uma vez por todas e sem medo!
 
Escalando o backend com NGINX e Redis
Escalando o backend com NGINX e RedisEscalando o backend com NGINX e Redis
Escalando o backend com NGINX e Redis
 
Turbinando o seu sistema com Redis!
Turbinando o seu sistema com Redis!Turbinando o seu sistema com Redis!
Turbinando o seu sistema com Redis!
 
Microsserviço, Escalabilidade e Resiliência - #comofas?
Microsserviço, Escalabilidade e Resiliência - #comofas?Microsserviço, Escalabilidade e Resiliência - #comofas?
Microsserviço, Escalabilidade e Resiliência - #comofas?
 
TDCSP - 2018 - Possibilidades com o REDIS no Delphi
TDCSP - 2018 - Possibilidades com o REDIS no DelphiTDCSP - 2018 - Possibilidades com o REDIS no Delphi
TDCSP - 2018 - Possibilidades com o REDIS no Delphi
 
Extreme Experience 2018 | Estudo de Caso: Aplicação DataSnap para 10.000 usuá...
Extreme Experience 2018 | Estudo de Caso: Aplicação DataSnap para 10.000 usuá...Extreme Experience 2018 | Estudo de Caso: Aplicação DataSnap para 10.000 usuá...
Extreme Experience 2018 | Estudo de Caso: Aplicação DataSnap para 10.000 usuá...
 
Extreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe DelphiExtreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe Delphi
 
Intensive Delphi 2017 - E este tal de Redis hein?
Intensive Delphi 2017 - E este tal de Redis hein?Intensive Delphi 2017 - E este tal de Redis hein?
Intensive Delphi 2017 - E este tal de Redis hein?
 
BOT: Conversando com o seu sistema
BOT: Conversando com o seu sistemaBOT: Conversando com o seu sistema
BOT: Conversando com o seu sistema
 
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
Uma perspectiva histórica e o cenário atual das ferramentas de desenvolviment...
 
Extreme 360º 2017 | Arquitetura Extrema: Rumo aos 10.000 usuários
Extreme 360º 2017 | Arquitetura Extrema: Rumo aos 10.000 usuáriosExtreme 360º 2017 | Arquitetura Extrema: Rumo aos 10.000 usuários
Extreme 360º 2017 | Arquitetura Extrema: Rumo aos 10.000 usuários
 
Arquitetura escalável e resiliente com NGINX, DataSnap, REDIS e MongoDB
Arquitetura escalável e resiliente com NGINX, DataSnap, REDIS e MongoDBArquitetura escalável e resiliente com NGINX, DataSnap, REDIS e MongoDB
Arquitetura escalável e resiliente com NGINX, DataSnap, REDIS e MongoDB
 
Big data da teoria à prática
Big data  da teoria à práticaBig data  da teoria à prática
Big data da teoria à prática
 

O que é e como devo usar o REDIS? - 1o Mobile REST Summit

  • 1. O que é e como devo usar o REDIS? Mario Guedes 25 Nov 2023
  • 2. Mario Guedes Arquiteto de Soluções • 26 anos em atividade • Humano • @jmarioguedes • developer@jmarioguedes.dev.br • https://eugostododelphi.dev • https://arrayof.io
  • 3. O que é? • https://redis.io • Sistema de armazenamento de dados na memória RAM, permitindo que ele seja extremamente rápido • Oferece várias estruturas de dados, tornando-o bem conveniente para várias situações • Baseado no paradigma chave/valor • Abordagem NoSQL • Sem esquema
  • 4. Como é? • Persistência opcional • Suporte a transação • Replicação e particionamento • Mecanismo de Pub/Sub, de Fila e de Streaming • Execução de código arbitrário (Linguagem Lua, em breve outras)
  • 5. Casos de Uso • Banco de dados primário • Contadores em tempo real • Dashboards em tempo real • Cacheamento no lado servidor • Streaming de eventos • Mensageria • Geo-localização • Rate-limit • Controle de sessão de usuário • Detecção de fraude • Telemetria • Armazenamento JSON • Grafo (descontinuado) • Arquitetura Orientada a Eventos
  • 6. Tipos de dados • String • Lista • Hash • Conjuntos • Conjuntos ordenados • Mapa de bits • HyperLogLogs • Streams
  • 7. Biblioteca Delphi • Delphi Redis Client https://github.com/danieleteti/delphiredisclient
  • 8. Redis Cloud Enterprise • O Redis executa nativamente em Linux e há várias distribuições possíveis • No Windows podemos executar via WSL ou Docker • E também temos a opção de usar como serviço auto gerenciado da Redis Cloud Enterprise a custos acessíveis
  • 9. Redis Stack 7 • O Redis encontra-se na versão 7 • Existem módulos oficiais que dá mais poder ao Redis: Redis Stack • RediSearch: Busca baseada em texto, dando extrema flexibilidade pelas buscas dos dados • RedisJSON: Armazenamento e operações em documentos JSON • RedisTimeSeries: Armazenamento de dados temporais, ou seja, conjunto de dados ordenados por tempo • RedisBloom: Adiciona estruturas de dados probabilísticas e algoritmos de Bloom Filter, HyperLogLog, Count-Min Sketch e Top-K. Essas estruturas são projetadas para resolver problemas específicos de maneira eficiente e escalável. • RedisGraph: [DESCONTINUADO] Adiciona suporte a grafo, com compatibilidade com a linguagem Cypher.
  • 10. Opções • As alternativas dependem do caso de uso • Algumas possíveis são: • Memcached https://memcached.org/ • Memurai https://www.memurai.com/ • Memgraph https://memgraph.com/
  • 11. Conheça mais • Universidade Redis https://university.redis.com/ • No meu canal do YouTube https://www.youtube.com/arrayof • Dicas de configuração para produção https://www.youtube.com/watch?v=VB52cVYK0M8