The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"LinkedIn открыл код распределённого OLAP-хранилища Pinot"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +/
Сообщение от opennews (??) on 13-Июн-15, 19:55 
LinkedIn открыл (https://engineering.linkedin.com/pinot/open-sourcing-pinot-s...) исходные тексты хранилища Pinot, ориентированного на выполнение аналитических запросов.  Хранилище ориентировано (https://github.com/linkedin/pinot/wiki) на работу в условиях постоянного добавления новых данных (изменение уже сохранённой информации не поддерживается) и рассчитано на обеспечение минимальной задержки между добавлением данных и их обработки в реальном времени. Данные в хранилище могут загружаться из разных источников, начиная Hadoop и обычных файлов и заканчивая загрузки информации из online-источников, таких как Kafka. Код проекта написан на Java и распространяется (https://github.com/linkedin/pinot) под лицензией Apache.


Заявлено обеспечение горизонтальной масштабируемости и возможность хранения огромных объёмов данных. Например, в LinkedIn в Pinot хранится около ста миллирдов записей и ежедневно добавляется более миллиарда новых записей. Ежедневно выполняется около 100 миллионов аналитических запросов, интенсивность которых доходит до тысяч запросов в секунду. Отзывчивость при выполнении запросов составляет около 10 мс. Pinot используется в LinkedIn уже два года и лежит в основе реализации более 25 клиентских и 30 внутренних сервисов, таких как предоставление данных о пользователях посмотревших профиль и сообщения.


В системе предусмотрены средства обеспечения отказоустойчивости и сохранения живучести при возникновении программных и аппаратных ошибок.  Pinot подразумевает встраивание репликации и резервного копирования непосредственно в цикл обработки добавляемых в хранилище данных. С одной стороны такой подход приводит к значительному упрощению архитектуры (https://github.com/linkedin/pinot/wiki/Architecture), но, с другой стороны, приводит к возникновению секундной задержки между добавлением данных и их доступностью для запросов. Для управления Pinot-кластером применяется Apache Helix (http://helix.apache.org/).


Обращение к хранилищу производится через привычный SQL-подобный интерфейс, поддерживающий типовые операции фильтрации выборки, агрегирования, сортировки и группировки данных. Для обеспечения предсказуемого времени выполнения запроса операции слияния таблиц (JOIN) не поддерживаются. Данные размещаются в таблицах базы данных, ориентированной на столбцы (column-oriented (https://en.wikipedia.org/wiki/Column-oriented_DBMS)). Поддерживаются различные схемы сжатия и возможность размещения нескольких значений в одном поле. Pinot предоставляет подключаемую систему индексов, в котором можно применять различные типы технологии индексации.

<center><a href="https://github.com/linkedin/pinot/wiki/Architecture">... src="http://www.opennet.me/opennews/pics_base/0_1434214419.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;max-width:100%;" title="" border=0></a></center>

URL: https://engineering.linkedin.com/pinot/open-sourcing-pinot-s...
Новость: http://www.opennet.me/opennews/art.shtml?num=42415

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  –3 +/
Сообщение от Аноним (??) on 13-Июн-15, 19:55 
Интересно, сколько жабка кушает памяти на таких задачах.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

5. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +3 +/
Сообщение от username (??) on 13-Июн-15, 20:40 
Эластик например хочет 60% от хост памяти, залочить её(mlock) и неистово гонять.
до 200 миллионов документов на low end машине 4цпуХ8рамы будет вполне отзывчиво гонять поиском. С агрегацией уже будет по сложнее.
И он очень не любит конкурении по цпу с чем либо. Считаю, это довольно неплохой результат.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

8. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +2 +/
Сообщение от Аноним (??) on 13-Июн-15, 21:00 
> Эластик например хочет 60% от хост памяти, залочить её(mlock) и неистово гонять.
> до 200 миллионов документов на low end машине 4цпуХ8рамы будет вполне отзывчиво
> гонять поиском. С агрегацией уже будет по сложнее.
> И он очень не любит конкурении по цпу с чем либо. Считаю,
> это довольно неплохой результат.

спасибо

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

30. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +1 +/
Сообщение от GrammarNarziss on 15-Июн-15, 11:04 
от хост-памяти
на "low end"-машине
будет посложнее
с чем-либо
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

6. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +1 +/
Сообщение от username (??) on 13-Июн-15, 20:47 
Тут скорее нужно понимать с какого момента ваши задачи готовы к таким масштабам, если не готовы и не будут в принципе в будущем то в решения на яве не стоит ввязыватся. Либо покупать как сервис у кого-то.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

10. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +/
Сообщение от Аноним (??) on 13-Июн-15, 21:33 
Примерно столько же, сколько и сишечка. Оверхед от использования java-машины заметен только на мелких задачах.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

11. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +2 +/
Сообщение от username (??) on 13-Июн-15, 22:46 
Как смешно анон ты оверхед назвал незаметным. Спорить не буду про перформансы(это больная тема), только ты еще забыл добавить про хайпу и танцы со сборщиком мусора(дада, там это админ крутит) и xmx xms на каждом проекте. Jvm это не просто оверхед, это отдельная история которая затребует грамотный подход и некоторое количество возни.
Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

19. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +4 +/
Сообщение от rob pike on 14-Июн-15, 09:52 
Грамотный подход тут очень простой - как только становится важно "быстро" (и данных более-менее много), сборщик мусора сразу же идёт нафиг и начинаются те еще танцы вприсядку. Гуглить по словам off-heap, heap-offloading.
Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

21. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  –1 +/
Сообщение от Аноним (??) on 14-Июн-15, 10:37 
думаю, тут проблема не сборщике мусора как в таковом, а том, что существующие реализации сборщиков мусора не рассчитаны десятки/сотни гигабайт данных
Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

24. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +1 +/
Сообщение от rob pike on 14-Июн-15, 16:53 
Это звучит примерно как "проблема не в авиакрушениях как таковых, а в том, что существующие реализации самолетов не рассчитаны на выживание пассажиров при разваливании на части на высоте 10км"
Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

27. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +/
Сообщение от username (??) on 14-Июн-15, 22:24 
> думаю, тут проблема не сборщике мусора как в таковом, а том, что
> существующие реализации сборщиков мусора не рассчитаны десятки/сотни гигабайт данных

Кто виноват и что делать?  ))
А если серьезно, до какого-то момента дело даже не в том что они(сборщики) не тянут, дело в кривом дизайне приложух. Ну т.е лид должен понимать под что они пишут, где там плюсы а где родовые травмы. Некоторые фракции разработчиков очень любят алгоритмы на доске и в презентации, как это реально будет работать их слабо волнует, считают что проблемы произвдительности надо решать масштабированием.  

Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

26. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  –2 +/
Сообщение от username (??) on 14-Июн-15, 22:15 
>Грамотный подход тут очень простой - как только становится важно "быстро" (и данных более-менее много), сборщик мусора сразу же идёт нафиг и начинаются те еще танцы вприсядку. Гуглить по словам off-heap, heap-offloading.

Да знаем, это скорее решение вопроса в лоб со стороны админа. Актуально не только на жабке, похапе тоже иногда испытывает острую необходимость по работать без сборщика бесцельного бегающего по ссылкам пожирая цпу. (о великие мастера похаписты, избавьте нас в этом треде).

Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

32. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +/
Сообщение от rob pike on 15-Июн-15, 11:33 
Админ, переписывающий Java-код? В какие интересные места вы ходите.

Ответить | Правка | ^ к родителю #26 | Наверх | Cообщить модератору

33. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +/
Сообщение от username (??) on 15-Июн-15, 12:09 
И пыхо/пистон код, по ситуации. Да, печалька.
Ответить | Правка | ^ к родителю #32 | Наверх | Cообщить модератору

38. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +/
Сообщение от Аноним (??) on 15-Июн-15, 16:14 
Наоборот - веселуха! Постоянная, с утра и до утра, без выходных и праздников! :-)
Ответить | Правка | ^ к родителю #33 | Наверх | Cообщить модератору

14. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +/
Сообщение от Аноним (??) on 14-Июн-15, 00:10 
> Примерно столько же, сколько и сишечка. Оверхед от использования java-машины заметен только на мелких задачах.

Какую еще глупость вы нам расскажете?

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

35. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +/
Сообщение от Аноним (??) on 15-Июн-15, 14:44 
> Примерно столько же, сколько и сишечка.

Ну то-есть плюс-минус 10 гигз. Жабисты как-то так обычно меряют :)

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

9. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +/
Сообщение от Ярослав (??) on 13-Июн-15, 21:32 
Какая-то странная статистика: хранится 100 миллиардов записей, ежедневно добавляется более 1-го миллиарда. Если верить этой информации, то напрашиваются интересные выводы, как-то:

- похоже, это хранилище в работе чуть дольше трёх месяцев (100 миллиардов / 1 миллиард в день = 100 дней),
- как это хранилище использовалось 19 месяцев до тех самых пресловутых трёх, если оно в работе уже целых два года,
- что же было до этого хранилища три месяца назад и почему же записи из старого хранилища не импортировали в новое

Даже перепроверил в оригинале - в переводе ошибки нет.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

12. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +1 +/
Сообщение от Crazy Alex (ok) on 13-Июн-15, 23:35 
Возрастающая нагрузка? Убедились, что работает хорошо, и валят всё новые данные...
Или со временем агрегируют и сырые удаляют
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

17. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +2 +/
Сообщение от Ярослав (??) on 14-Июн-15, 00:16 
Crazy Alex,

вот я и говорю, какая-то странная статистика.

> Или со временем агрегируют и сырые удаляют

Думаете, "забыли" сказать, что регулярно удаляют записи

> Возрастающая нагрузка? Убедились, что работает хорошо, и валят всё новые данные...

