Mysql
 sql >> база данни >  >> RDS >> Mysql

InnoDB (MySQL 5.5.8) правилният избор ли е за няколко милиарда редове?

Прост отговор на вашия въпрос би бил да InnoDB би бил идеалният избор за набор от данни от няколко милиарда редове.

Има множество оптимизации, които са възможни.

Най-очевидните оптимизации биха били задаване на голям буферен пул, тъй като буферният пул е най-важното нещо, когато става дума за InnoDB, защото InnoDB буферира данните, както и индекса в буферния пул. Ако имате специален MySQL сървър само с InnoDB таблици, тогава трябва да настроите до 80% от наличната RAM памет, която да се използва от InnoDB.

Друга най-важна оптимизация е наличието на правилни индекси в таблицата (имайки предвид модела за достъп/актуализация на данни), както първични, така и вторични. (Не забравяйте, че първичните индекси се добавят автоматично към вторичните индекси).

С InnoDB има някои допълнителни екстри, като защита от повреда на данни, автоматично възстановяване и т.н.

Що се отнася до увеличаването на производителността на запис, трябва да настроите вашите регистрационни файлове на транзакциите да бъдат до общо 4G.

Друго нещо, което можете да направите, е да разделите таблицата.

Можете да постигнете по-голяма производителност, като зададете bin-log-format на "ред" и зададете auto_inc_lock_mode на 2 (това ще гарантира, че innodb няма да държи заключвания на ниво таблица при вмъкване в колони с автоматично увеличение).

Ако имате нужда от конкретен съвет, можете да се свържете с мен, бих бил повече от готов да помогна.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Извличане на MySQL с Kivy

  2. Сортиране на MySQL заявка по географска ширина/дължина

  3. Как да получа само цифри от String в mysql?

  4. PHP подготвени изявления... Свързване на променлива като числов диапазон в REGEXP?

  5. Показване на изображения от MySQL база данни в една колона на JTable