SlideShare ist ein Scribd-Unternehmen logo
1 von 40
Redis
Redis is...
an “advanced key-
  value store ”
NoSQL?

An informal, loosely-defined term
   for non-relational, structured
        data storage systems
    like mongodb, couchdb, memcached and redis
memcached
      The canonically simple example
a networked “hash in the sky” behind a simple
                   protocol
                               Values
    page:index.html            <html><head>[...]
    user:123:session           xDrSdEwd4dSlZkEkj
    login_count                “7464”
    user:100:last_login_time   “102736485756”

     Everything’s a string (or a “blob”)
    Commands just set or get data (mostly)
Take memcached’s simplicity,
   Add more data types,
     Add persistence,
   Add more commands,
        .. and more
          Redis
Redis Data Types
      Strings
       Lists
       Sets
Sorted/Scored sets
     Hashes
all accessed by a string key
Redis Data Examples
Keys                        Values
Page:index.html             <html><head>[..]String
Login_count                 3121
Users_logged_in_today       {1,2,3,4,5}Set
Latest_post_ids             *201,204,209,…+list
User:123:session            Time=>1092313 hash
                            Username=>arild
Users_and_ratings           biobot~ 1.3483 sorted (scored) set
                            blast~ 93.4
                            ahriman~ 283.22
                            blabla~ 23774.17
Strings
Expiration
Deleting keys
Lists
Lists
Queues
Sets
Sets
Sorted sets?

         Sorry – no time
Basically like normal sets but each element can
  have a “rank” or “score” and be returned or
                   sorted by it
Hashes
Session storage
Redis Social Network
             Users
have names, can follow others, can be
             followed

             Posts
 are things like messages, photos, etc
Building a unique names with
           colons like
         user:1:name
            Is just a
    convention
        any string win do…
A Simple Social Network
Unique IDs
Creating new user

Creating new post
Enough commands!
I haven't covered them all though….

      On to the soft issues….
Atomicity


Redis is single threaded
  No locking necessary
    In other words, commands like INCR
    won’t tread on each other’s toes coming
     from multiple clients simultaneously!
Replication
• supports master-slave replication
• a single-rooted replication tree
• a slave may be a master to another slave
Redis Factoids

    BSD licensed (free, open)
      Sponsored by Vmware
         Written in ANSI C
 Good community (list, IRC & wiki)
Works on all POSIX-complaint UNIXes
Performance

Depends a lot on configuration and operation
                 complexity.
Common range from 5000 to120,000 rps for
    basic ops. GET/SET/LPUSH/LPOP, etc.
           (ultra low end to high end hardware)

        comparison with other no-sql implementations
http://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis
Persistence
Dump data to disk after certain conditions are
   met. Or manually.  SAVE and BGSAVE commands
                                   AND/OR
                   An append only log file
      (which can be optimized/rebuid automatically) but needed to set this up in a config file
Language Support

Ruby, Python, PHP, Erlang,Tcl,
 Perl, Lua, Java, Scala,Clojure,
C#, C/C++,JavaScript/Node.js,
         Haskell,IO, Go
Missed a lot, now where?

     Google “redis”
for the great official site
   http://www.redis.io

Weitere ähnliche Inhalte

Was ist angesagt?

Redis/Lessons learned
Redis/Lessons learnedRedis/Lessons learned
Redis/Lessons learnedTit Petric
 
File permission in Linux
File permission in LinuxFile permission in Linux
File permission in LinuxKrutikMandre1
 
Linux day 2.ppt
Linux day  2.pptLinux day  2.ppt
Linux day 2.pptKalkey
 
Introduction to linux
Introduction to linuxIntroduction to linux
Introduction to linuxGourav Varma
 
User and groups administrator
User  and  groups administratorUser  and  groups administrator
User and groups administratorAisha Talat
 
Unit3 browsing the filesystem
Unit3 browsing the filesystemUnit3 browsing the filesystem
Unit3 browsing the filesystemroot_fibo
 
