24
Кирилл Коринский 10.4.10 NoSQL хранилища

Kirill A Korinskiy Rit2010 No Sql Storage

  • Upload
    rit2010

  • View
    922

  • Download
    4

Embed Size (px)

Citation preview

Page 1: Kirill A  Korinskiy Rit2010 No Sql Storage

Кирилл Коринский

10.4.10

NoSQL хранилища

Page 2: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

Эволюция термина NoSQL● первый раз использовал термин NoSQL в

1998 Carlo Strozzi

● есть реляционная модель

● NoSQL возник опять благодаря Johan Oskarsson 11 июня 2009

Page 3: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

NoSQL это distributed hash table● hash таблица● распределенние и легко

маштабирование● Отказоустойчевость● быстродействие

Page 4: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

Что такое хеш?● Отображение заведомо большего

множество на меньшее● Примеры популярных хеш функйи:

crc32; md5, sha

Page 5: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

Коллизии● Наивное шардирование● С учетом данных

Page 6: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

Избыточность● Отказоусточивость● быстродействие

Page 7: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

Проблема слияния данных● Пользователь● Timstamp● vector clock

Page 8: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

Hadoop● Лицензия: Apache License 2.0● Язык реализации: Java● Написаные книги:

● Hadoop in Action

● Pro Hadoop

● Hadoop: The Definitive Guide

Page 9: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

Cassandra● Лицензия Apache License 2● Язык реализации: Java● API: Thrift

Page 10: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

CouchDB● Лицензия Apache License 2● Язык реализации: Erlang● API: JSON

Page 11: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

MongoDB● Лицензия GNU AGPL v3.0● Язык реализации: C++● API: BSON

Page 12: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

Riak● Лицензия: Apache License 2.0● Язык реализации: Erlang● API: JSON

Page 13: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

Terrastore● Лицензия: Apache License 2.0● Язык реализации: Java● API: HTTP

Page 14: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

Amazon● SimpleDB● Dynamo● API: HTTP

Page 15: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

Redis● Лицензия: BSD● Язк реализации: C● API: библиотеки для разных языков

Page 16: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

Tokyo Cabinet / Tyrant● Лицензия: LGPL● Язк реализации: C● API: библиотеки для разных языков

Page 17: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

GT.M● Лицензия: AGPL 3● Языков реализации: C● API: M, C, Python, Perl

Page 18: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

Berkeley DB● Лицензия: Sleepycat License● Языков реализации: C● API: библиотеки для разных языков

Page 19: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

MemcacheDB● Лицензия: BSD● Языков реализации: C● API: свой протокол

Page 20: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

Mnesia● Лицензия: Open Source Erlang

Licence● Языков реализации: Erlang● API: Erlang

Page 21: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

HamsterDB● Лицензия: GPL2/GPL3/FOSS

Exceptions/Commercial● Язык реализации: C● API: библиотеки для разных языков

Page 22: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

Voldemort● Лицензия: Apache License 2● Язык реализации: Java● API: Thrift

Page 23: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

Dynomite● Лицензия: BSD● Язык реализации: Erlang● API: JSON

Page 24: Kirill A  Korinskiy Rit2010 No Sql Storage

10.4.10

Вопросы[email protected]