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

Производителност на MySQL на уникално поле varchar срещу уникален bigint

Вашата шестнадесетична стойност GUID ли е? Въпреки че преди се тревожех за производителността на такива дълги елементи като индекси, открих, че в съвременните бази данни разликата в производителността дори при милиони записи е доста незначителна.

Потенциално по-голям проблем е паметта, която индексът консумира (16 байта срещу 4 байта int, например), но на сървъри, които контролирам, мога да заделя за това. Докато индексът може да бъде в паметта, намирам, че има повече излишни разходи от други операции, че размерът на индексния елемент не прави забележима разлика.

От друга страна, ако използвате GUID, получавате независимост на сървъра за създадени записи и повече гъвкавост при обединяването на данни на множество сървъри (което е нещо, което ме интересува, тъй като нашата система събира данни от дъщерни системи).

В тази статия има графика, която изглежда потвърждава подозрението ми:Митове, GUID срещу Autoincrement



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Извикване на съхранена процедура в codeigniter

  2. Не мога да се свържа с MySQL сървър на (IP или име на домейн)

  3. MySQL Alter Stored Procedure

  4. mysql/php това защитен начин за свързване с mysql DB ли е?

  5. Групиране по дата, връщане на ред, дори ако няма намерени записи