Sa1 chapter-5-managing-local-linux-users-and-groups-v2 (4)
Sa1 chapter-5-managing-local-linux-users-and-groups-v2 (4)Sa1 chapter-5-managing-local-linux-users-and-groups-v2 (4)
Sa1 chapter-5-managing-local-linux-users-and-groups-v2 (4)Chinthaka Deshapriya (RHCA)
 
Basic commands of linux
Basic commands of linuxBasic commands of linux
Basic commands of linuxshravan saini
 
Unit 12 finding and processing files
Unit 12 finding and processing filesUnit 12 finding and processing files
Unit 12 finding and processing filesroot_fibo
 
Advanced file permissions in linux
Advanced file permissions in linuxAdvanced file permissions in linux
Advanced file permissions in linuxMohit Singh
 
Operating Systems 1
Operating Systems 1Operating Systems 1
Operating Systems 1hutchison
 
Redis Introduction
Redis IntroductionRedis Introduction
Redis IntroductionAlex Su
 
File systems and inodes
File systems and inodesFile systems and inodes
File systems and inodesDr. Girish GS
 
Operating Systems 2
Operating Systems 2Operating Systems 2
Operating Systems 2hutchison
 

Was ist angesagt? (20)

Filepermissions in linux
Filepermissions in linuxFilepermissions in linux
Filepermissions in linux
 
Redis/Lessons learned
Redis/Lessons learnedRedis/Lessons learned
Redis/Lessons learned
 
File permission in Linux
File permission in LinuxFile permission in Linux
File permission in Linux
 
Linux day 2.ppt
Linux day  2.pptLinux day  2.ppt
Linux day 2.ppt
 
Introduction to linux
Introduction to linuxIntroduction to linux
Introduction to linux
 
User and groups administrator
User  and  groups administratorUser  and  groups administrator
User and groups administrator
 
Unit3 browsing the filesystem
Unit3 browsing the filesystemUnit3 browsing the filesystem
Unit3 browsing the filesystem
 
Sa1 chapter-5-managing-local-linux-users-and-groups-v2 (4)
Sa1 chapter-5-managing-local-linux-users-and-groups-v2 (4)Sa1 chapter-5-managing-local-linux-users-and-groups-v2 (4)
Sa1 chapter-5-managing-local-linux-users-and-groups-v2 (4)
 
Linux 101
Linux 101Linux 101
Linux 101
 
Basic commands of linux
Basic commands of linuxBasic commands of linux
Basic commands of linux
 
Unit 12 finding and processing files
Unit 12 finding and processing filesUnit 12 finding and processing files
Unit 12 finding and processing files
 
Advanced file permissions in linux
Advanced file permissions in linuxAdvanced file permissions in linux
Advanced file permissions in linux
 
Operating Systems 1
Operating Systems 1Operating Systems 1
Operating Systems 1
 
Linux commands
Linux commands Linux commands
Linux commands
 
Redis Introduction
Redis IntroductionRedis Introduction
Redis Introduction
 
File systems and inodes
File systems and inodesFile systems and inodes
File systems and inodes
 
When ACLs Attack
When ACLs AttackWhen ACLs Attack
When ACLs Attack
 
Basics of Linux
Basics of LinuxBasics of Linux
Basics of Linux
 
Redis introduction
Redis introductionRedis introduction
Redis introduction
 
Operating Systems 2
Operating Systems 2Operating Systems 2
Operating Systems 2
 

Andere mochten auch

Activitats Complementàries curs 13 14
Activitats Complementàries curs 13 14Activitats Complementàries curs 13 14
Activitats Complementàries curs 13 14Pepe Rodenas
 
Menú hivern-2015-wp
Menú hivern-2015-wpMenú hivern-2015-wp
Menú hivern-2015-wpPepe Rodenas
 
шалгалт зөвлөгөө
шалгалт зөвлөгөөшалгалт зөвлөгөө
шалгалт зөвлөгөөb_hi99
 
Developing information literacy education programme for the iub business stud...
Developing information literacy education programme for the iub business stud...Developing information literacy education programme for the iub business stud...
Developing information literacy education programme for the iub business stud...Md. Zahid Hossain Shoeb
 
