---
title: Хранилища
questionDates:
  q-transfer-0312: '2026-10-01'
  q-transfer-0313: '2026-10-01'
  q-transfer-0314: '2026-10-01'
  q-transfer-0315: '2026-10-01'
  q-transfer-0327: '2026-10-01'
seo:
  description: >-
    Тема «Хранилища» для собеседования Data Engineer. Был ли опыт работы с
    хранилищами? Какие существуют облачные хранилища?
  title: Хранилища — Data Engineer
---

[Все темы Data Engineer](/prep/data-engineer)

## <strong>Был ли опыт работы с хранилищами?</strong> [#q-14bee738d69b815e9a7df0ceaa3db6e8]

Опишите свой реальный опыт с хранилищами&#58; проектирование схем, загрузку, проверку качества данных или оптимизацию запросов. Укажите систему и свою ответственность. Если только изучали DWH, отделите теорию от практики.

:::note[Ссылки для изучения]

1. [Модели хранилищ данных: задачи, ограничения и критерии выбора](https://learn.microsoft.com/ru-ru/azure/architecture/data-guide/technology-choices/understand-data-store-models)
   :::

---

## <strong>Какие существуют облачные хранилища?</strong> [#q-14bee738d69b81a1ae33ed01312e791d]

Некоторые из популярных облачных хранилищ данных включают Amazon S3, Google Cloud Storage, Microsoft Azure Blob Storage, IBM Cloud Object Storage и Alibaba Cloud Object Storage. Эти облачные хранилища предоставляют масштабируемое и надежное хранилище для различных типов данных и приложений.

:::note[Ссылки для изучения]

1. [Облачное хранение: объектная, файловая, блочная модели и сервисы AWS](https://aws.amazon.com/ru/what-is/cloud-storage/)
   :::

---

## <strong>Какие типы хранилищ данных вы используете и для каких задач они подходят?</strong> [#q-14bee738d69b81539e85e005f33d6218]

Существует несколько типов хранилищ данных, которые используются для различных задач&#58;

{/* prettier-ignore */}
1. <strong>Реляционные базы данных (</strong><code>RDBMS</code><strong>)</strong>&#58;

    - Используются для транзакционных систем и аналитических запросов.

    - Примеры&#58; MySQL, PostgreSQL, Oracle.

1. <strong>NoSQL базы данных</strong>&#58;

    - Используются для хранения неструктурированных данных и больших объемов данных.

    - Примеры&#58; MongoDB, Cassandra, Redis.

1. <strong>Объектные хранилища данных</strong>&#58;

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

    - Примеры&#58; Amazon S3, Google Cloud Storage.

1. <strong>Колонковые базы данных</strong>&#58;

    - Используются для аналитики и обработки больших объемов данных с высоким соотношением чтения к записи.

    - Пример аналитической колонковой СУБД&#58; Amazon Redshift. HBase относится к wide-column/column-family хранилищам и имеет другую модель доступа.

1. <strong>Графовые базы данных</strong>&#58;

    - Используются для работы с графовыми структурами данных и сложными связями.

    - Примеры&#58; Neo4j, ArangoDB.

:::note[Ссылки для изучения]

1. [Модели хранилищ данных: задачи, ограничения и критерии выбора](https://learn.microsoft.com/ru-ru/azure/architecture/data-guide/technology-choices/understand-data-store-models)
   :::

---

## <strong>Как вы выбираете подходящее хранилище данных для конкретного проекта?</strong> [#q-14bee738d69b81358b78dc85c580d292]

При выборе подходящего хранилища данных для конкретного проекта учитываются следующие факторы&#58;

{/* prettier-ignore */}
1. <strong>Тип данных</strong>&#58;

    - Анализируются структурированные, полуструктурированные или неструктурированные данные.

1. <strong>Объем данных</strong>&#58;

    - Учитывается текущий и прогнозируемый объем данных.

1. <strong>Производительность</strong>&#58;

    - Требования к скорости чтения и записи данных.

1. <strong>Масштабируемость</strong>&#58;

    - Возможность горизонтального и вертикального масштабирования.

1. <strong>Сложность запросов</strong>&#58;

    - Анализируются требования к аналитическим запросам и транзакциям.

1. <strong>Стоимость</strong>&#58;

    - Оцениваются затраты на внедрение и эксплуатацию хранилища данных.

1. <strong>Безопасность</strong>&#58;

    - Учитываются требования к защите данных и соответствию нормативным требованиям.

:::note[Ссылки для изучения]

1. [Модели хранилищ данных: задачи, ограничения и критерии выбора](https://learn.microsoft.com/ru-ru/azure/architecture/data-guide/technology-choices/understand-data-store-models)
   :::

---

## <strong>Объясните различия между объектными, блочными и файловыми хранилищами.</strong> [#q-14bee738d69b819d9cb8fd39f472dbd1]

Основные различия между объектными, блочными и файловыми хранилищами&#58;

{/* prettier-ignore */}
1. <strong>Объектные хранилища</strong>&#58;

    - Хранят данные в виде объектов с уникальными идентификаторами.

    - Подходят для хранения неструктурированных данных, таких как мультимедиа и архивы.

    - Примеры&#58; Amazon S3, Google Cloud Storage.

1. <strong>Блочные хранилища</strong>&#58;

    - Хранят данные в виде блоков фиксированного размера.

    - Используются для хранения данных, требующих высокой производительности и низкой задержки.

    - Примеры&#58; SAN, SSD.

1. <strong>Файловые хранилища</strong>&#58;

    - Хранят данные в виде файлов и папок.

    - Используются для совместного доступа к файлам и управления файловыми системами.

    - Примеры&#58; NFS, SMB.

:::note[Ссылки для изучения]

1. [Облачное хранение: объектная, файловая, блочная модели и сервисы AWS](https://aws.amazon.com/ru/what-is/cloud-storage/)
   :::

---

## Когда выбрать Hive вместо PostgreSQL? [#q-transfer-0312]

PostgreSQL выбирают для OLTP, ограничений, транзакций, частых точечных чтений и updates с малой задержкой. Hive является SQL-слоем и каталогом над распределенными файлами; запрос исполняет движок вроде Tez или Spark, поэтому он подходит большим batch-сканам и append-oriented данным, но не интерактивной записи строк. Современные lakehouse engines размывают границу, поэтому сравнивают workload, latency, concurrency и стоимость. Выбор подтверждают главным workload, требованиями к задержке, обновлениям, совместимости схемы и стоимости хранения.

:::note[Ссылки для изучения]

1. [Hive: аналитические запросы, пакетная обработка и таблицы над файлами](https://learn.microsoft.com/ru-ru/azure/hdinsight/hadoop/hdinsight-use-hive)
1. [PostgreSQL: транзакционная целостность, внешние ключи и конкурентный доступ](https://postgrespro.ru/docs/postgresql/18/intro-whatis)
   :::

---

## Что хранит Hive Metastore? [#q-transfer-0313]

Hive Metastore хранит metadata databases и tables: колонки, partition keys и partitions, location, file format, SerDe и свойства. Физические строки остаются в HDFS, S3 или другом storage. Spark, Hive и другие совместимые движки используют каталог для планирования. Доступность и согласованность Metastore критичны; изменение файлов мимо каталога может оставить устаревший список партиций. Выбор подтверждают главным workload, требованиями к задержке, обновлениям, совместимости схемы и стоимости хранения.

:::note[Ссылки для изучения]

1. [Hive Metastore: метаданные таблиц и отделение каталога от файлов данных](https://docs.cedrusdata.ru/latest/guide/data-lakes-hms-setup.html)
   :::

---

## Что должен хранить каталог метаданных data-платформы? [#q-transfer-0314]

Каталог должен связывать техническую схему и location с бизнес-описанием, grain, владельцем и SLA. Нужны версии, partitions, классификация чувствительности, lineage до источников и потребителей, freshness и результаты quality checks. История изменений и аудит показывают актуальность metadata. API и поиск позволяют инструментам и людям читать один контракт; каталог без процесса ownership быстро превращается в устаревший список таблиц. Выбор подтверждают главным workload, требованиями к задержке, обновлениям, совместимости схемы и стоимости хранения.

:::note[Ссылки для изучения]

1. [Каталог данных: описания, владельцы, lineage, SLA и процессы обновления](https://habr.com/ru/companies/vktech/articles/1054554/)
   :::

---

## Как выбрать между Parquet, ORC, Avro и JSON? [#q-transfer-0315]

Parquet и ORC колоночные: подходят аналитике, projection и predicate pushdown, хорошо сжимают однородные столбцы. Avro строковый бинарный формат со схемой, удобный для событий и последовательного чтения. JSON читаем человеком и широко совместим, но объемен и слабо типизирован. Выбор учитывает schema evolution, splittability, поддержку движком, размер файлов и главный паттерн чтения, а не только compression ratio. Выбор подтверждают главным workload, требованиями к задержке, обновлениям, совместимости схемы и стоимости хранения.

:::note[Ссылки для изучения]

1. [Выбор Avro, Parquet и ORC по характеру чтения и записи](https://learn.microsoft.com/ru-ru/azure/well-architected/cost-optimization/optimize-data-costs#optimize-file-formats)
1. [JSON и Avro: читаемость, размер сообщений и эволюция схемы](https://learn.microsoft.com/ru-ru/azure/architecture/best-practices/message-encode)
   :::

---

## Как выбрать кодек сжатия для data lake? [#q-transfer-0327]

Кодек выбирают вместе с форматом и workload. Snappy и LZ4 обычно дают быстрое чтение при умеренном сжатии, gzip сильнее сжимает, но дороже CPU и отдельный gzip-файл плохо делится, Zstandard дает настраиваемый компромисс при поддержке движком. Для Parquet/ORC splittability обеспечивается структурой файла. Решение принимают benchmark на своих колонках, учитывая размер, scan time, CPU и совместимость всех readers. Выбор подтверждают главным workload, требованиями к задержке, обновлениям, совместимости схемы и стоимости хранения.

:::note[Ссылки для изучения]

1. [Выбор кодека: объём, скорость и CPU на примере ZSTD, LZ4 и ZLIB в Tarantool](https://habr.com/ru/companies/vk/articles/672760/)
   :::
