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

Оптимизиране и индексиране на производителността на Mysql InnoDB

Предложението за MD5 хеш, което имахте, е много добро - документирано е във High Performance MySQL 2nd Ed. Има няколко трика, за да го накарате да работи:

CREATE TABLE urls (id NOT NULL първичен ключ auto_increment,url varchar(255) not null,url_crc32 INT UNSIGNED не null,INDEX (url_crc32));

Заявките за избор трябва да изглеждат така:

SELECT * FROM urls WHERE url='http://stackoverflow.com ' И url_crc32=crc32('http://stackoverflow.com ');

Url_crc32 е проектиран да работи с индекса, включително url в клаузата WHERE е предназначен за предотвратяване на хеш сблъсъци.

Вероятно бих препоръчал crc32 вместо md5. Ще има още няколко сблъсъка, но имате по-голям шанс да поберете целия индекс в паметта.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Добра идея ли е да използвате Hibernate за представяне на релациите на таблици?

  2. вземете СУМАТА на всяко лице от PersonID

  3. Mysql подниз

  4. MySQL SecureString като низ за връзка

  5. Onchange dropdown values ​​query респ. таблици - с php, mysql, ajax, jquery