С нами с 26.03.05
Сообщения: 119
Рейтинг: 44
|
Добавлено: 01/02/06 в 18:46 |
А стоит ли вообще геморроиться с heap-таблицами??????????
Цитата: | User CommentsPosted by John Lim on Friday May 17 2002, @6:24am
I have benchmarked inserts and deletes on MyISAM
and HEAP tables. HEAP tables appear to be at
least 30% faster on inserts but only 15% faster
when selecting single records. MyISAM table
caching is pretty fast. I also did some
benchmarks on Oracle for comparison. See
http://php.weblogs.com/oracle_mysql_performance
for further details. |
http://linuxshop.ru/lib/mysqloff/HEAP.html
Цитата: | Syntax-wise, you can now INSERT and SELECT data as you would for an ordinary MyISAM table, just faster. In early 2002, John Lim wrote some benchmarks to measure the difference HEAP tables make. He found that HEAP tables were faster than MyISAM tables, but not by much. It is likely that with MySQL 4's table cache, the differences will be even less. These were his results:
Table type 100 000 inserts (seconds) Inserts per s 50 000 selects (s) Selects/s
MySQL 3.23 Heap (Mem used: 10Mb) 23.82 4,198 21.96 2,276
MySQL 3.23 MyISAM 33.42 2,992 25.91 1,930
|
Оригинал здесь: http://www.databasejournal.com/features/mysql/article.php/3077531
|
|
|
|
С нами с 09.09.05
Сообщения: 148
Рейтинг: 129
|
Добавлено: 02/02/06 в 02:33 |
heap табл...
лень пьяному читать, чего ты там на американском наговорил, но суть такова, что:::: забей на мускуль вообще! если сервер пучком настроен (и... даже если не настроен) все самые читаемые и писаемые файлы будут кешироваться. а это один хрен быстрее мускуля - с оперативки читать, и не думать над тем, как составить запрос мускулю, и как он его поймет...
далее просто работай с файлами. НО аккуратно и грамотно...
сколько раз чистить таблицу уников? нуууу... а сколько не жалко? для, например, 100.000 уников в день.. ммм... сколько в минуту отсеется? или в 5 минут? подумай, сколько тебе удобно, так и сделай.
ЗЫ: 100-й пост?
|
|
|
|
С нами с 26.03.05
Сообщения: 119
Рейтинг: 44
|
Добавлено: 02/02/06 в 10:30 |
assault писал: | heap табл...
лень пьяному читать, чего ты там на американском наговорил, но суть такова, что:::: забей на мускуль вообще! если сервер пучком настроен (и... даже если не настроен) все самые читаемые и писаемые файлы будут кешироваться. а это один хрен быстрее мускуля - с оперативки читать, и не думать над тем, как составить запрос мускулю, и как он его поймет...
далее просто работай с файлами. НО аккуратно и грамотно... |
Они как раз и пишут на американском, что мускуль тоже не дурак и у него все самые читаемые и писаемые таблицы кешируются в оперативке. И что выигрыш при использовании heap таблиц не такой уж большой, если вапще хоть какой-то.
Еще они пишут что обычные MyISAM таблицы способны обрабатывать от 2000 до 3000 запросов в секунду. Считаем: 1 млн уников в сутки - это 12 в секунду. 2000 запросов на 12 уников - выше крыши, не правда ли?
ЗЫ:
Сообщения: 100
Рейтинг: 100
|
|
|
|
С нами с 18.04.02
Сообщения: 520
Рейтинг: 261
|
Добавлено: 02/02/06 в 10:52 |
сиджам с майсиквелом не доверяю, в любой момент может грохнуться
так что делай лучше без него. в сидже главное что б все правильно считал и работал надежно без всяких сбоев. ну и минимум загружал систему конечно.
|
|
|
|
С нами с 09.09.05
Сообщения: 148
Рейтинг: 129
|
Добавлено: 02/02/06 в 13:06 |
Erectronic писал: | Они как раз и пишут на американском, что мускуль тоже не дурак и у него все самые читаемые и писаемые таблицы кешируются в оперативке. И что выигрыш при использовании heap таблиц не такой уж большой, если вапще хоть какой-то.
Еще они пишут что обычные MyISAM таблицы способны обрабатывать от 2000 до 3000 запросов в секунду. Считаем: 1 млн уников в сутки - это 12 в секунду. 2000 запросов на 12 уников - выше крыши, не правда ли?
ЗЫ:
Сообщения: 100
Рейтинг: 100
|
ИМХО, фигня какая-то про запросы. они наверное тестили на кластере компов в 50
НЕ ВЕРЮ! (с) что среди миллиона записей можно находить одну 2000 раз (в нашем случае). то бишь в секунду просматривается около (+/-) ДВУХ МИЛЛИАРДОВ записей (2000 запросов * 1000000 записей) ... ну-ну... считаем дальше: например, возьмем проц 3ГГц. то есть 3 МИЛЛИАРДА тактов в секунду. теперь прикинь, что за 1,5 такта проц должен найти и вернуть запись... даже кластер из 50 машин с поддержкой горячей замены процессоров не выгребет такие нагрузки. если я не прав - приведите другие цифры.
ЗЫ: поднабрал я рейтингу в этом топике... аффтар, пишы исчо!
|
|
|
|
С нами с 26.03.05
Сообщения: 119
Рейтинг: 44
|
Добавлено: 02/02/06 в 21:43 |
assault писал: | ИМХО, фигня какая-то про запросы. они наверное тестили на кластере компов в 50
НЕ ВЕРЮ! (с) что среди миллиона записей можно находить одну 2000 раз (в нашем случае). то бишь в секунду просматривается около (+/-) ДВУХ МИЛЛИАРДОВ записей (2000 запросов * 1000000 записей) ... ну-ну... считаем дальше: например, возьмем проц 3ГГц. то есть 3 МИЛЛИАРДА тактов в секунду. теперь прикинь, что за 1,5 такта проц должен найти и вернуть запись... даже кластер из 50 машин с поддержкой горячей замены процессоров не выгребет такие нагрузки. если я не прав - приведите другие цифры.
ЗЫ: поднабрал я рейтингу в этом топике... аффтар, пишы исчо! |
пешу есчо!
Ну неужели ты думаешь, что разработчики mysql [и других баз] настолько тупы, чтобы при каждом запросе просматривать ВСЕ записи в таблице?
Как ты например объяснишь что гугль при запросе fuck выдает: Results 1 - 50 of about 55,300,000 for fuck. (0.09 seconds)???
Он что, по твоему за 0.09 секунды от начала до конца просмотрел все ТРИЛЛИОНЫ страниц, что у него в базе, и выдал нужные тебе 55 миллионов???????
Понятное дело, что тут имеет место быть гораздо более продвинутая технология, чем примитивный перебор ВСЕХ записей в ДБ.
Мускуль разрабатывается уже больше десяти лет и отнюдь не неизлечимыми пациентами психиатрических лечебниц. И если ты считаешь, что можешь в одно рыло за две недели написать код лучший, чем тот, над которым 10 лет горбатились в поте яйца сотни [если не тысячи] продвинутых программеров, то мне остается тебе только позавидовать.
Я имею в виду, что хранение данных в текстовых файлах, вместо отлично зарекомендовавшей себя и к тому же бесплатной ДБ, - это изобретение велосипеда, причем с квадратным рулем и треугольными колесами. Просто нужно грамотно этой дб пользоваться, внимательно читать мануалы и советоваться с умными людьми [для чего я собственно и здесь].
Согласен, мускуль в любой момент может грохнуться. Для защиты от этого я каждые несколько минут кроном запускаю:
Код: | $result = mysql_list_tables($database);
while ($row = mysql_fetch_row($result)) {
$qquery = "repair table ".$row[0];
$rresult = mysql_query($qquery);
$qquery = "optimize table ".$row[0];
$rresult = mysql_query($qquery);
}
|
Вроде помогает.
В крайнем случае если и может случиться зависание базы то только на несколько минут между кронами. Но пока вроде бы не замечал.
А какими контрацептивами пользуетесь вы?
|
|
|
|