vault backup: 2024-06-20 22:04:23

This commit is contained in:
Struchkov Mark 2024-06-20 22:04:23 +03:00
parent d90b7dea40
commit 59404219b9
No known key found for this signature in database
GPG Key ID: A3F0AC3F0FA52F3C
5 changed files with 35 additions and 18 deletions

View File

@ -24,12 +24,16 @@
"unresolvedLinks": false, "unresolvedLinks": false,
"recentFilesStore": [ "recentFilesStore": [
{ {
"filepath": "Партиционирование в БД.md", "filepath": "_inbox/Key Based Sharding.md",
"timestamp": 1718909771420 "timestamp": 1718910242721
}, },
{ {
"filepath": "_inbox/Шардирование в БД.md", "filepath": "_inbox/Шардирование в БД.md",
"timestamp": 1718909535878 "timestamp": 1718910222388
},
{
"filepath": "Партиционирование в БД.md",
"timestamp": 1718909771420
}, },
{ {
"filepath": "_inbox/Горизонтальное масштабирование.md", "filepath": "_inbox/Горизонтальное масштабирование.md",
@ -38,10 +42,6 @@
{ {
"filepath": "_inbox/Вертикальное масштабирование.md", "filepath": "_inbox/Вертикальное масштабирование.md",
"timestamp": 1718909525308 "timestamp": 1718909525308
},
{
"filepath": "_inbox/Шардирование - OTUS.md",
"timestamp": 1718908901467
} }
], ],
"bookmarkedFileStore": [], "bookmarkedFileStore": [],

View File

@ -1,13 +1,17 @@
{ {
"recentFiles": [ "recentFiles": [
{ {
"basename": "Партиционирование в БД", "basename": "Key Based Sharding",
"path": "Партиционирование в БД.md" "path": "_inbox/Key Based Sharding.md"
}, },
{ {
"basename": "Шардирование в БД", "basename": "Шардирование в БД",
"path": "_inbox/Шардирование в БД.md" "path": "_inbox/Шардирование в БД.md"
}, },
{
"basename": "Партиционирование в БД",
"path": "Партиционирование в БД.md"
},
{ {
"basename": "Горизонтальное масштабирование", "basename": "Горизонтальное масштабирование",
"path": "_inbox/Горизонтальное масштабирование.md" "path": "_inbox/Горизонтальное масштабирование.md"
@ -195,10 +199,6 @@
{ {
"basename": "00 Разработка", "basename": "00 Разработка",
"path": "wiki/zero/00 Разработка.md" "path": "wiki/zero/00 Разработка.md"
},
{
"basename": "Java Разработка",
"path": "knowledge/dev/java/Java Разработка.md"
} }
], ],
"omittedPaths": [], "omittedPaths": [],

View File

@ -0,0 +1,16 @@
---
aliases:
tags:
- зрелость/🌱
date:
- - 2024-06-20
zero-link:
- "[[00 Архитектура ПО]]"
parents:
- "[[Шардирование в БД]]"
linked:
---
![](Pasted%20image%2020240620220323.png)
- Выбирается ключ шардирвоания в таблице
-

View File

@ -13,9 +13,10 @@ linked:
- "[[Партиционирование в БД]]" - "[[Партиционирование в БД]]"
--- ---
## Тезисы ## Тезисы
- Один из вариантов масштабирования - Один из вариантов масштабирования.
- Данные разбиваются на части. Части размещаются на разных серверах. - Данные разбиваются на части. Части размещаются на разных серверах.
- Не является [репликацией](_inbox/Репликация.md) и [партиционированием](Партиционирование%20в%20БД.md) - Не является [репликацией](_inbox/Репликация.md) и [партиционированием](Партиционирование%20в%20БД.md).
- Шардирование последняя мера по улучшению производительности.
*** ***
Шардирование — это метод разделения и распределения больших объёмов данных по разным базам данных или узлам в рамках одной распределённой системы, чтобы облегчить их управление, обеспечить масштабируемость и повысить производительность. Каждая часть данных, или "шард", функционирует как отдельная база данных, и все шарды вместе образуют логически единую базу данных. Шардирование — это метод разделения и распределения больших объёмов данных по разным базам данных или узлам в рамках одной распределённой системы, чтобы облегчить их управление, обеспечить масштабируемость и повысить производительность. Каждая часть данных, или "шард", функционирует как отдельная база данных, и все шарды вместе образуют логически единую базу данных.
@ -32,13 +33,13 @@ linked:
- **Высокая доступность и устойчивость к отказам**: Отказ одного шарда не приводит к полному сбою системы. Данные в остальных шардах остаются доступными, что повышает общую устойчивость системы к отказам. - **Высокая доступность и устойчивость к отказам**: Отказ одного шарда не приводит к полному сбою системы. Данные в остальных шардах остаются доступными, что повышает общую устойчивость системы к отказам.
**Минусы:** **Минусы:**
- **Сложность управления**: Управление множеством шардов и обеспечение их синхронизации может быть сложной задачей, требующей продвинутых решений для мониторинга, резервного копирования и восстановления. - **Сложность управления**: Нет стандартных механизмов по управлению шардами. В случае добавления или удаления шардов может потребоваться перераспределение больших объемов данных, что может быть ресурсоемкой операцией и повлиять на производительность системы.
- **Сложность проектирования**: Приложениям, использующим шардированные базы данных, часто требуется более сложная архитектура и дизайн базы данных, а также изменения в логике приложения для эффективного распределения и доступа к данным.
- **Трудности с транзакциями и согласованностью**: Шардирование может затруднить обеспечение атомарности и согласованности транзакций, охватывающих несколько шардов, что может потребовать дополнительных усилий для поддержания целостности данных. - **Трудности с транзакциями и согласованностью**: Шардирование может затруднить обеспечение атомарности и согласованности транзакций, охватывающих несколько шардов, что может потребовать дополнительных усилий для поддержания целостности данных.
- **Перераспределение данных**: В случае добавления или удаления шардов может потребоваться перераспределение больших объемов данных, что может быть ресурсоемкой операцией и повлиять на производительность системы.
**Проблемы** **Проблемы**
- [Согласованное префиксное чтение](Согласованное%20префиксное%20чтение.md) - [Согласованное префиксное чтение](Согласованное%20префиксное%20чтение.md)
Стратегии разбиения на шарды
- [Key Based Sharding](Key%20Based%20Sharding.md)
## Заметки ## Заметки
- Реализации шардирования могут мешать [JOIN SQL](JOIN%20SQL.md) - Реализации шардирования могут мешать [JOIN SQL](JOIN%20SQL.md)

Binary file not shown.

After

Width:  |  Height:  |  Size: 1002 KiB