|
|
|
Есть разница в скорости поиска через предсталвение и таблицу?
|
|||
|---|---|---|---|
|
#18+
Есть таблица, где время, ip и mac хранятся ввиде целых цисел. А так же есть представление, которое собирает и показывает это в понятном человеку виде Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. База достаточно огромная, и встает вопрос из сабжа: Есть разница в скорости поска через представление и непосредственно черещ таблицу? Какой из вариантов будет работать быстрее? Сейчас проверить не могу т.к. данных пока ноль, но надо продолжать пистаь обработчик. Какой вариант предпочтительнее? 1. select * from ArpView where ip = '10.1.56.1'; 2. select FROM_UNIXTIME(recdate), INET_NTOA(ip_address), CONV(mac_address,10,16) FROM ArpCollector where INET_NTOA(ip_address) = '62.165.56.1'; 3. select * FROM ArpCollector where INET_NTOA(ip_address) = '10.1.56.1'; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2014, 12:49:47 |
|
||
|
Есть разница в скорости поиска через предсталвение и таблицу?
|
|||
|---|---|---|---|
|
#18+
DeeZ, я бы эти преобразования видов делал на клиенте, а не в базе. А VIEW без острой необходимости использовать не советовал бы. См. View Processing Algorithms ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2014, 13:03:38 |
|
||
|
Есть разница в скорости поиска через предсталвение и таблицу?
|
|||
|---|---|---|---|
|
#18+
База достаточно огромная, и встает вопрос из сабжа: Есть разница в скорости поска через представление и непосредственно черещ таблицу? Нет. В данном случае. Какой из вариантов будет работать быстрее? В данном случае без разницы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2014, 13:15:58 |
|
||
|
Есть разница в скорости поиска через предсталвение и таблицу?
|
|||
|---|---|---|---|
|
#18+
MasterZivКакой из вариантов будет работать быстрее? В данном случае без разницы.При чем не просто "без разницы", а одинаково плохо. Не будет использоваться индекс по полю ip_address. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2014, 13:21:03 |
|
||
|
Есть разница в скорости поиска через предсталвение и таблицу?
|
|||
|---|---|---|---|
|
#18+
MasterZivНет. В данном случае. В данном случае? что то не так? или речь о данном случае с 2 строками в базе? ЗЫЖ ip_address, mac_address - индексируются, просто не указал это ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2014, 13:21:33 |
|
||
|
Есть разница в скорости поиска через предсталвение и таблицу?
|
|||
|---|---|---|---|
|
#18+
miksoftПри чем не просто "без разницы", а одинаково плохо. Не будет использоваться индекс по полю ip_address. не очень понял. Если вы о том что индекса нет - я просто не указал. он есть ALTER TABLE ArpCollector ADD INDEX `arp` (`ip_address` ASC, `mac_address` ASC, `int` ASC) ; Или имено в моем запросе что то не так? если в запросе, подскажите что изменить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2014, 13:24:50 |
|
||
|
Есть разница в скорости поиска через предсталвение и таблицу?
|
|||
|---|---|---|---|
|
#18+
DeeZmiksoftПри чем не просто "без разницы", а одинаково плохо. Не будет использоваться индекс по полю ip_address. не очень понял. Если вы о том что индекса нет - я просто не указал. он есть ALTER TABLE ArpCollector ADD INDEX `arp` (`ip_address` ASC, `mac_address` ASC, `int` ASC) ; Или имено в моем запросе что то не так? если в запросе, подскажите что изменить?Вы это поле используете в качестве аргумента функции, так индекс использоваться не может. Вынесите поле ip_address из функции. Примерно так: Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2014, 13:30:39 |
|
||
|
Есть разница в скорости поиска через предсталвение и таблицу?
|
|||
|---|---|---|---|
|
#18+
miksoftВы это поле используете в качестве аргумента функции, так индекс использоваться не может. Спаисбо, ценное замечание :) изменю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2014, 13:37:04 |
|
||
|
Есть разница в скорости поиска через предсталвение и таблицу?
|
|||
|---|---|---|---|
|
#18+
если сильно волнует быстодействие, я добавил еще одно поле bigint и хранил там ip в виде aaa*1000 000 000 +bbb*1000 000+ccc*1000+ddd и нагдядно и индексируется лучше чем текстовое ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2014, 13:40:48 |
|
||
|
Есть разница в скорости поиска через предсталвение и таблицу?
|
|||
|---|---|---|---|
|
#18+
вадяиндексируется лучше чем текстовоеС чего бы? Да и если хранить в числовом виде, то 4-х байтовый INT и компактнее, и больше операций позволят производить при необходимости. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2014, 13:44:05 |
|
||
|
Есть разница в скорости поиска через предсталвение и таблицу?
|
|||
|---|---|---|---|
|
#18+
вадяесли сильно волнует быстодействие, я добавил еще одно поле bigint и хранил там ip в виде aaa*1000 000 000 +bbb*1000 000+ccc*1000+ddd и нагдядно и индексируется лучше чем текстовоеизвините, а нахрена, если у вас уже есть поле с целочисленным представлением айпи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2014, 13:47:27 |
|
||
|
Есть разница в скорости поиска через предсталвение и таблицу?
|
|||
|---|---|---|---|
|
#18+
DeeZMasterZivНет. В данном случае. В данном случае? что то не так? или речь о данном случае с 2 строками в базе? ЗЫЖ ip_address, mac_address - индексируются, просто не указал это Я не знаю, что ты спрашиваешь. Ещё раз -- Вопрос: "Есть разница в скорости поска через представление и непосредственно через таблицу" Ответ: "Нет". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2014, 14:40:46 |
|
||
|
Есть разница в скорости поиска через предсталвение и таблицу?
|
|||
|---|---|---|---|
|
#18+
вадяесли сильно волнует быстодействие, я добавил еще одно поле bigint и хранил там ip в виде aaa*1000 000 000 +bbb*1000 000+ccc*1000+ddd и нагдядно и индексируется лучше чем текстовое А почему бы не хранить IP адрес как есть, в виде числа ? IPадрес -- это 4байтное число. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2014, 14:41:58 |
|
||
|
Есть разница в скорости поиска через предсталвение и таблицу?
|
|||
|---|---|---|---|
|
#18+
ок, переделываю view так: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. И с учетом рекомендация, будет ли разница в скорости обработки? 1. select recdate,ip,mac from ArpView where ip_address = INET_ATON('10.1.56.1'); 2. select FROM_UNIXTIME(recdate), INET_NTOA(ip_address), CONV(mac_address,10,16) FROM ArpCollector where ip_address = INET_ATON('10.1.56.1'); 3. select * FROM ArpCollector where ip_address = INET_ATON('10.1.56.1'); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2014, 14:43:19 |
|
||
|
Есть разница в скорости поиска через предсталвение и таблицу?
|
|||
|---|---|---|---|
|
#18+
MasterZivЕщё раз -- Вопрос: "Есть разница в скорости поска через представление и непосредственно через таблицу" Ответ: "Нет".Не совсем так. В общем случае VIEW либо одинаковы, либо медленнее, чем прямой запрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2014, 14:43:26 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=38590669&tid=1835102]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
66ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
| others: | 218ms |
| total: | 384ms |

| 0 / 0 |