IR and DSpace - International Seminar, Dhaka University
IR and DSpace - International Seminar, Dhaka UniversityIR and DSpace - International Seminar, Dhaka University
IR and DSpace - International Seminar, Dhaka UniversityMd. Zahid Hossain Shoeb
 
Activitats extraescolars 13 14
Activitats extraescolars 13 14Activitats extraescolars 13 14
Activitats extraescolars 13 14Pepe Rodenas
 
HRjob - Verbindt mens en werk
HRjob - Verbindt mens en werkHRjob - Verbindt mens en werk
HRjob - Verbindt mens en werkHRjob
 
Delete GRUB/Linux dual booting and claim space
Delete GRUB/Linux dual booting and claim spaceDelete GRUB/Linux dual booting and claim space
Delete GRUB/Linux dual booting and claim spaceMd. Zahid Hossain Shoeb
 
Why do you consider to adopt Koha Open Source Integrated Library System for y...
Why do you consider to adopt Koha Open Source Integrated Library System for y...Why do you consider to adopt Koha Open Source Integrated Library System for y...
Why do you consider to adopt Koha Open Source Integrated Library System for y...Md. Zahid Hossain Shoeb
 
Lingkungan hidup (2)
Lingkungan hidup (2)Lingkungan hidup (2)
Lingkungan hidup (2)Fatwa Rohman
 
EndNote Basic: citation utility for research support
EndNote Basic: citation utility for research supportEndNote Basic: citation utility for research support
EndNote Basic: citation utility for research supportMd. Zahid Hossain Shoeb
 
Bab 2 modernisasi dan globalisasi
Bab 2 modernisasi dan globalisasiBab 2 modernisasi dan globalisasi
Bab 2 modernisasi dan globalisasiFatwa Rohman
 

Andere mochten auch (18)

Activitats Complementàries curs 13 14
Activitats Complementàries curs 13 14Activitats Complementàries curs 13 14
Activitats Complementàries curs 13 14
 
Menú hivern-2015-wp
Menú hivern-2015-wpMenú hivern-2015-wp
Menú hivern-2015-wp
 
Debian installation screenshots
Debian installation  screenshotsDebian installation  screenshots
Debian installation screenshots
 
шалгалт зөвлөгөө
шалгалт зөвлөгөөшалгалт зөвлөгөө
шалгалт зөвлөгөө
 
Developing information literacy education programme for the iub business stud...
Developing information literacy education programme for the iub business stud...Developing information literacy education programme for the iub business stud...
Developing information literacy education programme for the iub business stud...
 
IR and DSpace - International Seminar, Dhaka University
IR and DSpace - International Seminar, Dhaka UniversityIR and DSpace - International Seminar, Dhaka University
IR and DSpace - International Seminar, Dhaka University
 
Activitats extraescolars 13 14
Activitats extraescolars 13 14Activitats extraescolars 13 14
Activitats extraescolars 13 14
 
HRjob - Verbindt mens en werk
HRjob - Verbindt mens en werkHRjob - Verbindt mens en werk
HRjob - Verbindt mens en werk
 
Delete GRUB/Linux dual booting and claim space
Delete GRUB/Linux dual booting and claim spaceDelete GRUB/Linux dual booting and claim space
Delete GRUB/Linux dual booting and claim space
 
Why do you consider to adopt Koha Open Source Integrated Library System for y...
Why do you consider to adopt Koha Open Source Integrated Library System for y...Why do you consider to adopt Koha Open Source Integrated Library System for y...
Why do you consider to adopt Koha Open Source Integrated Library System for y...
 
Kenaikan & penjurusan
Kenaikan & penjurusanKenaikan & penjurusan
Kenaikan & penjurusan
 
Processing of Library Materials
Processing of Library MaterialsProcessing of Library Materials
Processing of Library Materials
 
Organize your research with EndNote
Organize your research with EndNoteOrganize your research with EndNote
Organize your research with EndNote
 
Lingkungan hidup (2)
Lingkungan hidup (2)Lingkungan hidup (2)
Lingkungan hidup (2)
 
EndNote Basic: citation utility for research support
EndNote Basic: citation utility for research supportEndNote Basic: citation utility for research support
EndNote Basic: citation utility for research support
 