или, что добавление чуть больше миллиарда записей в день происходит лишь последние две недели, а до этого было около 4.5 миллиардов в месяц или что-нибудь подобное?

Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

13. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +/
Сообщение от Аноним (??) on 14-Июн-15, 00:07 
Pinot is well suited for analytical use cases on immutable append-only data
Вместо обновления данных добавление по новой.
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

16. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +4 +/
Сообщение от Аноним (??) on 14-Июн-15, 00:12 
это же реклама, то есть содержание не ориентировано на считающих и думающих
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

18. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  –1 +/
Сообщение от бедный буратино (ok) on 14-Июн-15, 06:07 
"считающие и думающие" чаще обманывают самих себя, чем их обманывает какая-то реклама. ибо у каждого "считающего и думающего" обычно своя, единственно верная правда. :) правда, другие "считающие и думающие" с этим не согласны :)
Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

22. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +/
Сообщение от Нанобот (ok) on 14-Июн-15, 10:39 
только если допустить, что рост линейный
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

28. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +/
Сообщение от Есюки on 15-Июн-15, 08:47 
>> ежедневно добавляется более миллиарда новых записей

Упор на слове __новых__

Ответить | Правка | ^ к родителю #22 | Наверх | Cообщить модератору

39. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +/
Сообщение от клоун on 15-Июн-15, 16:29 
Я смотрю тебя не смущает, что хранятся "около ста миллирдов", а добавляются "более миллиарда".

Речь в новости о разных единицах измерения.

Ответить | Правка | ^ к родителю #28 | Наверх | Cообщить модератору

29. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +1 +/
Сообщение от Anonon on 15-Июн-15, 09:49 
Разве "100’s of billions" не переводится как "сотни миллиардов"?
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

15. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +3 +/
Сообщение от YetAnotherOnanym (ok) on 14-Июн-15, 00:11 
> изменение уже сохранённой информации не поддерживается

Для кладбища логов многовато наворотов, имхо.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

20. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +/
Сообщение от rob pike on 14-Июн-15, 09:54 
Ну так скучно ж просто спам-то рассылать, креатив просится наружу.

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

25. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +/
Сообщение от anonymous (??) on 14-Июн-15, 17:40 
А MDX оно поддерживает?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

31. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +1 +/
Сообщение от Зенитарка on 15-Июн-15, 11:22 
Социалка, где каждый пишет какой он ох$$нный?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

34. "LinkedIn открыл код распределённого OLAP-хранилища Pinot"  +/
Сообщение от YetAnotherOnanym (ok) on 15-Июн-15, 12:47 
> Особая, офисная социалка, где каждый пишет какой он ох$$нный профессионал.

Fixed.

Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру