Плавный переход от одной базы данных и одной таблицы к подбазе данных и подтаблицам.
Плавный переход от одной базы данных и одной таблицы к подбазе данных и подтаблицам.

фон

Далее мы будем использовать электронную коммерцию в качестве примера.

бизнес-перспектива

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

техническая перспектива

Согласно предыдущему опыту, одна таблица может поддерживать до 2000 Вт данных. Если объем данных продолжит увеличиваться, это повлияет на эффективность чтения и записи, и необходимо преобразовать одну базу данных и одну таблицу в таблицы подбазы данных. .

Проблемы с одной базой данных и одной таблицей:

  1. Узкое место в производительности:По мере увеличения объема данных,Производительность чтения и запросов к базе данных будет постепенно снижаться. Особенно, когда количество строк данных в таблице достигает миллионов и более.,Даже простые операции запроса могут стать очень медленными.
  2. Горячие точки данных:Все операции с данными сосредоточены в одной таблице в одной базе данных.,легко формировать Горячие точки данных, из-за чего некоторые строки данных становятся частым доступом и становятся Узкое место в производительности
  3. Проблемы высокой доступности и аварийного восстановления:Трудно добиться высокой доступности и аварийного восстановления с помощью единой базы данных и архитектуры одной таблицы.。Как только база данных выйдет из строя,Это повлияет на все приложение. и,Восстановление данных занимает больше времени,Влияет на нормальную работу бизнеса.
  4. Проблемы масштабируемости:По мере развития бизнеса,Объем данных и доступ продолжают расти,Архитектуру одной базы данных и одной таблицы сложно удовлетворить потребностям путем простого расширения. Как горизонтальное расширение (добавление дополнительных серверов), так и вертикальное расширение (обновление существующего серверного оборудования) имеют ограничения.
  5. Управление транзакциями и конфликты блокировок:В ситуациях с высоким параллелизмом,Большое количество транзакций и операций с базой данных может привести к проблемам блокировки блокировок.,Влияет на возможности обработки базы данных.
  6. Сложности резервного копирования и обслуживания:По мере увеличения объема данных,Сложность и временные затраты на резервное копирование и обслуживание базы данных также значительно возрастут.

Процесс обновления архитектуры

ссылка:Процесс эволюции архитектуры базы данных

Здесь мы непосредственно достигаем цели за один шаг: от единой базы данных и одной таблицы до вертикального вывода из эксплуатации и горизонтального разделения таблиц.

Процесс миграции

Краткое описание сценария

старые и новые данные

читать

Писать

старые данные

да

да

старые данные

да

да

шаги миграции

  1. Возможность реализации чтения и записи новых данных.
  2. Реализуйте синхронизацию старых данных с новыми данными (путем мониторинга binlog).
  3. Реализуйте синхронизацию новых данных со старыми (путем мониторинга binlog).
  4. Начать новые данные в оттенках серого читать
  5. После прочтения всего объема новых данных закройте старые. данныеизчитать
  6. Начать новые данные в оттенках серого Писать
  7. После полного объема новых данных Писать, закройте старые данные Писать.
  8. После стабильной работы в сети в течение определенного периода времени отключите синхронизацию старых и новых данных.
  9. Архивстарые данные,офлайнстарые данные

До миграции

Миграция

После миграции

Подвести итог

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

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose