Содержание
- 2. Распределенный API: по 22 сервера в 2-х датацентрах (Америка, Европа). Разнообразные клиентские приложения: 40 desktop и
- 3. Возникла необходимость добавить новый источник данных HBase. С чего все началось?
- 4. NoSql – ; написана на Java; аналог Google Big table; не является заменой SQL; интерфейсы взаимодействия:
- 5. Apache Avro — система сериализации данных. Система использует JSON для определения структуры данных (схемы), которые сериализуются
- 6. AVRO – схема
- 7. HBase + Thrift-AVRO + .NET = ? AVRO AVRO TCP Socket TCP Socket
- 8. Workflow
- 9. META-DRIVEN; результат – простая таблица; возможность выполнять Map/Reduce; сохранить отношения данных; Требования
- 10. Проблемы большие вложенные AVRO схемы до 1 000 000 строк; AVRO не дружит с .NET; после
- 11. Что делать? А давайте напишем свой DSL!
- 12. Разработка синтаксиса
- 13. А давай еще Join’s
- 14. А как быстро написать парсер?
- 15. Парсинг(синтаксический анализ текста) ОБЩИЙ ПОДХОД
- 16. Парсер генератор на основе формальных языков (ANTLR). Подключаемая библиотека комбинаторных парсеров (Sprache, SuperPower). ... Выбор
- 17. Написать руками
- 18. ANTLR (Another Tool for Language Recognition) Расширенная форма Бэкуса — Наура Генератор на основе формальных языков
- 19. декларативный синтаксис; строгое соблюдение грамматики; не нужно думать о performance; не нужно писать документацию. Генератор на
- 20. реализован как библиотека языка; модульный и поддерживаемый; полуавтоматическая генерация сообщений об ошибках; backtracking и look ahead;
- 21. никакого внешнего кода; поддается к индивидуальным требованиям; потенциально быстр, как только это возможно. Рукописные парсеры все
- 22. Причем тут функциональное прог-ие? Основные концепции: неизменяемые структуры данных; чистые функции; функции высших порядков; рекурсия.
- 23. Императивное vs Функциональное
- 24. Написать примитивные парсеры(функции). Написать функции для комбинирования. Скомбинировать простые парсеры в более сложные. PROFIT! Don’t panic
- 25. type Parser = String -> Tree type Parser = String -> (String, Tree) type Parser =
- 26. Пишем простой комбинаторный парсер Выражение : “42 + 5” 42 + 5 expression + 42 5
- 27. Парсим простое выражение : “42 + 5” Railroad - диаграмма Грамматика в БНФ
- 28. Библиотеки с готовым набором комбинаторных парсеров для С# небольшая библиотека, совместима .NET Core; простой, но богатый
- 29. Готовый код парсера для “42 + 5”
- 30. Ну, а как же без TDD?
- 31. Давайте усложним : “42 + 5 - 7” Railroad - диаграмма Грамматика в БНФ
- 32. Парсер на Sprache “42 + 5 - 7”
- 33. DSL (Domain-specific language) Пример: XPath, SQL; использование NoSQL; не хватает всей “Мощи” XML; разработка IDE или
- 34. Что внутри?
- 35. Тип Result
- 36. Тип Input (обертка над string)
- 37. Начнем с простых парсеров
- 38. Пишем первый комбинирующий парсер Parser Parser Then
- 39. Строим путь к LINQ’s query синтаксису
- 40. Комбинируем
- 41. Полный код на GitHub
- 42. Фрагмент из клипа Thrift shop ☺ HASL – HBase Avro Snapshot Language
- 43. прототип был написан за 1 вечер на Sprache; был переписан на Superpower; в дальнейшем все изменения
- 44. Что получилось достичь за 1 день?
- 45. Транформирует объекты в таблицу. Ориентирован на AVRO-схему. Селекторы для всех типов: object, type[], примитивы. Фильтры для
- 46. Перформанс HASL - Основа Core-I7 6700 3.40 GHz. Windows server 2010. x64.
- 47. 3 424 знаков. 120 строк. 3 Join’а. 102 селектора. 25 с фильтрами. Полностью отформатирован. Перформанс HASL
- 48. Перформанс HASL - Результаты
- 49. Схема
- 50. Пример запроса
- 51. Результат
- 52. Спасибо за внимание!
- 54. Скачать презентацию



















































Базовые конструкции Java. Основы программирования. (Тема 1.1)
Программа LabVIEW
Introduction to C++. Programming
7-1-3
Інтернет-фріки
История развития интернета, цель и основа ее создания
Организация вычислений в электронных таблицах
Шаблон оформления электронной презентации
Принципы функционирования передачи данных сотовых сетей (1)
Умная теплица
Теория баз данных
Основы системного подхода
Текстуры
Защита информации. Роль информации в современном мире
Средства защиты информации
Ввод-вывод данных на консоль в С++
Оптимизатор Solver (встроен в Microsoft Excel)
Словарь терминов
Разработка ПО для автоматизации учета продажи обуви на предприятии “Престиж”
Проект Dengerouscraft,1.1.X
Компоненты. Имя компонента
Компьютер. Windows Premium Pro 10 Glow
Цифровые ресурсы Pearson
Системы рекомендаций
Интеллектуальные вычисления и сквозные цифровые технологии
2_Prakticheskaya_rabota
Риск-анализ это просто. Пособие для студентов
Управление программным обеспечением