Рубрика «Aerospike»

TL;DR: GitHub://PastorGL/AQLSelectEx.

Aerospike AQL SELECT

Однажды, ещё не в студёную, но уже зимнюю пору, а конкретно пару месяцев назад, для проекта, над которым я работаю (нечто Geospatial на основе Big Data), потребовалось быстрое NoSQL / Key-Value хранилище.

Терабайты исходников мы вполне успешно прожёвываем при помощи Apache Spark, но схлопнутый до смешного объёма (всего лишь миллионы записей) конечный результат расчётов надо где-то хранить. И очень желательно хранить таким образом, чтобы его можно было по ассоциированным с каждой строкой результата (это одна цифра) метаданным (а вот их довольно много) быстро найти и отдать наружу.

Читать полностью »

Про аналитику и серебряные пули или «При чем здесь Рамблер-топ-100?» - 1

Всем привет! Я тимлид проекта Рамблер/топ-100. Это лонгрид о том, как мы проектировали архитектуру обновлённого сервиса веб-аналитики, с какими сложностями столкнулись по пути и как с ними боролись. Если вам интересны такие базворды как ClickhouseAerospikeSpark, добро пожаловать под кат.Читать полностью »

Разбор задания Anonymizer (пока еще доступно тут) с PHDays HackQuest 2017.

[PHDays HackQuest 2017] Anonymizer: SSRF или чем может быть опасен curl - 1

Читать полностью »

Работа с Aerospike на scala при помощи магии макросов

N|Solid

В нашем отделе бигдаты часть данных хранится в Aerospike. Потребителей довольно много, среди них два приложения, написанных на Scala, взаимодействие с базой в которых будет расширено в связи с постоянно растущими требованиями бизнеса. Единственным приличным драйвером для нас был джавовый клиент, упомянутый на сайте самой базы данных aerospike.com (http://www.aearospike.com/docs/client/java). Конвертация скаловых типов данных (а особенно иерархических) в соответствующие аэроспайковские типы приводит к большому количеству бойлерплейта. Чтобы этого избежать, необходим более удобный, а заодно и типобезопасный интерфейс.

Инженеры не любят писать много раз один и тот же код и стараются упростить и оптимизировать все повторяющиеся действия. Такие задачи часто решает кодогенерация. Поэтому мы решили написать свою библиотеку для работы с Aerospike, пользуясь макросами.

Читать полностью »

Чтобы показывать вам рекламу — мы в GetIntent должны быть уверены в устойчивой и безотказной работе нашей рекламной платформы. Надежность системы складывается из многих компонентов: тип используемого железа, системная/сетевая конфигурация и архитектура приложения. Внесение изменений в достаточно сложные, распределенные приложения всегда несет в себе риск.
Разработчики со своей стороны пытаются минимизировать эти риски и пишут тесты: unit и интеграционные. Написание unit тестов обычно не составляет каких-либо трудностей. С интеграционными тестами, в зависимости от их изощренности, ситуация сложнее.

Как нам помог Docker в написании тестов - 1

Читать полностью »

Всем привет!

Сегодня мы расскажем о том, как с помощью потоковой обработки данных можно увеличить качество рекомендаций и снизить время отклика всей рекомендательной системы в 5 раз. Речь пойдет об одном из наших клиентов – сервисе потокового видео Rutube.

Рекомендации на потоке - 1
Читать полностью »

Дизайн лёгкой многоразовой ракеты носителя Firefly Alpha

Стартап FireFly Space Systems официально анонсировал свою первую ракету-носитель Firefly α. Хотя маленькая компания только в январе получила финансирование, а в штате всего 25 человек, но опыт последних лет показывает, что небольшие частные компании вполне справляются с разработкой даже таких сложных технических изделий. В FireFly Space Systems работают опытные инженеры, пришедшие из SpaceX, Blue Origin и Virgin Galactic.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js