Download - NoSQL и Zend Framework (Никита Грошин)
![Page 1: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/1.jpg)
NOSQL
![Page 2: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/2.jpg)
![Page 3: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/3.jpg)
![Page 4: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/4.jpg)
GeometriaLab
Geometria.RuGeometria.Me
![Page 5: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/5.jpg)
ТрендыКоличество данныхСвязанность данных
Усложнение сущностейУсложнение архитектуры
![Page 6: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/6.jpg)
Нагрузка
В чем причина?
![Page 7: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/7.jpg)
![Page 8: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/8.jpg)
NOSQLKey-ValueDocumentGraphDBBigTable
![Page 9: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/9.jpg)
Key-ValueБольшие объемы данных
СкоростьРепликация
Масштабируемость
![Page 10: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/10.jpg)
DocumentВыборки по Value
ШардингMap/Reduce
Версионность
![Page 11: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/11.jpg)
Graph/BigTable
Пара слов..
![Page 12: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/12.jpg)
ПлюсыМасштабируемость
НадежностьДоступность
Гибкость
![Page 13: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/13.jpg)
МинусыВыборки
СогласованностьСтандартизация
Безопасность
![Page 14: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/14.jpg)
МинусыВыборки
СогласованностьСтандартизация
Безопасность
![Page 15: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/15.jpg)
RedisЛегкий,быстрый
lists, sets, ordered setsАтомарные операции
union, intersection, difference
![Page 16: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/16.jpg)
ДанныеKey:String =>Value:StringKey:String =>Value:LISTKey:String =>Value:SET
Key:String =>Value:ZSET
![Page 17: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/17.jpg)
Скорость200000 GET/SET в секунду
Множество клиентовОперации в RAM
Асинхронный persistencRAMe
![Page 18: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/18.jpg)
РепликацияВстроенный асинхронный
Master=>SlaveЦепочки репликацийSlave блокируется,
Master нет
![Page 19: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/19.jpg)
ШардингКонсистентные хэши
Redis ClusterApplication level
![Page 20: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/20.jpg)
RediskaНесколькими серверамиКлючами как с объекты LIST и SET как массивы
Интеграция с Zend Framework
![Page 21: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/21.jpg)
Zend Framework
Кладем Redika в libraryВносим Rediska в конфиг
![Page 22: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/22.jpg)
Интеграция
![Page 23: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/23.jpg)
Zend Framework
Кладем Redika в libraryВносим Rediska в конфиг
![Page 24: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/24.jpg)
Интеграция Zend_Auth adapter
Zend_Cache backend Zend_Log writer
Zend_Queue adapter Zend_Session save handler
![Page 25: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/25.jpg)
Интеграция Zend_Auth adapter
Zend_Cache backend Zend_Log writer
Zend_Queue adapter Zend_Session save handler
![Page 26: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/26.jpg)
class UsersPosts extends Rediska_Key_Set
{ …$users = new UsersPosts($userId);$users->add($postId1);$users->add($postId2);…foreach ($users as $userId) {
![Page 27: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/27.jpg)
MongoDb
![Page 28: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/28.jpg)
ХорошИдеален для Web
КэшированиеJSON, BSON
Там где RDBMS плох
![Page 29: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/29.jpg)
ПлохСложные Транзакции
EnterpriseЗабивание гвоздей
Там где RDBMS плох
![Page 30: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/30.jpg)
Sql vs. Mongo
![Page 31: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/31.jpg)
SQL MongoDB
SELECT a,b FROM users
db.users.find({}, {a:1,b:1})
SELECT * FROM users WHERE age<33
db.users.find({'age':{$lt:33}})})
SELECT COUNT(*y)FROM users
db.users.count()
![Page 32: NoSQL и Zend Framework (Никита Грошин)](https://reader031.vdocuments.site/reader031/viewer/2022020217/54b6189f4a79599c038b4724/html5/thumbnails/32.jpg)
Mongo PHPPecl driver
ZF, Kohana, SymfonyMorph, Simplemongophp,
MapReduce API