Леонид Блохин (Big Data Engineer): КОЛОНОЧНЫЕ БД НА ПРИМЕРЕ PARQUETProvectus
"Отличия строковых и колоночных баз данных.
Apache Parquet, области применения, преимущества которые он дает, сравнение с другими колоночными базами данных.
Apache Spark, области применения, отличительные особенности, приемущества и недостатки, работа с parquet файлами в Hadoop File System.
RDD, DataFrames, и Datasets в Apache Spark, зачем они нужны, как ими пользоваться, какие профиты.
Mist, используем Spark, как сервис с REST API"
Опыт разработки масштабируемого решения по хранению журналов в HadoopCUSTIS
Выступление Дмитрия Морозова, нашего ведущего специалиста по проектированию IT-инфраструктурных решений, на техническом семинаре «Hadoop на практике. Новые инструменты и проекты» (12 ноября 2014 года, Москва).
Леонид Блохин (Big Data Engineer): КОЛОНОЧНЫЕ БД НА ПРИМЕРЕ PARQUETProvectus
"Отличия строковых и колоночных баз данных.
Apache Parquet, области применения, преимущества которые он дает, сравнение с другими колоночными базами данных.
Apache Spark, области применения, отличительные особенности, приемущества и недостатки, работа с parquet файлами в Hadoop File System.
RDD, DataFrames, и Datasets в Apache Spark, зачем они нужны, как ими пользоваться, какие профиты.
Mist, используем Spark, как сервис с REST API"
Опыт разработки масштабируемого решения по хранению журналов в HadoopCUSTIS
Выступление Дмитрия Морозова, нашего ведущего специалиста по проектированию IT-инфраструктурных решений, на техническом семинаре «Hadoop на практике. Новые инструменты и проекты» (12 ноября 2014 года, Москва).
Инфраструктура Big data - от источников до быстрых витрин - версия для МИСиСYury Petrov
В докладе я постараюсь донести до аудитории общую концепцию построения инфраструктуры Big Data, которую многие не видят.
Будут и инсайты и самый главный из них это то, что за долгое время работы с Big Data я таки вывел определение для этого термина
Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...Ontico
Оперативная память становится всё более дешёвой и производительной, что позволяет использовать её для хранения рабочего набора данных всё большего числа приложений. Хранение всех данных в оперативной памяти позволяет сделать их высоко доступными, а алгоритмы для работы с данными либо существенно упростить, либо ускорить, а иногда — и то, и другое.
Тезисы - http://www.highload.ru/2015/abstracts/1964.html
MyBatis и Hibernate на одном проекте. Как подружить?Alexey Zinoviev
Zinoviev Alexey presented this paper on CodeFest 2013, Novosibirsk.
Paper covers next topics: Hibernate, MyBatis, ORM, databases, SQL, JDBC, patterns, XML
Зиновьев Алексей Zinoviev Alexey выступил на Codefest 2013 с данным докладом.
Видео приглашение: http://youtu.be/8KObW8pZ9e0
Видео доклада: http://youtu.be/Tm5rl4ObWBA
Что такое кастомные таблицы в Drupal, для решения каких задач их стоит использовать, а для каких нет, способы создания кастомных таблиц.
-----
Сайт сибирского сообщества друпаллеров ДрупалСиб drupalsib.ru
Группа сибирского сообщества друпаллеров Вконтакте vk.com/drupalsib
Партнер Группа компаний И20 i20.biz
Евгений Лазин. Неизменяемая структура данных HAMT для создания БД в памятиFProg
В данном докладе рассматривается пример использования персистентной структуры данных - функциональной версии HAMT, для создания main memory базы данных. Данная реализация HAMT располагается в shared memory и используется для хранения индексов.
Рассматриваются задачи, которые были быстро и эффективно решены благодаря использованию неизменяемых структур данных (управление изменениями, поддержка ACID-свойств), а также проблемы, возникшие из-за этого. Также, рассмотрен метод реализации персистентного графа, использующий изменяемые данные и позволяющий достичь большей производительности, по сравнению с аналогичной, неизменяемой структурой данных.
Machine learning c использованием нейронных сетей, Дмитрий ЛапинIT61
Обзор популярных фреймворков для обучения нейронных сетей, поделюсь собственным опытом их внедрения. Расскажу об использовании готовых предобученных сетей "как есть", дообучении (fine-tuning) и обучении собственных сетей с нуля.
СУБД Firebird: Краткий обзор, Дмитрий Еманов (in Russian)Alexey Kovyazin
Небольшая презентация Дмитрия Еманова, ведущего разработчика Firebird, посвящена обзору СУБД Firebird, в том числе текущему состоянию и планам развития.
SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?SECON
Тестирование заказов в ecommerce международного масштаба/ Order Lifecycle - Жизненный цикл заказа vs QA / Lazada. Азиатская кухня ecommerce тестирования.
Инфраструктура Big data - от источников до быстрых витрин - версия для МИСиСYury Petrov
В докладе я постараюсь донести до аудитории общую концепцию построения инфраструктуры Big Data, которую многие не видят.
Будут и инсайты и самый главный из них это то, что за долгое время работы с Big Data я таки вывел определение для этого термина
Что особенного в СУБД для данных в оперативной памяти / Константин Осипов (Ta...Ontico
Оперативная память становится всё более дешёвой и производительной, что позволяет использовать её для хранения рабочего набора данных всё большего числа приложений. Хранение всех данных в оперативной памяти позволяет сделать их высоко доступными, а алгоритмы для работы с данными либо существенно упростить, либо ускорить, а иногда — и то, и другое.
Тезисы - http://www.highload.ru/2015/abstracts/1964.html
MyBatis и Hibernate на одном проекте. Как подружить?Alexey Zinoviev
Zinoviev Alexey presented this paper on CodeFest 2013, Novosibirsk.
Paper covers next topics: Hibernate, MyBatis, ORM, databases, SQL, JDBC, patterns, XML
Зиновьев Алексей Zinoviev Alexey выступил на Codefest 2013 с данным докладом.
Видео приглашение: http://youtu.be/8KObW8pZ9e0
Видео доклада: http://youtu.be/Tm5rl4ObWBA
Что такое кастомные таблицы в Drupal, для решения каких задач их стоит использовать, а для каких нет, способы создания кастомных таблиц.
-----
Сайт сибирского сообщества друпаллеров ДрупалСиб drupalsib.ru
Группа сибирского сообщества друпаллеров Вконтакте vk.com/drupalsib
Партнер Группа компаний И20 i20.biz
Евгений Лазин. Неизменяемая структура данных HAMT для создания БД в памятиFProg
В данном докладе рассматривается пример использования персистентной структуры данных - функциональной версии HAMT, для создания main memory базы данных. Данная реализация HAMT располагается в shared memory и используется для хранения индексов.
Рассматриваются задачи, которые были быстро и эффективно решены благодаря использованию неизменяемых структур данных (управление изменениями, поддержка ACID-свойств), а также проблемы, возникшие из-за этого. Также, рассмотрен метод реализации персистентного графа, использующий изменяемые данные и позволяющий достичь большей производительности, по сравнению с аналогичной, неизменяемой структурой данных.
Machine learning c использованием нейронных сетей, Дмитрий ЛапинIT61
Обзор популярных фреймворков для обучения нейронных сетей, поделюсь собственным опытом их внедрения. Расскажу об использовании готовых предобученных сетей "как есть", дообучении (fine-tuning) и обучении собственных сетей с нуля.
СУБД Firebird: Краткий обзор, Дмитрий Еманов (in Russian)Alexey Kovyazin
Небольшая презентация Дмитрия Еманова, ведущего разработчика Firebird, посвящена обзору СУБД Firebird, в том числе текущему состоянию и планам развития.
SECON'2017, LAZADA Effartlrss Shopping, Как мы тестируем?SECON
Тестирование заказов в ecommerce международного масштаба/ Order Lifecycle - Жизненный цикл заказа vs QA / Lazada. Азиатская кухня ecommerce тестирования.
3. Содержание доклада:
● Отличия строковых и колоночных баз данных.
○ особенности
○ области применения
○ преимущества и недостатки
● Apache Parquet,
○ области применения,
○ преимущества и недостатки.
● Apache Spark,
○ области применения, отличительные особенности,
○ приемущества и недостатки, работа с parquet файлами в Hadoop File System.
● RDD, DataFrames, и Datasets в Apache Spark,
○ зачем они нужны,
○ как ими пользоваться,
○ какие профиты.
● Mist, используем Spark, как сервис
6. Области применения колоночных БД
● Событийные таблицы, над которыми выполняются сложные выборки
(агрегации, фильтры, сортировки). Например, добавление товаров в
корзину в Интернет магазине. Метрики рекламы, нагрузок ...
● Агрегатные таблицы с большим количеством данных для аналитических
выборок. Это часто таблицы, которые строятся из событийных таблицы.
Это может быть таблицы со статистикой добавления товаров в корзину
по дням, категориям, ценам и другим параметрам.
7. Преимущества
Колоночные базы данных позволяют эффективно делать сложные выборки
на больших таблицах.
Изменение структуры больших таблиц происходит мгновенно.
Сжатие данных позволяет сэкономить место
8. Недостатки
Медленно работают на запись
Не поддерживают транзакции
Имеют ряд ограничений для разработчика (sql синтаксис не полный)
Обычные выборки по ключу всех столбцов без профита
12. CSV, JSON,
XML
Sequence
file
Avro Parquet ORC
Строко
ориентированный
формат
Бинарный с
компрессией и
сериализацией
Колоночно
ориентированный
формат
Смешанный
строко и
колоночно
ориентированный
13.
14. Колоночный формат, Работает в HDFS
Поддерживает сжатие(snappy, gzip, lzo, brotli)
Метадата кодируется Apache Thrift
Поддерживает вложенные данные
The striping and assembly algorithms from the Dremel paper
15. Файлы имеют несколько уровней разбиения на части,
благодаря чему возможно довольно эффективное
параллельное выполнение операций поверх них:
Row-group — это разбиение, позволяющее
параллельно работать с данными на уровне
Map-Reduce
Column chunk — разбиение на уровне колонок,
позволяющее распределять IO операции
Page — Разбиение колонок на страницы, позволяющее
распределять работу по кодированию и сжатию
16. типы
● BOOLEAN: 1 bit boolean
● INT32: 32 bit signed ints
● INT64: 64 bit signed ints
● INT96: 96 bit signed ints
● FLOAT: IEEE 32-bit floating point values
● DOUBLE: IEEE 64-bit floating point values
● BYTE_ARRAY: arbitrarily long byte arrays.
17. Достоинства Parquet
● Эффективное хранение
● Высокая скорость сложных выборок, если не нужны
все колонки сразу
● Быстрая работа на чтение, по сравнению с
использованием других файловых форматов
● HDFS, NFS, GlusterFS
18. Недостатки parquet
● parquet ведёт себя как неизменяемая таблица или БД
● Для колонок определён тип, нельзя комбинировать
сложный тип данных с простым.
● Не поддерживаются транзакции
19.
20.
21. val peopleDF = spark.read.json("examples/src/main/resources/people.json")
peopleDF.write.parquet("people.parquet")
val parquetFileDF = spark.read.parquet("people.parquet")
parquetFileDF.createOrReplaceTempView("parquetFile")
val namesDF = spark.sql("SELECT name FROM parquetFile WHERE age BETWEEN 13 AND 19")
namesDF.map(attributes => "Name: " + attributes(0)).show()
+----------------+
| value |
+----------------+
|Name: Justin|
+----------------+
22. Resilient Distributed Dataset
Распределенный набор данных, который знает как себя вычислить.
RDD может быть лениво вычисляемой при запросе
может быть и материализована — распределенно, в памяти или на диске
(или в памяти с вытеснением на диск)
разбита на партиции — это минимальный объем RDD, который будет
обработан каждым рабочим узлом.