Редис СЦАРД

Redis Scard



„Редис скупови су неуређене колекције стрингова које не садрже дупликате. Они су веома слични Јава ХасхСетовима, Питхон скуповима итд. Што је најважније, фундаменталне операције као што су додавање, уклањање и провера постојања члана су веома ефикасне јер раде у временској сложености О(1).“

Чланови скупа

Као што је поменуто, Редис скупови садрже јединствене стрингове. Већ постојеће ставке неће бити прихваћене од стране Редис скупова и биће игнорисане. Штавише, један сет може да садржи до 4 милијарде јединствених жица.









Природа Редис сета држања јединствених чланова је згодна у неколико случајева употребе у стварном свету.



  • Способност извођења операција стандардног скупа као што су унија, пресек и разлика.
  • Праћење јединствених посетилаца веб локације
  • Представите односе ентитета у стварном свету

Команда СЦАРД

Команда СЦАРД, скраћеница од Сет Цардиналити, враћа број чланова у скупу који је ускладиштен на датом кључу. Ради у временској сложености О(1), што значи да се време потребно за извршавање команде СЦАРД не ослања на број чланова у датом скупу. Увек је потребно стално време.





Команда СЦАРД има врло једноставну синтаксу, као што је приказано у наставку.

СЦАРД сет_кеи

сет_кеи: Кључ Редис сета



Ова команда враћа целобројну вредност која представља број чланова у скупу.

Случај употребе – Пребројите јединствене посетиоце веб локације

Претпоставимо да компанија за производњу пица „ИуммиПизза” одржава веб локацију под називом иуммипизза.цом на којој људи могу наручити пицу на мрежи. Да би пратили своју продају и базу купаца, одржавају Редис базу података за чување свих јединствених посетилаца веб локације сваког месеца.

Кад год корисник посети веб локацију ИуммиПизза, ИД корисника треба додати у Редис базу података. Такође, исти корисник не би требало да се додаје у базу података. Дакле, идеална структура података је Редис скуп, где скупови чувају само јединствене чланове.

Претпоставимо да је пет корисника посетило веб локацију, а ови чланови су додати у Редис базу података, као што је приказано у наставку.

САДД ИуммиПиззаВиситорс:октобар Џон Мери Раза Стоинис Принц

Као што се очекивало, цео број 5 је враћен, што значи да је пет чланова додато скупу ускладиштеном на кључу „ ИуммиПиззаВиситорс:октобар.

На крају дана, администратори компаније треба да провере укупан број јединствених посетилаца веб локације. Дакле, потребно је израчунати кардиналност скупа. Срећом, команда СЦАРД о којој смо раније говорили добро долази у овој врсти сценарија.

Хајде да извршимо команду СЦАРД на скупу сачуваном на кључу „ ИуммиПиззаВиситорс:октобар.

сцард ИуммиПиззаВиситорс:октобар

Излаз је 5, што значи да је пет јединствених чланова у наведеном скупу. Ова команда се извршава пребрзо. Није важно пет чланова или 50000 чланова; време извршења ће бити константно.

Претпоставимо да наведени кључ за сет не постоји у Редис бази података. Тада ће излаз бити 0, као што је приказано у следећем примеру. У овом случају ћемо навести кључ који није у бази података.

сцард НонЕкистингКеи

Закључак

Да резимирамо, Редис сет је идеалан кандидат за чување јединствених стрингова. Као што је дискутовано, најважнија ствар у вези са Редис скупом је да је већини повезаних операција скупа потребно константно време да се изврше. Команда СЦАРД је једна од најчешће коришћених команди скупа за израчунавање укупног броја чланова скупа за дати скуп који се чува на одређеном кључу. Без обзира колико чланова скупа је доступно, овој команди је потребно стално време да обезбеди излаз. Као што је приказано у последњем примеру, ако сет кључ не постоји, онда ће излаз бити 0.