powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / А может ну его нафиг MS SQL и да здравствуют базы No SQL?
25 сообщений из 169, страница 4 из 7
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646634
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vvmС производительностью. Чем больше ("левых") соединений - тем обычно она хуже.

Ну так EAV сводит количество таблиц к минимуму. Соответственно падает и число соединений.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646647
locky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovvvmС производительностью. Чем больше ("левых") соединений - тем обычно она хуже.

Ну так EAV сводит количество таблиц к минимуму. Соответственно падает и число соединений.

Вообще-то, число соединений при EAV как раз возрастает, и, местами, очень даже неслабо
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646656
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lockyВообще-то, число соединений при EAV как раз возрастает, и, местами, очень даже неслабо

Может возрастать. А может и не возрастать. Зависит от распределения работы между клиентом
и сервером.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646657
locky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovlockyВообще-то, число соединений при EAV как раз возрастает, и, местами, очень даже неслабо

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

ну.... я апологет обработки данных всё-таки на стороне сервера
так что при моём подходе - таки возрастает
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646663
vvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovlockyВообще-то, число соединений при EAV как раз возрастает, и, местами, очень даже неслабо

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

Расскажи немного.
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646675
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lockyну.... я апологет обработки данных всё-таки на стороне сервера

Ну а я наоборот - не люблю громоздить многоэтажные запросы только для того, чтобы
сэкономить десяток строк на клиентской стороне.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646703
locky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakovlockyну.... я апологет обработки данных всё-таки на стороне сервера

Ну а я наоборот - не люблю громоздить многоэтажные запросы только для того, чтобы
сэкономить десяток строк на клиентской стороне.

Хм. ни разу не получалось сэкономить на клиентской стороне, если честно

Можно пример?
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646708
vvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
locky, ну пример, вовсе не обязательно сервер заставлять представлять данные в виде таблички.
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646711
locky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vvmlocky, ну пример, вовсе не обязательно сервер заставлять представлять данные в виде таблички.
э..... а зачем это надо-то?
Т.е. - кто это делает то?
Кому это надо? Серверу? зачем?
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646717
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lockyэ..... а зачем это надо-то?
Т.е. - кто это делает то?
Ну например те, кто привык к классической модели. В ней получение атрибутов объекта
выглядит как
Код: sql
1.
select a,b,c from o where id=:id


При прямой переделке в EAV это будет выглядеть как
Код: sql
1.
2.
3.
4.
5.
 select a1.v as a, a2.v as b, a3.v as c
  from o left join a a1 on o.id=a1.id and a1.atr='a'
   left join  a a2 on o.id=a2.id and a2.atr='b'
   left join  a a3 on o.id=a3.id and a3.atr='c'
  where o.id=:id


А можно получать этот же набор атрибутов как
Код: sql
1.
2.
select atr,v from o left join a on o.id=a.id
  where o.id=:id


При этом клиентский код получается длиннее, но джоинов - меньше.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646720
vvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
locky, ну, все нужно клиенту, конечно.

Тебе вот какая разница, как выглядит транспортный протокол при пересылке итоговой выборки? Никакой. Главное, получить привычный тебе набор данных, пригодный для обработки.

Предположим, сервер должен вернуть выборку в виде из трех полей (А1, А2, А2), в выборке - 2 записи.
Какая юзеру разница, что перешлет вернет сервер - действительно два пакета ("записи") по три поля, или шесть пакетов по одному?
Юзеру - никакой, он хочет видеть три поля в гриде, а в гриде должно быть две строки.
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646723
vvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин, ДС пишет в пять раз быстрее...
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646727
vvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakovlockyэ..... а зачем это надо-то?
Т.е. - кто это делает то?
Ну например те, кто привык к классической модели. В ней получение атрибутов объекта
выглядит как
Код: sql
1.
select a,b,c from o where id=:id


При прямой переделке в EAV это будет выглядеть как
Код: sql
1.
2.
3.
4.
5.
 select a1.v as a, a2.v as b, a3.v as c
  from o left join a a1 on o.id=a1.id and a1.atr='a'
   left join  a a2 on o.id=a2.id and a2.atr='b'
   left join  a a3 on o.id=a3.id and a3.atr='c'
  where o.id=:id


А можно получать этот же набор атрибутов как
Код: sql
1.
2.
select atr,v from o left join a on o.id=a.id
  where o.id=:id


При этом клиентский код получается длиннее, но джоинов - меньше.

