diff --git a/.obsidian/plugins/home-tab/data.json b/.obsidian/plugins/home-tab/data.json index ba228021..377ab858 100644 --- a/.obsidian/plugins/home-tab/data.json +++ b/.obsidian/plugins/home-tab/data.json @@ -23,6 +23,10 @@ "markdownOnly": false, "unresolvedLinks": false, "recentFilesStore": [ + { + "filepath": "_inbox/2024-06-30 1719736218.md", + "timestamp": 1719736218261 + }, { "filepath": "_inbox/Шардирование в БД.md", "timestamp": 1719735198518 @@ -38,10 +42,6 @@ { "filepath": "_inbox/Range Base Sharding.md", "timestamp": 1719734895980 - }, - { - "filepath": "Home.md", - "timestamp": 1719734815792 } ], "bookmarkedFileStore": [], diff --git a/.obsidian/plugins/recent-files-obsidian/data.json b/.obsidian/plugins/recent-files-obsidian/data.json index a059738d..a1dd3e38 100644 --- a/.obsidian/plugins/recent-files-obsidian/data.json +++ b/.obsidian/plugins/recent-files-obsidian/data.json @@ -1,5 +1,9 @@ { "recentFiles": [ + { + "basename": "Consistent hashing", + "path": "_inbox/Consistent hashing.md" + }, { "basename": "Шардирование в БД", "path": "_inbox/Шардирование в БД.md" @@ -195,10 +199,6 @@ { "basename": "Неповторяющееся чтение", "path": "_inbox/Неповторяющееся чтение.md" - }, - { - "basename": "Уровни изоляций транзакций БД", - "path": "knowledge/dev/database/Уровни изоляций транзакций БД.md" } ], "omittedPaths": [], diff --git a/_inbox/Consistent hashing.md b/_inbox/Consistent hashing.md new file mode 100644 index 00000000..ef09f57c --- /dev/null +++ b/_inbox/Consistent hashing.md @@ -0,0 +1,12 @@ +--- +aliases: +tags: + - зрелость/🌱 +date: + - - 2024-06-30 +zero-link: + - "[[00 Алгоритмы]]" +parents: + - "[[Шардирование в БД]]" +linked: +--- diff --git a/_inbox/Шардирование в БД.md b/_inbox/Шардирование в БД.md index 21900413..a56dba91 100644 --- a/_inbox/Шардирование в БД.md +++ b/_inbox/Шардирование в БД.md @@ -63,5 +63,11 @@ linked: - [JOIN SQL](JOIN%20SQL.md) - Держать нужные данные на одном шарде - Делать вычисления в одном сервисе -- Решардинг. Добавили/удалили ноду - - \ No newline at end of file + + +## Решардинг +При добавлении/удалении ноды нужно провести решардинг. Перенести старые данные на новые узлы. + +Лучше если количество нод будет равно степени 2. Формула shard_Id % count. +- 16 записей на 8 шардов -> 2 записи на шард +- 16 записей на 16 шардов -> 1 запись на шард \ No newline at end of file