Ведущий разработчик программного обеспечения Иван Богатырев о хранении персональных данных в больших масштабах

По данным исследования InfoWatch, в 2022 году в России утекло более 667 млн записей с персональными данными - почти в три раза больше, чем в 2021. Эти цифры сильно подрывают репутацию компаний, так как пользователи ожидают ответственного отношения к их данным.

Иван Богатырев — успешный разработчик программного обеспечения с 11-летним опытом работы в крупных технологических компаниях в России и за рубежом таких как Uber, одной из FAANG (Facebook *, Amazon, Apple, Netflix и Google) и Yandex. Он имеет опыт работы с различными системами хранения данных. Несмотря на то, что Иван занимал должность руководителя службы разработки в Яндексе, он предпочитает оставаться в роли инженера-эксперта.

Иван специализируется на микросервисной архитектуре и создании масштабируемых серверных приложений. Кроме того, у него многолетний практический опыт работы с экосистемой JVM. Он свободно владеет многими языками программирования, такими как C++, Python, Go и PHP/Hack. Несмотря на свою специализацию, Иван изучает новые языки и технологии, особенно если это необходимо для проекта. Он рассказал о том как успешно решал задачу хранения персональных данных в огромных масштабах. А также какие новаторские подходы придумал и опубликовал под открытой лицензией.

Иван, вы специализируетесь на персональных данных. Расскажите, пожалуйста, о них подробнее: что они из себя представляют?

Идентифицирующие пользователя или персональные данные — это информация, которая по отдельности или в совокупности может идентифицировать человека. Сюда входят, например, полные имена, адреса, номера телефонов, адреса электронной почты, идентификационный номер налогоплательщика, дата рождения, биометрические данные, IP-адреса, учетные данные для входа в различные системы (логин/пароль), финансовые данные, медицинские записи, информация о трудоустройстве и образовании, данные о местонахождении, веб-файлы cookie, профили в социальных сетях и конкретные демографические данные, такие как пол и этническая принадлежность. Это ни в коем случае не исчерпывающий список, так как категоризация данных как «личных», так и «идентифицирующих» может меняться в зависимости от правовой юрисдикции и особенностей обработки и объединения данных.

Расскажите в чем важность правильного хранения персональных данных?

Крупные технологические компании отдают большое внимание правильному хранению пользовательских данных, поскольку это оказывает огромное влияние на доверие и репутацию; пользователи ожидают ответственного обращения с данными, и любое нарушение может подорвать доверие к бренду. В то же время строгие правила, такие как федеральный закон № 152-ФЗ в России, GDPR в Евросоюзе и CCPA в США (штат Калифорния), требуют надежной защиты данных, а несоблюдение влечет за собой значительные штрафы.

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

В конечном счете, это многогранная необходимость, объединяющая юридические, этические и деловые проблемы, обеспечивающая постоянную надежность и успех крупных технологий.

Иван, какие лучшие практики по хранению персональных данных вы можете выделить?

Сбор и обработка персональных данных требует соблюдения законодательства, технологической безопасности и этических норм. Начиная с самого главного – получения согласия от пользователей, гарантируя, что они знают, какие данные собираются и как они используются. Данные следует получать только по мере необходимости и хранить только в течение периода, необходимого для их предполагаемой цели. Крайне важно использовать надежные методы шифрования, поддерживать строгий контроль доступа и регулярно обновлять системы обработки данных на всех уровнях (снижая риск эксплуатации уязвимостей). Постоянное обучение персонала вопросам защиты данных и конфиденциальности имеет решающее значение, равно как и проверка сторонних партнеров. Прежде чем развертывать новые инструменты или услуги, необходимо учесть потенциальное влияние на конфиденциальность и защиту данных. В случае возникновения каких-либо проблем жизненно важное значение имеет хорошо подготовленный план реагирования на инциденты. Регулярные проверки обеспечивают постоянное соблюдение требований, а прозрачный механизм обратной связи с пользователями повышает доверие. Залогом успеха для крупных технологических компаний является приоритетное внимание к этическим соображениям и искреннее уважение конфиденциальности пользователей.

Нашим читателям будет интересно узнать о примерах вашей работы в одной из FAANG компаний, где вы сталкивались со сложностями сбора и обработки большого объема персональной информации. Можете поделиться?

