Ключ от всех дверей Есть ли место для key/value stores в инфраструктуре корпораций? Зачем нам горизонтальная масштабируемость? • Высочайшие требования по объемам хранения и производительности • Непредсказуемый рост объемов данных • Непредсказуемый рост требований по производительности хранения • Сокращение затрат на начальном этапе Горизонтально-масштабируемые хранилища • Востребованы для HPC, медийных компаний, крупных корпораций • Существуют тесно-связанные и слабо-связанные архитектуры • В основе большинства из них лежит файловая система – SAN FS – Parallel FS – Distributed FS Примеры: IBM GPFS, Lustre, Veritas CFS, GlusterFS, RozoFS, CXFS, EMC OneFS • Предлагаются горизонтально-масштабируемые блочные СХД – RAIDIX StarRAIN – EMC ScaleIO Горизонтально-масштабируемые хранилища • Сколько объектов можно хранить, используя такое решение? • Расскажите о своем опыте Специализированные решения для BigData Хранение огромного количества объектов. Уход от POSIX. Файловые системы: – HDFS NoSQL-хранилища: – Cassandra – HBase – MongoDB In-Memory хранилища • • • • Redis Stanford RamCloud Spark/Tachyon VoltDB/H-Store CAP-Теорема При построении распределенных систем невозможно добиться одновременного выполнения трех условий: • Консистентность данных • Высокая доступность • Устойчивость к разделению Key/Value stores Парадигма хранения данных. Решение, позволяющее хранить ассоциативные массивы. – Гибкость понятия “значение”: видео-файл, изображение, документ, строка – Мы можем добавлять, удалять, модифицировать объекты и выполнять поиск объекта по ключу. – Пользователям предоставляется специальное API – Практически бесконечное масштабирование – Быстрый поиск элементов с постоянной скоростью Key/Value stores • Несколько моделей обеспечения консистентности • Высокая доступность – Чаще всего через многократную репликацию – Переход на Erasure Coding • Данные хранятся на Flash, дисках или в RAM • Обеспечивается синхронная/асинхронная репликация в удаленный ЦОД Зачем нам key/value хранилища • Простая масштабируемость до миллиардов объектов • Высокая скорость доступа к данным • Key/value не применим в средах, где требуется частое обновление объектов – Возможен уровень POSIX-совместимой ФС. Но разработать его не просто. Key/Value и Flash Зачем? Высочайшая производительность доступа к данным с минимальным временем отклика Объем данных достаточно велик для хранения в RAM • In-memory БД • Online игры • Сервисы мгновенных сообщений • Кэш • Обработка больших объемов данных в реальном времени Key/Value и Flash • Учитывают работу FTL – Используются специальные примитивы • Исключен уровень файловой системы Key/Value • Назовите ваши задачи для key/value stores Ethernet диски • • • • Накопители, подключаемые по Ethernet Предоставляют key/value интерфейс Производители предоставляют API и библиотеки Некоторые модели предоставляют возможность запускать различные Storage Management приложения • Требуются специализированные аппаратные платформы • Размеры ключей варьируются от 1b до 4kb • Размеры объектов варьируются от 0b до 1MB Ethernet диски Вопросы • Сложности с организацией сетевой инфраструктуры • Сложности с обслуживанием. Как обновлять программное обеспечение? • Сложности с обеспечением безопасности данных Наше видение будущего Наше видение будущего • Рост потребности в высокопроизводительных горизонтально-масштабируемых хранилищах Нам нужна высокопроизводительная сеть с минимальными задержками • Мы не можем отказаться от блочногой и файлового типов доступа Key/value хранилище, оптимизированное для NVM • Шардинг • Модели консистентности данных • Обеспечение высокой доступности Блочный и файловый шлюзы