Bab 2 modernisasi dan globalisasi
Bab 2 modernisasi dan globalisasiBab 2 modernisasi dan globalisasi
Bab 2 modernisasi dan globalisasi
 
Linux introduction
Linux introductionLinux introduction
Linux introduction
 
Get to know your library
Get to know your libraryGet to know your library
Get to know your library
 

Ähnlich wie Redis

Fun with Ruby and Redis
Fun with Ruby and RedisFun with Ruby and Redis
Fun with Ruby and Redisjavier ramirez
 
Design for a Distributed Name Node
Design for a Distributed Name NodeDesign for a Distributed Name Node
Design for a Distributed Name NodeAaron Cordova
 
Introduction to Redis
Introduction to RedisIntroduction to Redis
Introduction to RedisItamar Haber
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDBAlex Bilbie
 
Introduction to redis
Introduction to redisIntroduction to redis
Introduction to redisTanu Siwag
 
Developing a Redis Module - Hackathon Kickoff
 Developing a Redis Module - Hackathon Kickoff Developing a Redis Module - Hackathon Kickoff
Developing a Redis Module - Hackathon KickoffItamar Haber
 
Hadoop HDFS Architeture and Design
Hadoop HDFS Architeture and DesignHadoop HDFS Architeture and Design
Hadoop HDFS Architeture and Designsudhakara st
 
Key-value databases in practice Redis @ DotNetToscana
Key-value databases in practice Redis @ DotNetToscanaKey-value databases in practice Redis @ DotNetToscana
Key-value databases in practice Redis @ DotNetToscanaMatteo Baglini
 
MySQL 简要介绍
MySQL 简要介绍MySQL 简要介绍
MySQL 简要介绍YUCHENG HU
 
Redis Indices (#RedisTLV)
Redis Indices (#RedisTLV)Redis Indices (#RedisTLV)
Redis Indices (#RedisTLV)Itamar Haber
 
NoSQL, SQL, NewSQL - methods of structuring data.
NoSQL, SQL, NewSQL - methods of structuring data.NoSQL, SQL, NewSQL - methods of structuring data.
NoSQL, SQL, NewSQL - methods of structuring data.Tony Rogerson
 
quickguide-einnovator-9-redis
quickguide-einnovator-9-redisquickguide-einnovator-9-redis
quickguide-einnovator-9-redisjorgesimao71
 
Exploiting NoSQL Like Never Before
Exploiting NoSQL Like Never BeforeExploiting NoSQL Like Never Before
Exploiting NoSQL Like Never BeforeFrancis Alexander
 

Ähnlich wie Redis (20)

Fun with Ruby and Redis
Fun with Ruby and RedisFun with Ruby and Redis
Fun with Ruby and Redis
 
Redis by-hari
Redis by-hariRedis by-hari
Redis by-hari
 
Design for a Distributed Name Node
Design for a Distributed Name NodeDesign for a Distributed Name Node
Design for a Distributed Name Node
 
Introduction to Redis
Introduction to RedisIntroduction to Redis
Introduction to Redis
 
Comredis
ComredisComredis
Comredis
 
Introduction to MongoDB
Introduction to MongoDBIntroduction to MongoDB
Introduction to MongoDB
 
Introduction to redis
Introduction to redisIntroduction to redis
Introduction to redis
 
Developing a Redis Module - Hackathon Kickoff
 Developing a Redis Module - Hackathon Kickoff Developing a Redis Module - Hackathon Kickoff
Developing a Redis Module - Hackathon Kickoff
 
Hadoop HDFS Architeture and Design
Hadoop HDFS Architeture and DesignHadoop HDFS Architeture and Design
Hadoop HDFS Architeture and Design
 
A Practical Multi-Tenant Cluster
A Practical Multi-Tenant ClusterA Practical Multi-Tenant Cluster
A Practical Multi-Tenant Cluster
 
Key-value databases in practice Redis @ DotNetToscana
Key-value databases in practice Redis @ DotNetToscanaKey-value databases in practice Redis @ DotNetToscana
Key-value databases in practice Redis @ DotNetToscana
 
MySQL 简要介绍
MySQL 简要介绍MySQL 简要介绍
MySQL 简要介绍
 
Redis Indices (#RedisTLV)
Redis Indices (#RedisTLV)Redis Indices (#RedisTLV)
Redis Indices (#RedisTLV)
 
NoSQL, SQL, NewSQL - methods of structuring data.
NoSQL, SQL, NewSQL - methods of structuring data.NoSQL, SQL, NewSQL - methods of structuring data.
NoSQL, SQL, NewSQL - methods of structuring data.
 
quickguide-einnovator-9-redis
quickguide-einnovator-9-redisquickguide-einnovator-9-redis
quickguide-einnovator-9-redis
 
Mysql2
Mysql2Mysql2
Mysql2
 
Mysql
MysqlMysql
Mysql
 
Mysql2
Mysql2Mysql2
Mysql2
 
Exploiting NoSQL Like Never Before
Exploiting NoSQL Like Never BeforeExploiting NoSQL Like Never Before
Exploiting NoSQL Like Never Before
 
cisco
ciscocisco
cisco
 

Kürzlich hochgeladen

The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 

Kürzlich hochgeladen (20)

The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 

Redis

  • 2. Redis is... an “advanced key- value store ”
  • 3. NoSQL? An informal, loosely-defined term for non-relational, structured data storage systems like mongodb, couchdb, memcached and redis
  • 4. memcached The canonically simple example a networked “hash in the sky” behind a simple protocol Values page:index.html <html><head>[...] user:123:session xDrSdEwd4dSlZkEkj login_count “7464” user:100:last_login_time “102736485756” Everything’s a string (or a “blob”) Commands just set or get data (mostly)
  • 5. Take memcached’s simplicity, Add more data types, Add persistence, Add more commands, .. and more Redis
  • 6. Redis Data Types Strings Lists Sets Sorted/Scored sets Hashes all accessed by a string key
  • 7. Redis Data Examples Keys Values Page:index.html <html><head>[..]String Login_count 3121 Users_logged_in_today {1,2,3,4,5}Set Latest_post_ids *201,204,209,…+list User:123:session Time=>1092313 hash Username=>arild Users_and_ratings biobot~ 1.3483 sorted (scored) set blast~ 93.4 ahriman~ 283.22 blabla~ 23774.17
  • 8.
  • 12. Lists
  • 13. Lists
  • 15. Sets
  • 16. Sets
  • 17. Sorted sets? Sorry – no time Basically like normal sets but each element can have a “rank” or “score” and be returned or sorted by it
  • 20. Redis Social Network Users have names, can follow others, can be followed Posts are things like messages, photos, etc
  • 21.
  • 22.
  • 23. Building a unique names with colons like user:1:name Is just a convention any string win do…
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30. A Simple Social Network
  • 33. Enough commands! I haven't covered them all though…. On to the soft issues….
  • 34. Atomicity Redis is single threaded No locking necessary In other words, commands like INCR won’t tread on each other’s toes coming from multiple clients simultaneously!
  • 35. Replication • supports master-slave replication • a single-rooted replication tree • a slave may be a master to another slave
  • 36. Redis Factoids BSD licensed (free, open) Sponsored by Vmware Written in ANSI C Good community (list, IRC & wiki) Works on all POSIX-complaint UNIXes
  • 37. Performance Depends a lot on configuration and operation complexity. Common range from 5000 to120,000 rps for basic ops. GET/SET/LPUSH/LPOP, etc. (ultra low end to high end hardware) comparison with other no-sql implementations http://kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis
  • 38. Persistence Dump data to disk after certain conditions are met. Or manually.  SAVE and BGSAVE commands AND/OR An append only log file (which can be optimized/rebuid automatically) but needed to set this up in a config file
  • 39. Language Support Ruby, Python, PHP, Erlang,Tcl, Perl, Lua, Java, Scala,Clojure, C#, C/C++,JavaScript/Node.js, Haskell,IO, Go
  • 40. Missed a lot, now where? Google “redis” for the great official site http://www.redis.io