А ты сравнивал производительность того и другого вариантов? На нашем любимом FB?

Я когда-то на первом варианте зациклился, ничего хорошего не вышло (вернее, тормоза быстро появлялись), стали использовать комбинацию EAV + разреженные таблицы.
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646730
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vvmА ты сравнивал производительность того и другого вариантов? На нашем любимом FB?

Я никогда даже не пытался воспользоваться первым вариантом. На четвёрке три левых джоина в
запросе срывали оптимизатору крышу и вгоняли сервер практически в ступор.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646731
locky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakovlockyэ..... а зачем это надо-то?
Т.е. - кто это делает то?
Ну например те, кто привык к классической модели. В ней получение атрибутов объекта
выглядит как
Код: sql
1.
select a,b,c from o where id=:id


При прямой переделке в EAV это будет выглядеть как
Код: sql
1.
2.
3.
4.
5.
 select a1.v as a, a2.v as b, a3.v as c
  from o left join a a1 on o.id=a1.id and a1.atr='a'
   left join  a a2 on o.id=a2.id and a2.atr='b'
   left join  a a3 on o.id=a3.id and a3.atr='c'
  where o.id=:id


А можно получать этот же набор атрибутов как
Код: sql
1.
2.
select atr,v from o left join a on o.id=a.id
  where o.id=:id


При этом клиентский код получается длиннее, но джоинов - меньше.

А, в этом смысле.....
Ну да, в принципе, можно сэкономить "нас спичках".
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646735
vvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А я с FB 2.0 (бетой) тестировал. Жить какое-то время можно было, но в итоге не выжили бы: сейчас есть клиенты, у которых больше сотни разных атрибутов.

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

А сейчас бы по пути второго варианта пошел: кодить запросы проще.

О... тут бы триггеры "на поле" появились... :)
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646736
vvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
locky...
Ну да, в принципе, можно сэкономить "нас спичках".
Ну-ну.
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646738
locky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vvmlocky...
Ну да, в принципе, можно сэкономить "нас спичках".
Ну-ну.
ну да. Выборка данных для отображению клиенту это не наиболее частая операция, и, как правило, использует крайне простые планы.
Я не могу говорить о том, как это происходит в огнептице, скажем, но для скуля это вполне тривиальный и очень быстрый и нересурсоемкий запрос. Особенно если пнуть оптимизатор в нужную сторону :)
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646739
vvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov, а ты с разными типами данных как разбираешься?
Ну, физически ты их как хранишь, например, в отдельных табличках для каждого типа или еще как?
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646742
vvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lockyvvmпропущено...

Ну-ну.
ну да. Выборка данных для отображению клиенту это не наиболее частая операция, и, как правило, использует крайне простые планы.
Я не могу говорить о том, как это происходит в огнептице, скажем, но для скуля это вполне тривиальный и очень быстрый и нересурсоемкий запрос. Особенно если пнуть оптимизатор в нужную сторону :)
Не, для птички много левых джонов == постепенное удушение.
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646749
locky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vvmlockyпропущено...

ну да. Выборка данных для отображению клиенту это не наиболее частая операция, и, как правило, использует крайне простые планы.
Я не могу говорить о том, как это происходит в огнептице, скажем, но для скуля это вполне тривиальный и очень быстрый и нересурсоемкий запрос. Особенно если пнуть оптимизатор в нужную сторону :)
Не, для птички много левых джонов == постепенное удушение.
а что нить типа force order + loop join поставить можно?
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646752
vvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lockyvvmпропущено...

Не, для птички много левых джонов == постепенное удушение.
а что нить типа force order + loop join поставить можно?
Кое-как рулить оптимизатором запросов можно.
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646754
locky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vvmlockyпропущено...

а что нить типа force order + loop join поставить можно?
Кое-как рулить оптимизатором запросов можно.
Значит - и нужно.
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646756
vvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lockyvvmпропущено...

Кое-как рулить оптимизатором запросов можно.
Значит - и нужно.

Исполать тебе, Локи, за совет ценный да своевременный.
...
Рейтинг: 0 / 0
А может ну его нафиг MS SQL и да здравствуют базы No SQL?
    #37646757
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lockyа что нить типа force order + loop join поставить можно?

Не нужно. Это дефолтный план для джоинов. От него труднее избавиться.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
25 сообщений из 169, страница 4 из 7
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / А может ну его нафиг MS SQL и да здравствуют базы No SQL?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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