Альтернатива MyISAM, которая не является InnoDB?

У меня проблемы с использованием движка MyISAM в моей базе данных. Он постоянно портит и сильно меняет время запросов. Таким образом, я не могу использовать его больше. Я нашел InnoDB, чтобы быть хорошим альтернативой, но вот проблема:

 Engine         Support     Comment
 MyISAM         DEFAULT     Default engine as of MySQL 3.23 with great perform...
 MEMORY         YES         Hash based, stored in memory, useful for temporary...
 InnoDB         DISABLED    Supports transactions, row-level locking, and fore...
 BerkeleyDB     NO          Supports transactions and page-level locking
 BLACKHOLE      YES         /dev/null storage engine (anything you write to it...
 EXAMPLE        NO          Example storage engine
 ARCHIVE        YES         Archive storage engine
 CSV            YES         CSV storage engine
 ndbcluster     DISABLED    Clustered, fault-tolerant, memory-based tables
 FEDERATED      YES         Federated MySQL storage engine
 MRG_MYISAM     YES         Collection of identical MyISAM tables
 ISAM           NO          Obsolete storage engine

Надеюсь, что форматирует правильно

У меня нет власти над поддержкой различных двигателей, так что это то, с чем я должен работать.

Я в основном в беде? Или есть какие-то из них, которые могут добиться цели? У меня есть БД, которая может содержать потенциально миллионы записей, и мне нужно выполнить операции "LIKE" над полем "mediumtext" (возможно, полнотекстовый поиск), и иметь высокую скорость вставки / обновления в БД (иногда более 50 записи / сек).

2 ответа

Решение

Я бы сказал, что у вас проблемы, потому что у вас нет контроля над двигателями, вы ничего не можете сделать.

Однако для выполнения полнотекстового поиска по большой базе данных можно было бы использовать Apache Lucene. Насколько я знаю, это быстрее и более масштабируемо, чем любой другой SQL-движок. Он реализован на Java, но есть много других реализаций, включая C, C++, .Net, Python, PHP, ...

Если у вас проблемы с MyISAM, у вас есть другая проблема с надежностью в другом месте - например, ваш демон mysql был убит бесцеремонно, или произошла ошибка на диске или проблема с питанием.

Поскольку хорошие альтернативы отключены, вы застряли там. Время найти поставщика, который не отключает хорошие вещи.

Другие вопросы по тегам