powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Какова у вас cкорость поиска???
25 сообщений из 26, страница 1 из 2
Какова у вас cкорость поиска???
    #32195432
aleksey_24
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Автомобильная база данных: маки, модели, даты, кузова, цвета, стоимости, пробег, кондиционеры ... и так далее (ВСЕГО ОКОЛО 50 параметров).
Вопрос был - держать ли эти данные в разных таблицах или в одной.
Но ФИШКА в том что я сделал так, что бы на базе данных в 1.000.000 записей мой компутер может отрабатывать до 190 запросов в секунду при выборке блоков строк. Тестовый скрипт самостоятельно генерирует каждый раз различный запрос к базе данных (в секунду база обрабатывает 190 таких, скажу прямо - не маленьких запросов).
Моя тестовая машина PIII 1500Mhz 512MB SDRAM (не очень то мощная).

Вопрос - кто может быстрее???
Пишите методы, это очень интересно!!!
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32195705
Фотография mahoune
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хорошо ты сказал пишите методы... Всегда есть нюансы и к тому же ты толком не описал, как ты это сделал! А так можети посоветовали бы тебе где можно соптимизировать!
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32196046
aleksey_24
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дело в том что у меня есть соображения по поводу - как сделать разумно базу
и оптимизировать ее.
Это как спорт, интересно - возможно ли что бы кто то сделал ещё быстрее!!!


Я одно время занимался такого рода разрабоками, и мне говорили. что для приличной
скорости нужно будет ставить или жудко мощную машину, или кластер из нескольких мощных тачек.
И я подумал - а не разработать ли быструю систему с могической точки зрения,
а не просто наращивая мошь сервера.


Вот логическое описание того, как работает тестовый запрос:
идея как у обысного сайта выставляющего машины на продажу.
В запросе указываем: марку, модель, кузов, цена, год (если угодно можете ещё что то).
Все как в обычной поисковой машине. Каждый раз указывая новые марку, модел, кузав, год...

Кстате база заполнялась хаотически с определенным приемуществам по доминирующим маркам
машин, указанных мною в процентах от общего количества. Всего в базе 1.000.000 записей.

Моя тестовая машина PIII 1500Mhz 512MB SDRAM (не очень то мощная).
отрабатываеться до 190 запросов в секунду при выборке.

База имеет следующие параметры, планировать базу можете с какой угодно структурой,
главное, что бы была высокая скорость обработки запроса:

id, marka, model, year, category, korobka, kuzov, fuel, color, power,
race, price, price_diler, visible,
Klima, Klimaautomatik, Lederausstattung, Elektr_Fensterheber, Navigationssystem,
Elektrische, Sitze, Schiebedach, Sitzheizung, CD, Radio_Cassette, ABS,
Airbag, Beifahrer_Airbag, Seitenairbags, Xenonscheinwerfer, Zentralverriegelung,
Alarmanlage, Wegfahrsperre, Traktionskontrolle, elektr_Stabilitдtsprog,
Allrad, Tuning, Alufelgen, Dachtrдger, Bordcomputer, Park_Distance_Control,
Nebelscheinwerfer, Servolenkung, Tempomat, Anhдngerkupplung,
date_build, expire, user_id, handler, first, zip, country, statistic


Попробуйте сделать у себя быстрее, если получиться. Напишите свои результаты, потом разсмотрим
структуру и принципы оптимизации друг друга.

Жду ваших ответов.
Пишите.
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32196056
medved
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лучше выложи куда-нидь дамп своей базы.. А мы (если никто не присоединится то один я) посмотрим смогем ли мы его соптимизировать... ибо сильно думать мне лично не охота.
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32196112
aleksey_24
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так в этом же и фишка, что бы мозгами пошевелить!!!

А база - конфетка.

Жду твоего тестового результата.
Пока базу показываать нестоит, да и кроме структурыследуеть проводить много оптимизаций, что так просто не петедать.

Фишка в том - кто быстрее!!!

Раз тебя это заинтересовало, то давай продолжать.

Все кто хочет попробовать и чювствует в себе силы и знания - ПРИСОЕДЕНЯЙТЕСЬ.
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32196209
BigHarry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ты бы хоть, действительно, структуру базы дал - а то типа - сделайте мне быстрее, а исходных данных нету, кроме названия полей - да и то - на немчине.
Кому охота тестировать то, не знамо что?
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32196286
Stellar.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
>А база - конфетка.
По списку полей это непонятно.
Нужен дамп базы.