Да, конечно. Все верно. В одной из FAANG компаний я занимался созданием платформы сбора данных в масштабе терабайты/секунду. Упор был именно на инфраструктуру, связанную с хранением персональных данных. Платформу сбора данных составляют многочисленные разнородные сервисы, такие как хранилища данных и различные системы реального времени. Все они обмениваются между собой большими объемами данных при взаимодействии через интерфейсы (API).

Будучи разработчиком, в роли технического лидера команды я был ответственным за входную точку для сохранения всех аналитических событий компании, известной во всем мире своими социальными сервисами.

Как долго можно хранить персональные данные? Как удалять персональные данные в большом масштабе?

Это зависит от ситуации – политики компании и местного законодательства. Обычно, данные, идентифицирующие пользователя (собираемые только с согласия пользователя), не могут храниться бесконечно и, следовательно, использоваться по истечении определенного времени. Удаление данных на таком большом масштабе может оказаться дорогостоящим, так требует большого количества вычислительных ресурсов. Чтобы решить эту проблему, мной была разработана процедура замены информации об идентификаторе пользователя обезличенным идентификатором. Я сравнил несколько вариантов решения проблемы и выбрал наиболее масштабируемый и расширяемый. Затем я создал автоматизацию для миграции существующих данных для всех задействованных наборов данных и уведомил внутренних потребителей.

Расскажите подробнее, как и где лучше хранить правила анонимизации данных?

Чем ближе к схеме данных, тем лучше. В одной из FAANG компаний, я возглавлял проект по созданию политик анонимизации на уровне схемы данных в виде аннотаций в коде. Основной мотивацией этого было то, что механизм настройки политик вызывал сложности у внутренних пользователей и иногда по своей природе приводил к тому, что для некоторых типов данных политики анонимизации не соответствовали правилам. Таким образом, некоторые ценные данные могли исчезнуть или могли быть обработаны неправильны образом. Я разработал способ чтобы сделать это невозможным, включив аннотации анонимизации в схему данных. Также, я написал скрипт миграции уже существующих правил в пользовательском интерфейсе в виде аннотаций полей и сделал эти правила обязательными.

Что вы можете рассказать по поводу контроля доступа к персональным данных, на примере из вашей карьеры?

Для проекта социальной сети я разработал проект управления внутренним доступом к данным на уровне схемы данных. Цель заключалась в том, чтобы внести в схему данных определение прав доступа на уровне колонок (а не только таблицы как это было изначально) — это значительно расширило возможности задания прав доступа. Я также руководил миграцией — простановкой недостающих аннотаций на основе существующих правил (определенных в пользовательском интерфейсе).

Какой, по-вашему, самый эффективный способ хранения персональных данных и какие важные изменения, которые могут положительно повлиять на работу компании вы можете выделить?

Важно понимать, что если бы я не решил оперативно проблему с анонимизацией данных оперативно, это могло бы привести к нарушению внутренних правил или даже закона (GDPR и/или CCPA). Последнее могло стоить компании многомиллиардных штрафов, не говоря уже о репутационных рисках. В случае, когда инженер данных мог забыть установить корректное правило архивации, это могло приводить к потере данных или неправильной анонимизации. Обычно потеря данных в масштабах транснациональной компании приводит к значительной потере денег. Я разработал способ сделать это невозможным, включив правила анонимизации в схему данных, сэкономив тем самым компании много средств в будущем.

Переходя от теории к практике, вы работали над несколькими open-source-проектами по обработке данных, расскажите подробнее об этих проектах и в чем их отличительные черты?

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

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

Иван, вы не понаслышке знаете, что с данными необходимо обращаться с предельной осторожностью. Как вы видите будущее сферы хранения данных?

Я считаю, что будущее сферы хранения данных зависит от нескольких факторов. Одним из ключевых является развитие технологии искусственного интеллекта и машинного обучения, которые могут значительно улучшить процессы обработки и анализа данных. Еще одним важным фактором является повышение безопасности и конфиденциальности данных, чтобы обеспечить защиту личной информации пользователей. Также необходимо продолжать разрабатывать новые технологии хранения данных, такие как квантовые технологии и оптические системы хранения, чтобы увеличить емкость и скорость доступа к данным.

*признана экстремистской организацией и запрещена на территории РФ

Опубликовано 17.08.2023

Похожие статьи