оптимальный дизайн таблицы mysql с ключом primay и значением varchar - PullRequest
0 голосов
/ 20 марта 2012

У меня есть таблица, которая используется двумя процессами.

Таблица выглядит так:

valueID (INT PRIMARY AUTO INCREMENT)
value (VARCHAR 100 UNIQUE)
  • процесс 1 выполняет запрос как SELECT valueID FROM table WHERE value = '$val' со скоростью> 250 в секунду

  • процесс 2 делает противоположное: SELECT value FROM table WHERE valueID = '$valid' со скоростью> 400 в секунду

Таким образом, эта таблица стала очень большой, а также довольно большой> более 50 миллионов строк и быстро растет. В настоящее время я испытываю замедление производительности, так как размер таблицы увеличивается. Я хочу оптимизировать это. Думая о разделении, но о другом будет поражен в производительности. В настоящее время MyISAM, но InnoDB также возможен.

Есть какие-нибудь идеи о том, какие наиболее оптимальные настройки для этой таблицы могут быть?

1 Ответ

0 голосов
/ 20 марта 2012

Вы можете разделить ставку в диапазоне как

SELECT valueID FROM table WHERE value = '$val' at a rate>=250 and rate<=400 

И

SELECT valueID FROM table WHERE value = '$val' at a rate>=401 and rate<=600 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...