>Пока базу показываать нестоит, да и кроме структурыследуеть проводить
>много оптимизаций, что так просто не петедать.
Имеено это и стОит показывать.
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32196608
aleksey_24
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ребята - дав структуру базы я и вы все лишитесь реальности независимого эксперимента, так как все будете уже подсознательно направлены на решение проблемы только в одну сторону (как начал я). Это обычная психология людей (и это нормально), но вот как раз этого я и не хочю.
Хотелось бы увидеть результаты всевозможных решений (Я ЗА ЧИСТОТУ ЭКСПЕРИМЕНТА!!!).

Если уж вам нужны домены данных и структура базы с основными данными для поиска базы, вот они:
Основные таблицы: обшая, марки и модели, а далее по мелочам, цвета, тип кузова и так далее...

Давайте попробуем выжать все из MySQL


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
CREATE TABLE tb_announcement (
  id int( 12 ) NOT NULL auto_increment,
  marka_id int( 4 ) NOT NULL default '0',
  model_id int( 4 ) NOT NULL default '0',
  year int( 4 ) NOT NULL default '0',
  category_id int( 4 ) NOT NULL default '0',
  korobka_id int( 4 ) NOT NULL default '0',
  kuzov_id int( 4 ) NOT NULL default '0',
  fuel_id int( 4 ) NOT NULL default '0',
  color_id int( 4 ) NOT NULL default '0',
  power int( 8 ) NOT NULL default '0',
  race int( 8 ) NOT NULL default '0',
  price int( 8 ) NOT NULL default '0',
  price_diler int( 8 ) NOT NULL default '0',
  visible tinyint( 1 ) NOT NULL default '0',
  par_01 tinyint( 1 ) NOT NULL default '0',
  par_02 tinyint( 1 ) NOT NULL default '0',
  par_03 tinyint( 1 ) NOT NULL default '0',
  par_04 tinyint( 1 ) NOT NULL default '0',
  par_05 tinyint( 1 ) NOT NULL default '0',
  par_06 tinyint( 1 ) NOT NULL default '0',
  par_07 tinyint( 1 ) NOT NULL default '0',
  par_08 tinyint( 1 ) NOT NULL default '0',
  par_09 tinyint( 1 ) NOT NULL default '0',
  par_10 tinyint( 1 ) NOT NULL default '0',
  par_11 tinyint( 1 ) NOT NULL default '0',
  par_12 tinyint( 1 ) NOT NULL default '0',
  par_13 tinyint( 1 ) NOT NULL default '0',
  par_14 tinyint( 1 ) NOT NULL default '0',
  par_15 tinyint( 1 ) NOT NULL default '0',
  par_16 tinyint( 1 ) NOT NULL default '0',
  par_17 tinyint( 1 ) NOT NULL default '0',
  par_18 tinyint( 1 ) NOT NULL default '0',
  par_19 tinyint( 1 ) NOT NULL default '0',
  par_20 tinyint( 1 ) NOT NULL default '0',
  par_21 tinyint( 1 ) NOT NULL default '0',
  par_22 tinyint( 1 ) NOT NULL default '0',
  par_23 tinyint( 1 ) NOT NULL default '0',
  par_24 tinyint( 1 ) NOT NULL default '0',
  par_25 tinyint( 1 ) NOT NULL default '0',
  par_26 tinyint( 1 ) NOT NULL default '0',
  par_27 tinyint( 1 ) NOT NULL default '0',
  par_28 tinyint( 1 ) NOT NULL default '0',
  par_29 tinyint( 1 ) NOT NULL default '0',
  par_30 tinyint( 1 ) NOT NULL default '0',
  date_build int( 10 ) NOT NULL default '0',
  expire int( 10 ) NOT NULL default '0',
  user_id int( 8 ) NOT NULL default '0',
  handler tinyint( 1 ) NOT NULL default '0',
  first tinyint( 1 ) NOT NULL default '0',
  zip int( 5 ) NOT NULL default '0',
  country int( 3 ) NOT NULL default '0',
  statistic int( 8 ) NOT NULL default '0',
  PRIMARY KEY  (id)
  ) TYPE=MyISAM;



CREATE TABLE tb_marka (
  id_marka int( 10 ) unsigned NOT NULL auto_increment,
  marka varchar( 16 ) NOT NULL default ''
  PRIMARY KEY  (id_marka)
) TYPE=MyISAM;

 97  штук марок


CREATE TABLE tb_model (
  id_model int( 10 ) unsigned NOT NULL auto_increment,
  id_marka tinyint( 4 ) NOT NULL default '0',
  model varchar( 16 ) NOT NULL default ''
  PRIMARY KEY  (id_model)
) TYPE=MyISAM;

 1500  штук моделей



Заполнить хаотично базу я думаю вы сможете сами.

Жду ответа.
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32196672
Sad Spirit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aleksey_24
> Давайте попробуем выжать все из MySQL

Давайте, давайте!
Начни с того, что в своём тестовом скрипте сделай по одному UPDATE штук на 50 SELECT и по одному INSERT штук на 20 --- будет больше похоже на реальное использование сайта. Расскажи здесь о результатах прогонки.
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32196860
BigHarry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>> Давайте попробуем выжать все из MySQL
Мне показалось - что хотели тест разных серверов сделать при одинаковых базах - а оказывается - только Мускуль...
А зачем? Ну - будет у одного быстрее, у другого - медленее - зависит от машины и настроения ОС...
Единственно - интересно бы посмотреть на результаты под разными Осями - где быстрее работает Муся - под линухом-фрей или под какими-нить виндами...


>> Хотелось бы увидеть результаты всевозможных решений
>> (Я ЗА ЧИСТОТУ ЭКСПЕРИМЕНТА!!!).

А примеры запросов? Какие запросы-то делаются по этим таблицам?
Может - для ускорения придется какие-нить дополнительные индексы строить?
А если ты совсем за ЧИСТОТУ ЭКСПЕРИМЕНТА - то не плохо бы реальные данные из этих таблиц (или это коммерческая тайна?) - от данных тоже зависит кое-что (например - величина индекса)...
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32197845
aleksey_24
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем откликнувшимся.
ТЕСТ видимо всетаки будете проводить ребята. Ето интересно.
Посоревнуемся.

Реальные данные дать не могу так как ето 240 мегобайт различных
данных с большим разбросом доменов столбцов. Вам придется самим заполнить
базу различными данными, (только реальными). Это не так уж сложно.
Естественно делайте индексы и оптимизации какие только хотите - ето
только класс.

Поступило еще предложение протестировать поиск и на разных ОС (я
за), сам тестировал под win2000. (Принимаю предложение - тестим на
разных ОС)

Кто может - тестируйте и различные БАЗЫ ДАННЫХ, хотя думаю MySQL не
обойти. (Принимаю предложение - тестим на разных базах)

Сейчас дам тестовый скрипт:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
<?

function get_microtime()
	{
	$mtime = microtime();
	$mtime = explode( " " ,$mtime);
	$mtime = doubleval($mtime[ 1 ] + doubleval($mtime[ 0 ]));
	return ($mtime);
	}

$old_max_execution_time = ini_set( "max_execution_time" ,  17200 );

