Перейти до основного змісту

Побудований на довірі, заснований на таланті. Freelancio поєднує творчих професіоналів з клієнтами, які шукають якість, завдяки справедливим цінам, багатомовній підтримці та куленепробивному захисту платежів по всьому світу.

Проєктування та оптимізація бази даних

Створюйте ефективну, масштабовану архітектуру бази даних, яка підтримує продуктивність і зростання вашого додатка. Цей сервіс баз даних включає: аналіз вимог, розуміння сутностей даних, зв'язків, шаблонів запитів і очікувань об'єму, аудит поточних баз даних, якщо він існує, аналіз схем, виявлення проблем з продуктивністю та планування міграції при зміні баз даних, планування переходу без простоїв...

Проєктування та оптимізація бази даних

Запропоновано

U
Ursula Meyer
Фрілансер

Про цю пропозицію

Створюйте ефективну, масштабовану архітектуру бази даних, яка підтримує продуктивність і зростання вашого додатка. Цей сервіс баз даних включає: аналіз вимог, розуміння сутностей даних, зв'язків, шаблонів запитів і очікувань об'єму, аудит поточних баз даних, якщо він існує, аналіз схем, виявлення проблем з продуктивністю та планування міграції при зміні баз даних, планування переходу без простоїв. Проєктування бази даних включає: діаграму сутностей-зв'язок, що створює візуальну схему з таблицями, стовпцями та зв'язками, нормалізацію, застосування 3NF, що зменшує надмірність і забезпечує цілісність даних, первинні/зовнішні ключі, що визначають зв'язки, що підтримують цілісність референтності, а також типи даних, що обирають відповідні типи (int, varchar, JSON), оптимізуючи зберігання. Стратегія індексу включає: первинні індекси, що створюють індекси на первинних ключах для швидкого пошуку, вторинні індекси, що додають індекси до часто запитуваних стовпців (електронна пошта, дата, статус), складені індекси, що індексують кілька стовпців для складних запитів, охоплюють усі стовпці запитів, уникаючи пошуку в таблицях, та моніторинг індексу для виявлення відсутніх або невикористаних індексів, що займають простір. Оптимізація запитів включає: повільну ідентифікацію запитів за допомогою планів пояснення, пошук неефективних запитів, переписування запитів, оптимізацію SQL для кращого виконання планів, оптимізацію з'єднань, реструктуризацію з'єднань або додавання підказок, покращення продуктивності, а також виправлення N+1 запитів, усунення повторюваних запитів при швидкому завантаженні або приєднаннях. Налаштування продуктивності включає: пул з'єднань, повторне використання з'єднань, зменшення накладних витрат на створення з'єднань, кешування результатів запитів для часто доступних даних, розділення великих таблиць за датою або регіоном, що покращує швидкість запитів, а також горизонтальне розділення між кількома базами даних для максимального масштабування. Цілісність даних включає: обмеження, що додають НЕ NULL, UNIQUE, CHECK обмеження, що контролюють якість даних, тригери, що створюють тригери бази даних для автоматичних оновлень або валідації, збережені процедури, що інкапсулюють бізнес-логіку в базі даних, та транзакції, що забезпечують властивості ACID для критичних операцій. Резервне копіювання та відновлення включають: автоматизоване резервне копіювання, планування щоденних повних резервних копій і погодинних додаткових резервних копій, відновлення в точці часу, налаштування резервних копій транзакційного журналу з можливістю відновлення у визначений час, регулярне тестування резервних копій для перевірки цілісності, а також план аварійного відновлення з документуванням процедур RTO/RPO та відновлення. Висока доступність включає: реплікацію, налаштування первинної репліки, реплікацію для масштабування читання та резервування, налаштування резервування, автоматичне перемикання на репліку при первинному відмові, балансування навантаження, розподіл запитів до читання між репліками, а також моніторинг, перевірки стану з попередженнями про затримку або збої реплікації. Безпека включає: авторські права користувачів із найменшими привілеями для додатків і адміністраторів, шифрування в стані спокою, що дозволяє прозоре шифрування даних для конфіденційних даних, шифрування в транзиті, що вимагає SSL/TLS для підключення до бази даних, а також аудит журналування всього доступу до бази даних для відповідності. Підтримка міграції включає: скрипти міграції схем, які створюють SQL-міграції для контролю версій і розгортання, ETL-процеси міграції даних для переміщення даних зі старої до нової бази даних, міграцію без простоїв за допомогою стратегій подвійного запису або інкрементальної синхронізації, а також план відкату з можливістю повернення у разі невдалої міграції. Підтримка платформи баз даних включає: оптимізацію MySQL InnoDB, налаштування буферного пулу, кешу запитів, налаштування PostgreSQL, налаштування shared_buffers, work_mem, maintenance_work_mem, оптимізацію індексів MongoDB, шардинг, набори реплік, налаштування максимальної пам'яті SQL Server, паралелізм, конфігурацію tempdb. Звітність і аналітика включають: читання реплік, що розділяють аналітичні запити від реплік, запобігаючи впливу на виробництво, інтеграцію сховища даних, ETL-конвеєри, що синхронізують дані з Redshift, BigQuery або Snowflake, матеріалізовані перегляди до обчислення складних агрегувань для швидкої звітності, а також інтеграцію інструментів BI, що з'єднує Tableau, Power BI або Looker з базою даних. Моніторинг включає: метрики продуктивності, відстеження часу запитів, кількості з'єднань, співвідношення попадань кешу, вводу/виведення диска, повільного журналу запитів, ідентифікацію запитів, що перевищують поріг оптимізації, сповіщення про виявлення глухих блокувань з рекомендаціями виправлення, а також планування потужності, моніторинг зростання, прогнозування зростання при необхідності масштабування. Документація включає: документацію зі схеми, ERD та словник даних, що пояснює всі таблиці та стовпці, посібник із запитів, що документує поширені запити та найкращі практики для розробників, а також процедури підтримки ранбуків для резервного копіювання, відновлення, резервування, масштабування. Навчання включає: адміністрування баз даних, навчання командних резервних копій/відновлень, управління користувачами, моніторинг продуктивності, навчання оптимізації запитів, навчання розробникам як писати ефективні запити та використовувати індекси, а також посібник з усунення несправностей, поширені проблеми та рішення. Ідеально підходить для додатків, які стикаються з повільними запитами до баз даних, що впливають на користувацький досвід, стартапами, що швидко масштабуються і потребують архітектури бази даних для зростання, підприємств, що консолідують бази даних або мігрують у хмару, а також для команд розробників, які не мають досвіду роботи з базами даних і потребують оптимізації.

Відгуки

Відгуків ще немає

Будьте першими, хто замовив і залишив відгук!

Згода на використання файлів cookie

Ми використовуємо файли cookie, щоб забезпечити вам найкращий досвід роботи на нашому сайті. Основні файли cookie завжди активні. Прочитайте політику конфіденційності

Основні файли cookie (завжди активні) Потрібно

  • freela-session: Сесія Laravel для автентифікації та управління станом
  • XSRF-TOKEN: Токен захисту CSRF
  • cookie_consent: Зберігає ваші налаштування файлів cookie

Необов'язкові файли cookie

  • theme: Зберігає ваші налаштування темного/світлого режиму