ABAC

Разграничение доступа на основе атрибутов (Attribute-Based Access Control, ABAC) — модель контроля доступа к объектам, основанная на анализе правил для атрибутов объектов или субъектов, возможных операций с ними и окружения, соответствующего запросу. Системы управления доступом на основе атрибутов обеспечивают мандатное и избирательное управление доступом. Рассматриваемый вид разграничения доступа дает возможность создать огромное количество комбинаций условий для выражения различных политик.    Оригинал определения  Разграничение доступа на основе атрибутов (Attribute-Based Access Control, ABAC)

Agile

все об Agile

Agile – набор методов и практик для гибкого управления проектами в разных прикладных областях, от разработки ПО до реализации маркетинговых стратегий, с целью повышения скорости создания готовых продуктов и минимизации рисков за счет итерационного выполнения, интерактивного взаимодействия членов команды и быстрой реакцией на изменения. История зарождения Agile Изначально термин Agile относился к ИТ-индустрии и употреблялся в контексте гибких методологий разработки программного обеспечения: экстремального программирования (XP), Crystal Clear, DSDM, Feature driven development (FDD), Scrum, Adaptive software development, Pragmatic Programming, быстрая разработка приложений (RAD) и других адаптивных методов, суть которых состоит в ускорении процессов создания продукта путем микропланирования, коротких производственных циклов и оперативного реагирования на изменения. Ключевой смысл этих Agile-практик отражен в манифесте гибкой разработки программного обеспечения (Agile Manifesto), который был выпущен Далее …

Apache AirFlow

Что такое AirFlow

Apache AirFlow — это инструмент, который позволяет разрабатывать, планировать и осуществлять мониторинг сложных рабочих процессов. Главной особенностью является то, что для описания процессов используется язык программирования Python. Apache Airflow используется как планировщик ETL/ELT-процессов. Основные сущности рабочего процесса на Apache Airflow: Направленные ациклические графы (DAG) Планировщик (Scheduler) Операторы (Operators) Задачи (Tasks) Подробнее о том, как используется AirFlow на практике, мы рассказываем в отдельной статье на примере реальных кейсов из Mail.ru, онлайн-кинотеатра IVI и маркетплейса одежды и аксессуаров Lamoda. Курс Apache AirFlow Что такое AirFlow?

Arenadata

ArenaData Hadoop, ArenaData DB, ArenaData Streaming, АренаДата продукты, Big Data

Arenadata — российская ИТ-компания, разработчик первых отечественных Big Data решений, основанных на свободном программном обеспечении с открытым исходным кодом без использования проприетарных компонентов: Arenadata Hadoop (ADH) – полноценный дистрибутив распределенной платформы хранения больших данных на базе Apache Hadoop, адаптированный для корпоративного использования и зарегистрированный в государственном реестре программ для ЭВМ; Arenadata DB (ADB) – распределенная масштабируемая отказоустойчивая СУБД на базе аналитической массивно-параллельной системы с открытым исходным кодом Greenplum, адаптированная для российского использования и зарегистрированная в государственном реестре программ для ЭВМ; Arenadata Streaming (ADS) – эффективное масштабируемое отказоустойчивое решение для потоковой обработки данных в режиме реального времени, зарегистрированное в государственном реестре программ для ЭВМ, адаптированное для корпоративного использования и построенное на базе проектов с открытым исходным кодом – Apache Kafka и Apache Nifi. Arenadata Cluster Manager (ADCM) — платформа для эффективного Далее …

AVRO

Apache Avro

Avro – это линейно-ориентированный (строчный) формат хранения файлов Big Data, активно применяемый в экосистеме Apache Hadoop и широко используемый в качестве платформы сериализации. Как устроен формат Avro для файлов Big Data: структура и принцип работы Avro сохраняет схему в независимом от реализации текстовом формате JSON (JavaScript Object Notation), что облегчает ее чтение и интерпретацию как программами, так и человеком [1]. Файл Авро состоит из заголовка и блоков данных. Заголовок содержит: 4 байта, ASCII ‘O’, ‘b’, ‘j’, далее 1. метаданные файла, содержащие схему – структуру представления данных. 16-байтное случайное число — маркер файла. Для блоков данных Avro может использовать компактную бинарную кодировку или человекочитаемый формат JSON, удобный для отладки. В отличие от многих других форматов Big Data, столбцовых (RCFile, Apache ORC и Далее …

Big Data

Big Data (Большие данные) Big Data — данные большого объема, высокой скорости накопления или изменения и/или разновариантные информационные активы, которые требуют экономически эффективных, инновационных формы обработки данных, которые позволяют получить расширенное  понимание информации, способствующее принятию решений и автоматизации процессов. Для каждой организации или компании существует предел объема данных (Volume) которые компания или организация способна обрабатывать одновременно для целей аналитики, как правило этот объем ограничен объемами оперативной памяти серверов корпоративных приложений и баз данных и необходимостью партиционирования (Partitioning)  хранимых данных. Для каждой организации или компании существуют физические ограничения на количество транзакций/ объем данных (Velocity) , которая корпоративныя система может обработать или передать за единицу времени вследствии ограничений scale in архитектуры.  Традиционные корпоративные системы (реляционные) могут использовать эффективно только структурированные источники поступления Далее …

CAP

Big Data, Большие данные, NoSQL, SQL, HBase, Cassandra, архитектура

CAP – это акроним от англоязычных слов Consistency (Согласованность, Целостность), Availability (Доступность) и Partition tolerance (Устойчивость к разделению). Согласно утверждению профессора Калифорнийского университета в Беркли, Эрика Брюера, сделанному в 2000-м году, в распределенных системах осуществимы лишь 2 свойства из указанных 3-х. В частности, считается что нереляционные базы данных жертвуют согласованностью данных в пользу доступности и устойчивости к разделению, когда расщепление распределённой системы на несколько изолированных частей сохраняет корректный отклик от каждой из них [1]. В 2002 году Сет Гилберт и Нэнси Линч из MIT опубликовали формальное доказательство гипотезы Брюера, после чего она стала считаться теоремой [2]. Классы NoSQL-СУБД с точки зрения CAP-теоремы и их значимость для Big Data По аналогии с железным треугольником проектного менеджмента, когда требуется найти баланс между сроками, затратами Далее …

Case Based Reasoning (CBR)

Case Based Reasoning (CBR) — метод решения проблем рассуждением по аналогии, путем предположения на основе подобных случаев (прецедентов). Это способ решения проблем на основе уже известных решений, который широко применяется во всех областях деятельности. Например, в бизнес-аналитике такое сопоставление с эталоном, целенаправленный поиск и внедрение лучших практик со стороны называется бенчмаркингом (Benchmarking) [1]. В Data Mining CBR-подход реализуется в виде методов решения новых задач на основе анализа предыдущего опыта. В частности, в Data Science именно так искусственные нейронные сети (частный случай машинного обучения, Machine Learning) вычисляют результат, вспоминая предыдущие подобные ситуации и повторно используя знания из подобных ситуаций [2]. Таким образом, можно сказать, что Case Based Reasoning — это наиболее распространенный подход к решению проблем, который применим не только к Далее …

Cassandra

Big Data, Большие данные, архитектура, обработка данных, NoSQL, SQL, Cassandra

Apache Cassandra – это нереляционная отказоустойчивая распределенная СУБД, рассчитанная на создание высокомасштабируемых и надёжных хранилищ огромных массивов данных, представленных в виде хэша. Проект был разработан на языке Java в корпорации Facebook в 2008 году, и передан фонду Apache Software Foundation в 2009 [1]. Эта СУБД относится к гибридным NoSQL-решениям, поскольку она сочетает модель хранения данных на базе семейства столбцов (ColumnFamily) с концепцией key-value (ключ-значение) [2]. Модель данных Apache Cassandra Модель данных Cassandra состоит из следующих элементов [3]: столбец или колонка (column) – ячейка с данными, включающая 3 части – имя (column name) в виде массива байтов, метку времени (timestamp) и само значение (value) также в виде байтового массива. С каждым значением связана метка времени — задаваемое пользователем 64-битное число, которое используется Далее …

Churn Rate

Churn Rate (уровень оттока клиентов) — индикатор, показывающий процент пользователей, которые перестали пользоваться приложением (сервисом) или перестали быть вашим клиентом  в течение рассматриваемого периода. Для уменьшения оттока клиентов используют таргетированные маркетинговые кампании для удержания клиентов с помощью персональных бонусов, скидок и предложения. Для успешной компании уровень оттока клиентов (Churn Rate) должен быть ниже уровня притока новых клиентов (Growth Rate). Удержание существующих клиентов как правило обходится на 60-70% дешевле чем привлечение новых.   Для уменьшения показателя Churn Rate принимают следующие меры: Программы лояльности для маркетинговых кампаний  и персонализированных  таргетированных скидок Поддержка существующих клиентов для улучшения пользовательского опыта и удержания постоянных клиентов Качественный сервис Рассчитывается как: Churn Rate = (Кол-во ушедших пользователей / Общее количество пользователей) * 100% Низкий отток увеличивает другую важную для бизнеса Далее …

ClickHouse

Big Data, Большие данные, обработка данных, архитектура, SQL, ClickHouse, DWH

Полная история разработки, архитектура и принципы работы, достоинства и недостатки, а также примеры использования ClickHouse в Big Data проектах

Cloudera

Cloudera CDH (Cloudera’s Distribution including Apache Hadoop) — дистрибутив Apache Hadoop с набором программ, библиотек и утилит, разработанных компанией Cloudera для больших данных (Big Data) и машинного обучения (Machine Learning), бесплатно распространяемый и коммерчески поддерживаемый для некоторых Linux-систем (Red Hat, CentOS, Ubuntu, SuSE SLES, Debian) [1]. Состав и архитектура Клаудера CDH Помимо классического Hadoop от Apache Software Foundation, состоящего из 4-х основных модулей (HDFS, MapReduce, Yarn и Hadoop Common), CDH также содержит дополнительные решения Apache для работы с большими данными и машинным обучением: инструменты для управления потоками данных (Flume, Sqoop); фреймворки распределённой и потоковой обработки, а также брокеры сообщений (Spark, Kafka) СУБД для Big Data аналитики (HBase, Hive, Impala); высокоуровневый процедурный язык для выполнения запросов к большим слабоструктурированным наборам данных Далее …

CRISP-DM

CRISP-DM, обработка данных, Big Data, Большие данные, жизненный цикл, Machine Learning, машинное обучение

CRISP-DM (от английского Cross-Industry Standard Process for Data Mining) — межотраслевой стандартный процесс исследования данных. Это проверенная в промышленности и наиболее распространённая методология, первая версия которой была представлена в Брюсселе в марте 1999 года, а пошаговая инструкция опубликована в 2000 году [1]. CRISP-DM описывает жизненный цикл исследования данных, состоящий из 6 фаз, от постановки задачи с точки зрения бизнеса до внедрения технического решения. Последовательность между фазами определена не строго, переходы могут повторяться от итерации к итерации [1]. Все фазы CRISP-DM делятся на задачи, по итогам каждой должен быть достигнут конкретный результат [2]. Рассмотрим подробнее фазы жизненного цикла исследования данных по CRISP-DM [3]: Понимание бизнеса (Business Understanding) – определение целей проекта и требований со стороны бизнеса. Затем эти знания конвертируются в Далее …

Data Lake

Data Lake (Озеро данных) — это метод хранения данных системой или репозиторием в натуральном (RAW) формате, который предполагает одновременное хранение данных в различных схемах и форматах. Обычно используется blob-объект (binary large object) или файл. Идея озера данных в том чтобы иметь логически определенное, единое хранилище всех данных в организации (enterprise data) начиная от сырых, необработанных исходных данных (RAW data) до предварительно обработанных (transformed) данных, которые используются для различных задач: отчеты, визуализация, аналитика и машинное обучение. Data Lake (озеро данных) включает структурированные данные из реляционных баз данных (строки и колонки), полуструктурированные данные (CSV, лог файлы, XML, JSON), неструктурированные данные (почтовые сообщения, документы, pdf) и даже бинарные данные (видео, аудио, графические файлы). Data Lake (озеро данных), кроме методов хранения и описания данных, предполагает Далее …

Data Mining

Data Mining — процесс поиска в сырых необработанных данных интересных, неизвестных, нетривиальных взаимосвязей и полезных знаний, позволяющих интерпретировать и применять результаты для принятия решений в любых сферах  человеческой деятельности. Представляет собой совокупность методов  визуализации, классификации, моделирования и прогнозирования, основанные на применении деревьев решений, искусственных нейронных сетей, генетических алгоритмов, эволюционного программирования, ассоциативной памяти, нечёткой логики.   Дополнительно о Data Mining на Википедии

data provenance

data provenance — происхождение данных

Data Science

Big Data, Большие данные, обработка данных, машинное обучение, Machine Learning

Data Science – это наука о данных, объединяющая разные области знаний: информатику, математику и системный анализ. Сюда входят методы обработки больших данных (Big Data), интеллектуального анализа данных (Data Mining), статистические методы, методы искусственного интеллекта, в т.ч машинное обучение (Machine Learning). DS включает методы проектирования и разработки баз данных и прикладного программного обеспечения [1]. Немного истории: как появилась Data Science и при чем тут большие данные В отличие от термина «большие данные», который стал популярен с 2010-х гг., наука о данных зародилась намного раньше, во второй половине 20-го века. Первое упоминание этого понятия датируется 1974 годом, когда вышла книга Петера Наура. В этой публикации Data Science определяется как дисциплина по изучению жизненного цикла цифровых данных, от момента их появления до преобразования Далее …

Dataframe

Dataframe — основная абстрация Apache Spark Dataframe — это аналог реляционной таблицы, которая хранится в распределенной памяти кластера обработки данных. Более точно — это не таблица, а алгоритм ее построения: все операции в Spark делятся на трансформации и действия, поэтому «построение» таблицы, как таковой, происходит только в момент выполнения действия (например, при записи dataframe в базу данных). Spark использует оптимизатор запросов, благодаря чему выполнение трансформаций происходит максимально эффективно. Особенно хорошо оптимизируются именно трансформации dataframe-ов, поэтому при использовании этого API (dataframe — часть так называемого Structured API) все языковые API одинаково эффективны (python, java, scala). Абстракции нижнего уровня — RDD — не позволяют достичь той же эффективности при использовании, например, языкового API для python. Рекомендация разработчиков Spark — в первую очередь Далее …

DevOps

DevOps (DEVelopment OPeration) девопс

DevOps (DEVelopment OPeration) – это набор практик для повышения эффективности процессов разработки (Development) и эксплуатации (Operation) программного обеспечения (ПО) за счет их непрерывной интеграции и активного взаимодействия профильных специалистов с помощью инструментов автоматизации. Девопс позиционируется как Agile-подход для устранения организационных и временных барьеров между командами разработчиков и других участников жизненного цикла ПО (тестировщиками, администраторами, техподдержкой), чтобы они могли быстрее и надежнее собирать, тестировать и выпускать релизы программных продуктов [1].  История появления Термин «DevOps» был популяризован серией встреч «DevOps Days», прошедших в 2009 году в Бельгии [2]. Одной из наиболее важных теоретических работ по DevOps считается книга Патрика Дюбуа, Джина Ким, Джеза Хамбл и Джона Уиллис «Руководство по DevOps. Как добиться гибкости, надежности и безопасности мирового уровня в технологических компаниях», впервые Далее …

Flink

Apache Flink, Apache Spark, Флинк, Спарк, Big Data, Большие данные

Apache Flink – это распределенная отказоустойчивая платформа обработки информации с открытым исходным кодом, используемая в высоконагруженных Big Data приложениях для анализа данных, хранящихся в кластерах Hadoop. Разработанный в 2010 году в Техническом университете Берлина в качестве альтернативы Hadoop MapReduce для распределенных вычислений больших наборов данных, Flink использует подход ориентированного графа, устраняя необходимость в отображении и сокращения [1]. Подобно Apache Spark, Flink имеет готовые коннекторы с Apache Kafka, Amazon Kinesis, HDFS, Cassandra, Google Cloud Platform и др., а также интегрируется со всеми основными системами управления кластерами: Hadoop YARN, Apache Mesos и Kubernetes. Кроме того, Флинк может использоваться в качестве основы автономного кластера [1]. Как устроен Apache Flink: архитектура и принцип работы Входные данные каждого потока Флинк берутся с одного или нескольких источников, например, из очереди сообщений Далее …