$marka = array(
 "1 " =>  1 ,
 "2 " =>  2 ,
 "3 " =>  8 ,
 "4 " =>  45 ,
 "5 " =>  4 ,
 "6 " =>  5 ,
 "7 " =>  6 ,
 "8 " =>  40 ,
 "9 " =>  15 ,
 "10 " =>  2 ,
 "11 " =>  5 ,
 "12 " =>  6 ,
 "13 " =>  3 ,
 "14 " =>  1 ,
 "15 " =>  12 ,
 "16 " =>  16 ,
 "17 " =>  21 ,
 "18 " =>  3 ,
 "19 " =>  18 ,
 "20 " =>  25 ,
 "21 " =>  10 ,
 "22 " =>  2 ,
 "23 " =>  2 ,
 "24 " =>  13 ,
 "25 " =>  1 ,
 "26 " =>  1 ,
 "27 " =>  28 ,
 "28 " =>  30 ,
 "29 " =>  10 ,
 "30 " =>  5 ,
 "31 " =>  24 ,
 "32 " =>  2 ,
 "33 " =>  17 ,
 "34 " =>  2 ,
 "35 " =>  10 ,
 "36 " =>  20 ,
 "37 " =>  1 ,
 "38 " =>  4 ,
 "39 " =>  15 ,
 "40 " =>  9 ,
 "41 " =>  1 ,
 "42 " =>  4 ,
 "43 " =>  6 ,
 "44 " =>  2 ,
 "45 " =>  8 ,
 "46 " =>  3 ,
 "47 " =>  2 ,
 "48 " =>  2 ,
 "49 " =>  1 ,
 "50 " =>  22 ,
 "51 " =>  48 ,
 "52 " =>  4 ,
 "53 " =>  12 ,
 "54 " =>  6 ,
 "55 " =>  18 ,
 "56 " =>  2 ,
 "57 " =>  1 ,
 "58 " =>  15 ,
 "59 " =>  6 ,
 "60 " =>  3 ,
 "61 " =>  38 ,
 "62 " =>  2 ,
 "63 " =>  1 ,
 "64 " =>  2 ,
 "65 " =>  25 ,
 "66 " =>  3 ,
 "67 " =>  5 ,
 "68 " =>  12 ,
 "69 " =>  10 ,
 "70 " =>  3 ,
 "71 " =>  5 ,
 "72 " =>  29 ,
 "73 " =>  7 ,
 "74 " =>  9 ,
 "75 " =>  12 ,
 "76 " =>  20 ,
 "77 " =>  16 ,
 "78 " =>  9 ,
 "79 " =>  1 ,
 "80 " =>  14 ,
 "81 " =>  16 ,
 "82 " =>  2 ,
 "83 " =>  3 ,
 "84 " =>  24 ,
 "85 " =>  8 ,
 "86 " =>  2 ,
 "87 " =>  4 ,
 "88 " =>  4 ,
 "89 " =>  4 ,
 "90 " =>  5 ,
 "91 " =>  40 ,
 "92 " =>  18 ,
 "93 " =>  3 ,
 "94 " =>  1 
);
$marka_j =  0 ;
foreach ($marka as $id => $weight)
{
for ($i= 0 ; $i < $weight; $i++)
	{
	$marka_array[$marka_j++] = $id;
	}
}


$time_query2_1 = get_microtime();

$max =  1000 ;
echo  "$max<br><br>" ;

for ($i= 0 ; $i<$max; $i++)
{
mt_srand((double)microtime() *  1000000 );
$marka_rand_num = mt_rand( 0 , $marka_j -  1 );
shuffle($marka_array);
$marka_o = $marka_array[$marka_rand_num];

$query_ =  " SELECT * FROM tb_model WHERE `id_marka`='$marka_o' " ;
$result_ = mysql_query($query_);
echo mysql_error();

$len=mysql_num_rows($result_)- 1 ;
for ($iii= 0 ; $iii<$len; $iii++)
	{
	$row_=mysql_fetch_array($result_);
	$mass[$iii]=stripslashes($row_[ "id_model" ]);
	}

mt_srand((double)microtime() *  1000000 );
$x=mt_rand( 0 , $len);
$model_o=$mass[$x];

$query= "SELECT `id`,`year`,`race`,`price`,`kuzov_id`,`fuel_id`,`korobka_id`,`power`,`color_id`,`par_10`,`handler`,`date_build`
 FROM tb_announcement WHERE marka_id='$marka_o' AND `model_id`='$model_o'" ;
$result = mysql_query($query);

}
$time_query2_2 = get_microtime();
$diff_query2 = abs ($time_query2_2 - $time_query2_1);
$diff_query2 = sprintf( "%.6f" , $diff_query2);
echo  "<br>$diff_query2 - sec." ;
$S_ps = $max / $diff_query2;
echo  "<br>$S_ps - Serch.per.sec." ;

$max_execution_time = ini_get( "max_execution_time" );
?>


Жду вариантов.
Дал похоже все что только можно для класного теста.
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32198034
BigHarry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>> Вам придется самим заполнить базу различными данными,
>> (только реальными). Это не так уж сложно.

