При разработке ПО часто возникают интересные задачи. Одна из таких: работа с гео-координатами пользователей. Если вашим сервисом пользуются миллионы пользователей и запросы к РСУБД происходят часто, то выбор алгоритма играет важную роль. О том как оптимально обрабатывать большое количество запросов и искать ближайшие гео-позиции рассказано под катом.
Метка «BigData»
Работа с геолокациями в режиме highload
2014-07-01 в 18:05, admin, рубрики: big data, BigData, geo, highload, postgis, postgresql, Алгоритмы, Геоинформационные сервисы, метки: BigData, geo, highload, postgis, postgresql, АлгоритмыГрань между карго-культом и эволюцией в обучении успеху
2014-06-23 в 8:01, admin, рубрики: BigData, growth hacking, gtd, истории неуспеха, истории успеха, обучение, стартапы, управление проектами, успех, эволюция, метки: BigData, истории неуспеха, истории успеха, обучение, стартапы, успех, эволюцияПредприниматели с большим энтузиазмом берут на вооружение инструменты верификации будущей прибыли. Идея A/B-тестирования упала в благодатную почву. Больше нет необходимости ломать голову над цветом кнопки, можно сразу же тестировать и выбирать лучшее.
Напомню как это делается: вы создаете две страницы, разница которых будет заключаться только в цвете кнопки “оформления заказа”. Затем вы, случайным образом, половине посетителей сайта показываете страницу №1, а другой половине — страницу №2. В результате, на одной из страниц, пользователи нажмут кнопку оформления заказа больше, чем тоже самое количество других пользователей на другой странице.
Следует ли из этого, что цвет кнопки влияет на количество оформленных заказов? Давайте проведём мысленный эксперимент. У нас будет две команды, по пять человек в каждой. Одна команда будет в красных футболках, другая — в синих. Каждый член команды будет подбрасывать монетку и записывать что выпало: орёл или решка. Пусть каждый подбросит монетку, скажем, три раза. После, посчитаем количество полученных “орлов” для каждой из команд.
Мы увидим, что одна из команд набрала больше “орлов” чем другая. Можно ли сделать вывод, что цвет футболки определил победителя? Следует ли нам одевать красную (синию) футболку, когда мы собираемся зарабатывать больше “орлов”?
Читать полностью »
Магистрские образовательные программы кафедры ВПВ Университета ИТМО
2014-05-29 в 12:47, admin, рубрики: HPC, ИКТ, ИТМО BigData, Презентации, метки: BigData, HPC, ИКТ, итмоУважаемые читатели, абитуриенты-бакалавры, их родители, братья и сёстры!
Хочу сообщить вам о перспективных магистрских программах на нашей кафедре по направлению подготовки 010400 «Прикладные математика и информатика»! Подробности — под катом.
Google Photon. Обработка данных со скоростью света*
2013-12-26 в 22:00, admin, рубрики: big data, BigData, Google, photon, Realtime, высокая производительность, метки: BigData, Google, photon, RealtimePhoton – масштабируемая, отказоустойчивая и географически распределенная система обработки потоковых данных в режиме реального времени. Система является внутренним продуктом Google и используется в Google Advertising System. Research paper [5], описывающие базовые принципы и архитектуру Photon, был представлен на научной конференции ACM SIGMOD в 2013 году.
В paper [5] заявлено, что пиковая нагрузка на систему может составлять миллионы событий в минуту со средней end-to-end задержкой менее 10 секунд.
* 'Скорость света' в заголовке — наглая ложь гипербола.
Dremel. Как Google считает в real-time?
2013-12-25 в 20:46, admin, рубрики: big data, BigData, Google, Realtime, высокая производительность, метки: BigData, Google, RealtimeDremel – масштабируемая система обработки запросов в режиме близком к режиму реального времени (near-real-time), предназначенная для анализа неизменяемых данных [4].
Авторы research paper [4] (среди которых, судя по всему, и наши соотечественники — Сергей Мельник и Андрей Губарев), в котором описываются базовые принципы и архитектура Dremel, заявляют, что система в силах:
- выполнять агрегирующие запросы над боле чем над триллионом строк за секунды;
- масштабируется на тысячи CPU;
- предназначена для работы с петабайтами данных;
- имеет тысячи пользователей внутри Google (дословно «at Google» [4]).
ETL-процесс с использованием веб-сервисов в Integration Services 2012
2013-10-19 в 20:13, admin, рубрики: big data, BigData, Business Intelligence, c#.net, data mining, datamining, etl, MS Sql Server, SSIS, XML, метки: BigData, Business Intelligence, c#.net, datamining, etl, MS Sql Server, SSIS, XMLЗапасаем впрок
Иногда в процессе работы бывают нужны данные из веб-сервисов, тем более SOAP соединения сегодня практически стандарт.
ETL-процесс (Extract — Transform — Load) это термин из Business Intelligence и описывает процесс сбора и трансформации данных для создания аналитической базы данных (например хранилища данных).
SOAP протокол обмена данных и веб-сервисы описываемые WSDL — распространенные окна в мир практически всех ERP систем, многих онлайн порталов и финансовых организаций.
Попробую описать пошагово ETL процесс с помощью одного из мощнейших инструментов в классе — MS Integration Services.
Итак, рассмотрим тестовую задачу.
Задача
Необходимо собрать данные о курсах валют по отношению к рублю на каждую дату прошлого года и загрузить их в таблицу для последующего анализа. Центробанк России предоставляет историчекие данные — в виде веб сервисов с неплохим описанием.
Похоже это и есть решение.
Читать полностью »
Данные в MarkLogic Server [Part2]
2013-09-27 в 12:12, admin, рубрики: big data, BigData, data mining, nosql, XML, метки: BigData, data mining, nosql, XML Еще немного о том как MarkLogic Server хранит данные.
Читать полностью »
HBase, загрузка больших массивов данных через bulk load
2013-09-26 в 16:43, admin, рубрики: big data, BigData, Hadoop, java, метки: BigData, Hadoop, java Привет коллеги.
Хочу поделиться своим опытом использования HBase, а именно рассказать про bulk loading. Это еще один метод загрузки данных. Он принципиально отличается от обычного подхода (записи в таблицу через клиента). Есть мнение, что с помощью bulk load можно очень быстро загружать огромные массивы данных. Именно в этом я решил разобраться.
Читать полностью »
Изучаем Storm Framework. Часть III
2013-07-15 в 13:43, admin, рубрики: BigData, java, storm framework, параллельное программирование, метки: BigData, java, storm frameworkВо второй части статьи рассказывалось о механизмах обнаружения ошибок в процессе обработки.
Обработка завершилась с ошибкой, что делать дальше? Вполне возможно, что потеряна связь с одним из узлов кластера или временно недоступна база данных. В этом случае, нельзя с уверенностью сказать, какие операции выполнились успешно, а какие — нет. Если все операции в цепочке повторно применимы (идемпотентны), например установка флага, то можно просто перезапустить обработку. Если нет, то на помощь приходят механизмы транзакций Storm.
Читать полностью »
Изучаем Storm Framework. Часть II
2013-07-12 в 13:45, admin, рубрики: BigData, java, storm framework, параллельное программирование, метки: BigData, java, storm frameworkВ первой части рассматривались базовые понятия Storm.
Разные классы задач предъявляют различные требования к надежности. Одно дело пропустить пару записей при подсчете статистики посещений, где счет идет на сотни тысяч и особая точность не нужна. И совсем другое — потерять, например, информацию о платеже клиента.
Далее рассмотрим о механизмы защиты от потери данных, которые реализованы в Storm.
Читать полностью »