27
Я.Субботник, Новосибирск, 19 ноября 2011 года Руководитель группы администрирования геоинформационных сервисов Илья Шаров Земля в коробочке: хранят и показывают Яндекс.Карты

Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

  • Upload
    yandex

  • View
    394

  • Download
    2

Embed Size (px)

DESCRIPTION

Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты" Я.Субботник в Новосибирске О докладе: Современные карты – это сотни миллионов небольших объектов. Разумеется, так было не всегда. Мы расскажем, как мы хранили наш первый миллион тайлов, с какими сложностями столкнулись во время роста, как их решили и где храним все наши карты сейчас. Также мы обсудим, почему иногда полезно оглядываться назад и какие выводы можно сделать из опыта четырехлетней давности. Немного упомянем о том, как не бояться первых тысяч пользовательских запросов в секунду, и поговорим о волшебном слове «кеширование».

Citation preview

Page 1: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

Я.Субботник, Новосибирск, 19 ноября 2011 года

Руководитель группы администрирования геоинформационных сервисов

Илья Шаров

Земля в коробочке:хранят и показывают Яндекс.Карты

Page 2: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

• Хранить много файлов

• Быстро раздавать много файлов

О чем вообще идет речь?

2

Page 3: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

Из чего сделаны карты?

3

Page 4: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

Тайлы

Э

4

Page 5: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

Версионирование

&v=1.27.0& &v=1.29.0&

5

Page 6: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

Такие похожие,

но все-таки разные

6

Page 7: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

Давайте сложим на FS?

7

Page 8: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

Вариации для хранения на FS

ISO9660 LVM+Snapshots

8

Page 9: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

• Неудобно делать версионирование

• Больше объектов - ниже скорость ответа

• Неудобно раскладывать на кластер

Минусы хранения на FS

9

Page 10: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

Кстати, о цифрах

~300млн*5 ~200млн*3

10

Page 11: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

Key-value storage: Elliptics

Э

11

Page 12: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

• Масштабируемость (DHT)

• Скорость (Eblob)

• Отказоустойчивость

• Удобство использования (HTTP REST)

• Одна точка входа

Elliptics: бочка меда

12

Page 13: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

• Один объект — один запрос

• Долгая перебалансировка кластера

• Версии в имени файла или сбоку

Elliptics: ложка дегтя

13

Page 14: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

Opensource:

попробуйте его сами

на elliptics.ru

Э

14

Page 15: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

Схема: рисуем на лету

Э

15

Page 16: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

• Генерация картинки по описанию

• Легкое внесение изменений

• Слои с небольшим TTL (пробки)

• Возможность создания стилей

• Локализация

Online rendering хорош...

16

Page 17: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

• Основной ресурс - CPU

• Количество RPS зависит от информативности тайла

...но сильно прожорлив

17

Page 18: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

Online rendering:

работает закон Мура

Э

18

Page 19: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

Похвальное слово кэшу

19

Page 20: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

Схема >80%

Э

20

Page 21: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

Спутник ~ 50%

Э

21

Page 22: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

• На панорамах лучше не применять

• Слои с небольшим TTL

• UGC слои: особая схема кэширования

Остальные слои

22

Page 23: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

Региональная программа(CDN):

делаем контент ближе

23

Page 24: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

• Анонс ip на местных IX

• Выигрываем от 30 до 120ms

• Выгодно отдавать только схему

Региональная программа (CDN)

Несколько фактов:

24

Page 25: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

Статистика кэша: действительна и для региональной программы

Э

25

Page 26: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

А как вы храните свои карты?

Э

26

Page 27: Илья Шаров "Земля в коробочке: хранят и показывают Яндекс.Карты"

Илья Шаров

Руководитель группы эксплуатации геоинформационных сервисов

[email protected]

@iliya_sharov