Ты чего - издеваешься? Заполнить миллион записей да ещо и реальными данными? Откуда - из автокаталога их что-ли переписывать? У меня нету столько свободного времени... Ты либо тады дай скрипт, который сгенерит эти данные (но тады они не будут реальными), либо попробуй свою таблицу экспортнуть в текст, зажать и выложить на какой-нить фтп...
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32198746
medved
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я вот тоже не понимаю чего ты жмешь дамп? Там что какие-то нобелевские разработки?

Мне например влом сидеть и думать куда чего запихать... А если увижу твое быстро смогу сказать могу соптимизировать или буду брать самоотвод.

P.S.
Могу сказать что тебе стоит прочитать про то что выполняется ПХП-интерпретатором быстро а что медленно. Хотя конечно при больших запросах к базе это не существенно
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32198811
medved
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Реальные данные дать не могу так как ето 240 мегобайт различных
данных с большим разбросом доменов столбцов

Надо три таблицы? Их сжать и псе я не уверен что 1.000.000 записей в архиве трудно будет унести
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32198940
medved
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Скрипт ПХП забивает описаную базу фигней... Если кому надо

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
ini_set( "max_execution_time" ,  27200 );

$connect = mysql_connect ('localhost', 'root', 'root');
$link = mysql_select_db ('temp');
for($i= 0 ; $i< 97 ; $i++){
	mysql_query('insert into tb_marka set marka = "'.uniqid( "").'";');
}
for($i=0 ; $i< 1500 ; $i++){
	mysql_query('insert into tb_model set id_marka = "'.rand ( 0 ,  98 ).'", model = "'.uniqid(" ").'";');
}
for($i=0 ; $i< 1100000 ; $i++){
	mysql_query('
					insert into
							tb_announcement
					set
						  marka_id = '.($temp = rand ( 0 ,  98 )).',
						  model_id = '.($temp1 = rand ( 0 ,  1500 )).',
						  year = "'.date ("Y", mktime ( 0 ,  0 ,  0 ,  3 ,  27 ,  1980 +rand ( 1 ,  20 ))).'",
						  category_id = '.$temp.',
						  korobka_id = '.$temp.',
						  kuzov_id = '.$temp.',
						  fuel_id = '.$temp.',
						  color_id = '.$temp.',
						  power = '.$temp.',
						  race = '.$temp.',
						  price = '.$temp.',
						  price_diler = '.$temp.',
						  visible = 1,
						  par_01 = '.$temp.',
						  par_02 = '.$temp.',
						  par_03 = '.$temp.',
						  par_04 = '.$temp.',
						  par_05 = '.$temp.',
						  par_06 = '.$temp.',
						  par_07 = '.$temp.',
						  par_08 = '.$temp.',
						  par_09 = '.$temp.',
						  par_10 = '.$temp.',
						  par_11 = '.$temp.',
						  par_12 = '.$temp.',
						  par_13 = '.$temp.',
						  par_14 = '.$temp.',
						  par_15 = '.$temp.',
						  par_16 = '.$temp.',
						  par_17 = '.$temp.',
						  par_18 = '.$temp.',
						  par_19 = '.$temp.',
						  par_20 = '.$temp.',
						  par_21 = '.$temp.',
						  par_22 = '.$temp.',
						  par_23 = '.$temp.',
						  par_24 = '.$temp.',
						  par_25 = '.$temp.',
						  par_26 = '.$temp.',
						  par_27 = '.$temp.',
						  par_28 = '.$temp.',
						  par_29 = '.$temp.',
						  par_30 = '.$temp.',
						  date_build = '.$temp1.',
						  expire = '.$temp1.',
						  user_id = '.$temp1.',
						  handler = '.$temp.',
						  first = '.$temp.',
						  zip = '.$temp1.',
						  country = '.$temp1.',
						  statistic = '.$temp1.';');
	
}
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32198989
medved
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Данный тобой скрипт убивает мой XP к черту......
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32199004
medved
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕСЛИ ЭТА ЧАСТЬ СКРИПТА НАПИСАНА ДЛЯ ТОГО ЧТО БЫ ВЫБИРАТЬ СЛУЧАЙНУЮ ЗАПИСЬ ТО ВАМ МОЛОДОЙ ЧЕЛОВЕК В РАЗДЕЛ "FAQ" на www.mysql.com

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
$marka_j =  0 ;
foreach ($marka as $id => $weight)
{
for ($i= 0 ; $i < $weight; $i++)
	{
	$marka_array[$marka_j++] = $id;
	}
}


$time_query2_1 = get_microtime();

$max =  1000 ;
echo  "$max<br><br>" ;

for ($i= 0 ; $i<$max; $i++)
{
mt_srand((double)microtime() *  1000000 );
$marka_rand_num = mt_rand( 0 , $marka_j -  1 );
shuffle($marka_array);
$marka_o = $marka_array[$marka_rand_num];
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32199019
medved
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообщем убираем лишний гемморой...
Получаем.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
<?
function getmicrotime(){ list($usec, $sec) = explode( " " ,microtime()); return ((float)$usec + (float)$sec); }

$old_max_execution_time = ini_set( "max_execution_time" ,  17200 );

$connect = mysql_connect ('localhost', 'root', 'root');
$link = mysql_select_db ('temp');

$max =  1000 ;
$st_t = getmicrotime();
echo  "$max<br><br>" ;
for ($i= 0 ; $i<$max; $i++){

	//Берем случайную модель
	$m_result = mysql_query( "SELECT id_model FROM tb_model ORDER BY RAND() LIMIT 0 ,  1 ;");
	echo mysql_error();

	//Берем случайную марку
	$ma_result = mysql_query( "SELECT id_marka FROM tb_marka ORDER BY RAND() LIMIT 0 ,  1 ;");
	echo mysql_error();

	//Выбираем записи
	$result = mysql_query('SELECT id, year, race, price, kuzov_id, fuel_id, korobka_id, power, color_id, par_10, handler, date_build FROM tb_announcement WHERE marka_id="'.mysql_result($m_result, 'id_model',  0 ).'" AND model_id="'.mysql_result($m_result, 'id_marka',  0 ).'"');
	echo mysql_error();

	mysql_free_result ($m_result);
	mysql_free_result ($ma_result);
	mysql_free_result ($result);
}
$end_t = getmicrotime();
printf( "%.6f" , $end_t-$st_t);
?>

Получаем:
Среднее время запроса - 6,9829139.

Добавляем индексы по marka_id, model_id.
Получаем:
Среднее время запроса - 0,019096249.

Есть еще пара идей как разнести эту базу нах - но писать и думать неохота
ибо ИМХО чел ламер
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32199352
aleksey_24
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
medved: Сам ты ламер!
На какой ты машине тестировался?
У тебя скорость выборки 0,019 сек как я понял
У меня 0,0055 сек что бы ты знал!
Получаеться в 3,45 раза быстрее.
Я тестировался на 1500Mhz PIII 512BM

А то что ты функции рендом.. (RAND()) или какие то ещё используешь в MySQL ето твои проблемы, я использую их аналоги в PHP.
Слушай почему - у меня интерпритатор PHP стоит на отдельной машине, MySQL на другой, - вопрос (НАХЕРА мне грузить машину с MySQL лишними вычислениями?)
Так кто из нас ламер?

Тестирование продолжаеться!

А забить базу данными проще простого.
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32199365
aleksey_24
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ребята не тупите, я ведь и не хотел давать сразу же свю базу, темболее с данными (хотя они вообще не конфиденциальны) для чистоты эксперимента!!!
Ясно!
И все индексы, хуиндексы тоже, а може нужно было сказать с какими ключами я запускаю MySQL, или как я компилировал свою базу - с какими параметрами!!!
Зачем это?
Это же станет не интересно.
Вы что никогда не занимались серьезными проектами, где работают несколько групп совершенно раздельно, а потом уже соеденяют воедино свои результаты.
Так сделаем и мы.

Жду.
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32199526
medved
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>medved: Сам ты ламер!
Ну дак конечно..
А ты не ламер - ты смешной ламер.

>На какой ты машине тестировался?
PII 400Mhz 384MB

>У тебя скорость выборки 0,019 сек как я понял
>У меня 0,0055 сек что бы ты знал!
Грызу стол от зависти.

>Получаеться в 3,45 раза быстрее.
Ну тормознее у меня машинка, тормознее. Долго кстати оптимизировал?
Кстати от версии мускула тоже много зависит. У меня 4.0.12

>А то что ты функции рендом.. (RAND()) или какие то ещё используешь в >MySQL ето твои проблемы, я использую их аналоги в PHP.
Вот именно поэтому ты ламер.

>Слушай почему - у меня интерпритатор PHP стоит на отдельной машине, >MySQL на другой, - вопрос (НАХЕРА мне грузить машину с MySQL лишними >вычислениями?)
Даже если ты не хочешь "грузить" машину лишними вычислениями, то такой скрипт все равно ни к черту. PHP - версия какая?

>Так кто из нас ламер?
Не я.

>Ребята не тупите, я ведь и не хотел давать сразу же свю базу, темболее с >данными (хотя они вообще не конфиденциальны) для чистоты эксперимента!!!
Мы не тупим. (ну лично я например)

>И все индексы, хуиндексы тоже, а може нужно было сказать с какими >ключами я запускаю MySQL, или как я компилировал свою базу - с какими >параметрами!!!
Мы чего в угадай мелодию играем? Интересно ты под Win2k MySQL билдил? Герой.

>хуиндексы
Учись Киса, грамотно излагает.

>Вы что никогда не занимались серьезными проектами, где работают >несколько групп совершенно раздельно, а потом уже соеденяют воедино >свои результаты.
Лично я занимался... Только ко мне не приходили и не говорили слышь у меня база конфетка - угадай как я это сделал.

>Так сделаем и мы.
Ню-ню
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32199557
aleksey_24
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так я и не прошу что бы ты мелодии угадывал!

Что ты нервничаешь?

Принципиально на этом проекте невыгодно использовать SQL вычисления.
Почему - уже сказал.

>Лично я занимался... Только ко мне не приходили и не говорили слышь у >меня база конфетка - угадай как я это сделал.
Я уже сказал - что борюсь за чистоту эксперимента. Это помоему логично.
Таким способом у людей должно больше Свежих идей появляться. Если подходить ко всему нормально и со здоровым интересом!

>Так кто из нас ламер?
>Не я.
И не я.

Ответь ка на вопрос используешь ли ты LIMIT в запросах?
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32199582
BigHarry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Начались наезды и прочая ботва... Мало нам пустых переливаний по теме "МуSQL vs все-другие-сервера"...
И автор топика какой-то больно агрессивный...
Что-то не хочется принимать в этом участие, как и ходить на http://forum.webcommand.ru/
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32199583
medved
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Так я и не прошу что бы ты мелодии угадывал!
Лано-лано. Будем угадывать ключи запуска мускула.

>Что ты нервничаешь?
Что ты, что ты. Да я вместе с коллегами на полу валяюсь - токо не подумай что от смеха - все от зависти. 3,5 раза не хухры мухры.
Вопрос ты все хостить где-то будешь?

>Принципиально на этом проекте невыгодно использовать SQL вычисления.
>Почему - уже сказал.
Я тоже сказал почему.

>Я уже сказал - что борюсь за чистоту эксперимента. Это помоему логично.
Какая нахрен чистота эксперимента? У тя конструкция по выбору случаной мари или модел занимает секунды две. (Так что ты меня на 3.5 раза сделал, а больше, больше).

>Таким способом у людей должно больше Свежих идей появляться. Если подходить ко всему нормально и со здоровым интересом!
Ну не знаю.. Не согласен. Таким способом у людей все что угодно кроме интереса и свежих идей появляться должно

>И не я.
Ну кто то из нас двоих ламер...

>Ответь ка на вопрос используешь ли ты LIMIT в запросах
Мои запросы посмотри внимательно...

P.S. Вообщем так предлагаю не флудить. Ты можешь "оптимизировать" досыта, я беру самоотвод.

P.P.S. Прекрати флудить своим форумом.

P.P.P.S. Если никто не будет продолжать тему - это не значит что ты умнее всех на этом форуме.
...
Рейтинг: 0 / 0
Какова у вас cкорость поиска???
    #32199599
medved
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BigHarry:
I'm sorry. Я больше не буду.. Приношу извинения.

Мы тут фирмой просто посмеялись чуток обещаю перенести дальнейшее обсуждение к нему на форум..
...
Рейтинг: 0 / 0
25 сообщений из 26, страница 1 из 2
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Какова у вас cкорость поиска???
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]