Кратко:
- Метаданные объекта в хранилище представляют собой сведения о его свойствах.
- Метаданные делятся на пользовательские и системные.
- Системные метаданные устанавливаются сервисом, пользовательские добавляются и изменяются пользователем.
- Метаданные используются для сортировки, анализа и поиска объектов.
- Пользовательские метаданные передаются в хранилище при загрузке объекта в HTTP-заголовках.
- Имена пользовательских метаданных могут быть указаны в разных регистрах, но после загрузки в хранилище они становятся строчными.
- Пользовательские метаданные могут быть добавлены или изменены.
Метаданные
Date: Fri, 5 Mar 2021 14:00:00 GMT
Метаданные бывают пользовательскими (их имена и значения вы добавляете и меняете сами) и системными (их устанавливает сервис). Например, дата создания или последнего изменения объекта, его размер, MD5-хеш — это системные метаданные.
x-amz-meta-:PUT /images/image0349.dat HTTP/1.1
Host: hospital.storage.yandexcloud.net
Content-Length: 1403256
Date: Sat, 20 Mar 2021 14:15:02 GMT
Authorization: *...*
x-amz-meta-Patient-Surname: Petrov
x-amz-meta-Patient-ID: 4536
*...*
При запросе объекта сервис возвращает метаданные в виде таких же HTTP-заголовков с префиксом x-amz-meta-:
HTTP/1.1 200 OK
Server: nginx
Date: Tue, 23 Mar 2021 10:12:15 GMT
Content-Type: image/dat
Content-Length: 1403256
Connection: keep-alive
Keep-Alive: timeout=60
Accept-Ranges: bytes
Last-Modified: Sat, 20 Mar 2021 14:15:02 GMT
x-amz-meta-patient-surname: Petrov
x-amz-meta-patient-id: 4536
...
Важно! До загрузки вы можете указывать имена метаданных объекта и прописными, и строчными буквами (хоть ABC, хоть abc). Однако после загрузки в хранилище они станут строчными (только abc). Таким образом, хранилище посчитает метаданные с именами Patient-ID и patient-id одинаковыми.
- Категория: Cloud Services Engineer
- Просмотров: 623
Кратко:
- Объектное хранилище - облачная система хранения данных произвольного формата, подходящая для хранения видеозаписей, изображений, архивов и резервных копий.
- Объектное хранилище обеспечивает доступность данных, их защиту от несанкционированного доступа и масштабируемость.
- Идентификатор объекта - строка, используемая для идентификации объектов в хранилище, а метаданные содержат дополнительные сведения.
- Объекты в хранилище группируются в бакеты, что позволяет разделять данные разных проектов или пользователей.
- Объектные хранилища имеют некоторые особенности, такие как взаимодействие с приложениями через HTTP API и невозможность редактирования объектов.
- В Yandex Cloud доступны три класса хранилищ: стандартное, холодное и ледяное, с разными тарифами на хранение и обращение к данным.
- S3-совместимость позволяет использовать популярные инструменты для работы с S3-протоколом, такие как S3cmd, AWS CLI, Cyberduck, WinSCP, SDK для Python и Java.
- Объектное хранилище имеет преимущества, такие как масштабируемость, высокую производительность, отказоустойчивость, метаданные и низкую стоимость хранения данных.
Object Storage и S3-совместимые хранилища
- никуда не пропадут;
- доступны (в идеале — отовсюду, где есть интернет);
- недоступны для тех, с кем мы не собирались делиться данными;
- находятся в системе хранения, которую просто расширить.
/ как разделитель. Например, archive/2020/ivanov/x-ray.jpg. Благодаря этому файловые браузеры при работе с объектами имитируют привычное нам дерево папок. В консоли управления Yandex Cloud тоже есть такая возможность — части пути называются папками. Но важно понимать: на самом деле иерархии в объектном хранилище нет, оно плоское. За счет плоскости достигается большая скорость поиска по сравнению с файловой системой.
- они рассчитаны, прежде всего, на взаимодействие с приложениями через HTTP API, а не напрямую с пользователем;
-
объекты в них не редактируются. Чтобы изменить объект, придётся загрузить в хранилище новую версию. Это неудобно, если объекты большие или часто изменяются.
Класс хранилища
S3-совместимость
Возможности и преимущества объектного хранилища
- масштабируемость: размер системы архитектурно не ограничен, она может содержать любой объём данных;
- более высокая производительность при управлении большими объёмами данных по сравнению с иерархическими файловыми системами;
- отказоустойчивость: копии данных хранятся в нескольких географически распределённых дата-центрах;
- метаданные, позволяющие искать, сортировать и анализировать неструктурированные данные;
- невысокая стоимость хранения данных.
- Категория: Cloud Services Engineer
- Просмотров: 917
Кратко:
- Универсальной базы данных не существует, выбор зависит от задачи.
- На выбор базы данных влияют особенности задачи, предпочтения разработчика.
- Факторы для выбора базы данных: масштабируемость, структура данных, необходимость транзакций, сложность аналитических запросов, работа под смешанной нагрузкой.
- Управляемые базы данных имеют преимущества перед традиционными базами данных.
Выбор базы данных

- возможность легко масштабировать систему;
- структура данных — если вы планируете активно развивать свое приложение, то она вряд ли будет жёсткой;
- необходимость реализации транзакций;
- отсутствие (или очень небольшое число) сложных аналитических запросов;
- работа под смешанной нагрузкой.
Поздравляем, вы завершили тему «Об управляемых базах данных»
- Категория: Cloud Services Engineer
- Просмотров: 610
Кратко:
- Нереляционные (NoSQL) базы данных обеспечивают высокую доступность, быстроту работы и масштабируемость.
- MongoDB - популярная NoSQL СУБД с открытым исходным кодом, работает с документами и хорошо сочетается с JavaScript.
- Redis - хранилище данных типа key-value, работает с Lua скриптами, обеспечивает высокую производительность, но имеет ограничения.
- ClickHouse - столбцовая СУБД, хранит данные в таблицах, имеет высокую скорость работы, но не поддерживает транзакции.
- Elasticsearch - нереляционное хранилище данных, хорошо масштабируется, но не обеспечивает транзакционную целостность.
- YDB - разработанная Яндексом распределенная СУБД, основана на реляционной модели, обеспечивает отказоустойчивость и масштабируемость.
- Apache Kafka - распределенная стриминговая платформа, обеспечивает надежность передачи данных между сервисами.
Нереляционные базы данных
MongoDB

Redis
ClickHouse

Elasticsearch
YDB
Apache Kafka
Правильный ответ - ClickHouse
- Категория: Cloud Services Engineer
- Просмотров: 856
Кратко:
- В 2020 году каждый день генерировалось около 2,5 эксабайта данных.
- БД позволяет сохранять данные, извлекать из них те, которые нужны, и передавать пользователю.
- БД разделяют на реляционные и нереляционные.
- Реляционная БД - это набор таблиц и связей между ними.
- Для работы с реляционными БД используется SQL.
- В сервисах Yandex Cloud представлены популярные реляционные СУБД MySQL и PostgreSQL.
- Реляционные БД не всегда являются лучшим инструментом.
Реляционные базы данных

MySQL
PostgreSQL
- нестабильно работают при смешанной нагрузке, когда операции чтения и записи соотносятся примерно 1 : 1;
- плохо масштабируются;
- данные не всегда укладываются в жёсткую структуру таблицы (пример: медицинские карты пациентов поликлиники).
- Категория: Cloud Services Engineer
- Просмотров: 635