powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Переход с mysql на mssql Express Edition
66 сообщений из 66, показаны все 3 страниц
Переход с mysql на mssql Express Edition
    #38391686
darlov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброе время суток. Подскажите пожалуйста, пишу информационный портал для предприятия, это мой первый такого рода проект, пишу на mysql, объем данных предполагается обрабатывать большой, к примеру если брать самую большую таблицу, то там будет несколько сот миллионов записей в год. Почитав отзывы специалистов, пришел к выводу, что mysql не рассчитан на работу с таким объемом. Решил перейти на msSQL Express Edition пока не запустил проект в продакшн. Вопрос, верны мои доводы? и на сколько сильно отличается синтаксис запросов mysql с mssql?
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38391708
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
darlovПочитав отзывы специалистов, пришел к выводу, что mysql не рассчитан на работу с таким объемом.
Попробуйте почитать отзывы не только специалистов, которые полагают, что MySQL не предназначен для таких объёмов, но и тех. кто полагает, что для MySQL это фигня, а не объёмы...

darlovРешил перейти на msSQL Express Edition
Чёблин? то есть экспресс-версия, кастрированная поделка для локальных моделирований, будет по-твоему более адаптирована к экстремальным нагрузкам, чем полнофункциональный, пусть и свобонораспространяемый, сервер? ну-ну...

darlovна сколько сильно отличается синтаксис запросов mysql с mssql?
Охренительно.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38391717
darlov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina, вы меня немного успокоили.
Назрел вопрос, в чем преимущества mssql от mysql, откинув версию Express Edition. За что люди платят деньги?
Читал что в mssql много инструментов создано и что много уже подготовлено для разработчика в создании различных идей. А в mysql нужно создавать все самому. Если все это откинуть и сравнивать только скорость запросов, объемы и типы хранение данных. Как с эти обстоят дела?
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38391768
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Различия между MS SQL и MySQL - я лично описывать его не возьмусь. Да и отличия MS SQL от MS SQL Express тоже - впрочем, вот это есть на сайте производителя.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38391784
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
darlov, а почему именно мсскл, а не оракл? :) а в сторону постгреса вы вообще не смотрели?
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38391791
darlov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я выбираю из Free SQL,в сторону postgresql тоже смотрю. Никогда не работал на mssql и oracle т.к. они стоят уйму денег, и мне просто интересно за что конкретно платятся такие деньги? Если откинуть все доп инструменты для облегчения разработки БД, а взять просто скорость запросов и хранения данных.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38391794
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
darlovПочитав отзывы специалистов, пришел к выводу, что mysql не рассчитан на работу с таким объемом.Не "не рассчитан", а редко используется для работы с такими объемами. Поэтому и специалистов мало, которые умеют готовить такие объемы в MySQL.

darlovРешил перейти на msSQL Express Edition пока не запустил проект в продакшн. Вопрос, верны мои доводы? и на сколько сильно отличается синтаксис запросов mysql с mssql?У MS SQL XE есть технические ограничения на объем данных. Ознакомьтесь с ними. Точных значений я не помню, но сомневаюсь, что ваши объемы впишутся в эти ограничения.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38391797
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
darlovНикогда не работал на mssql и oracle т.к. они стоят уйму денег, и мне просто интересно за что конкретно платятся такие деньги? Если откинуть все доп инструменты для облегчения разработки БД, а взять просто скорость запросов и хранения данных.Не существует абстрактной скорости запросов. У всех СУБД что-то работает быстрее, что-то медленнее. "Самой быстрой СУБД" не существует.


Поскольку тема разрослась вширь, топик переношу.

Модератор: Тема перенесена из форума "MySQL".
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38391803
qwerty112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoftУ MS SQL XE есть технические ограничения на объем данных. Ознакомьтесь с ними. Точных значений я не помню, но сомневаюсь, что ваши объемы впишутся в эти ограничения.
10 Гб на БД
Возможности, поддерживаемые различными выпусками SQL Server 2012
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38391813
Фотография Ggg_old
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
деньги платят за качество, за оптимизатор, за возможность работы под многопользовательской нагрузкой, за поддержку и развитие и за много чего, чего напрямую не измеришь и в табличку фич не сведешь.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38391854
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
darlovесли брать самую большую таблицу, то там будет несколько сот миллионов записей в год.
qwerty11210 Гб на БДслабо согласуется, учитывая, что такая таблица скорее всего не одна
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38391865
darlov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tanglirdarlovесли брать самую большую таблицу, то там будет несколько сот миллионов записей в год.
qwerty11210 Гб на БДслабо согласуется, учитывая, что такая таблица скорее всего не одна
Ну да, msSQL Express Edition мне не подходит, буду смотреть в сторону PostgreSQL. Как описывают ее, что он более приспособлена к хранению большого объема данных чем mysql, и производительность выше.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38392009
Andrey Sribnyak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38392338
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey Sribnyak http://blogs.msdn.com/b/alexejs/archive/2009/06/17/mysql-sql-express-i-odbc.aspx чего-то там с картинками проблемы (хотя может и у меня)
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38392358
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tanglirdarlovесли брать самую большую таблицу, то там будет несколько сот миллионов записей в год.
qwerty11210 Гб на БДслабо согласуется, учитывая, что такая таблица скорее всего не одна

Но никто ограничивает ТС только одной бд, размером до 10 Гб.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38392360
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinНо никто ограничивает ТС только одной бд, размером до 10 Гб.
читать как
pkarklinНо никто не ограничивает ТС только одной бд, размером до 10 Гб.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38392744
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если уж так сильно хочет "солидной большой тройки", то DB2 ExpressC ограничена 15 терабайтами, двумя ядрами и четырьмя гигабайтами.
Уж всяко лучше, чем пилить базы и дрожать - ещё влезает или уже нет?
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38392948
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovЕсли уж так сильно хочет "солидной большой тройки", то DB2 ExpressC ограничена 15 терабайтами , двумя ядрами и четырьмя гигабайтами.

А почему не 13тью или 17тью? Я еще могу предположить корреляцию 10к1му в части "активных данных" от общего размера бд, которые могут быть помещены в буферный пул, но чтоб 15 000 к 4м...
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38393371
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
darlovРешил перейти на msSQL Express Edition пока не запустил проект в продакшн. Вопрос, верны мои доводы? и на сколько сильно отличается синтаксис запросов mysql с mssql?

Не верны.
Если нет денег, то выбирать можно, например, м/у MySQL и PostgreSQL.
У каждой БД есть свои плюсы и минусы.
Мне PG нравиться больше, но для MySQL готовых решений больше.

Так что не задумывайтесь используйте MySQL...
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38394085
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinА почему не 13тью или 17тью?А почему вы задаёте этот вопрос мне, а не IBM?
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38394090
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovА почему вы задаёте этот вопрос мне, а не IBM?

Потому что Вы привели эту цифру в этом обсуждении, а не IBM.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38394552
Фотография Andron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если автор хочет сэкономить денег на лицензии, то конечно пусть берет MySQL (а еще лучше форк типа MariaDB ), PostgreSQL или например Cubrid .
А если еще хочет чтобы это было не OpenSource то велком на бесплатные версии DB2 Express-C (никаких ограничений на размер базы, уже 16Gb ОЗУ и 2 ядра), либо Informix Innovator-C (примерно аналогичные ограничения).
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395134
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinПотому что Вы привели эту цифру в этом обсуждении, а не IBM.Я озвучил текущие ограничения. В предыдущих версиях ограничения на размер базы ExpressC вообще не было.
Тоже предложите мне объяснить, почему IBM только сейчас заморочилась ограничением размера базы для бесплатной редакции?
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395141
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovЯ озвучил текущие ограничения. В предыдущих версиях ограничения на размер базы ExpressC вообще не было.
Тоже предложите мне объяснить, почему IBM только сейчас заморочилась ограничением размера базы для бесплатной редакции?
Здесь, как бы дискуссионная площадка. Ваше бы мнение могло бы быть интересным. Например, будет ли кто-нибудь держать 15ти терабайтную базу на бесплатной редакции?
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395150
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinНапример, будет ли кто-нибудь держать 15ти терабайтную базу на бесплатной редакции?Вот как раз сегодня я забыл пятнадцать терабайт в других брюках.
Гораздо интереснее другой вопрос: "Что делать, если база ещё не доросла до терабайта, но уже переросла одиннадцать гигабайт?"
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395162
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovГораздо интереснее другой вопрос: "Что делать, если база ещё не доросла до терабайта, но уже переросла одиннадцать гигабайт?"

Использовать платные версии.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395184
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinИспользовать платные версии.У вас такой дар - говорить неочевидные банальности?

P.S. Если разработка начинается на бесплатной версии, то гораздо более разумным выглядит выбор бесплатной СУБД с "более правильными ограничениями" или вообще без оных.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395198
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. SidorovЕсли разработка начинается на бесплатной версии, то гораздо более разумным выглядит выбор бесплатной СУБД с "более правильными ограничениями" или вообще без оных.

Да, да, да... Разрабатывали по DB2 Express, а выбрали PG? Чудно у Вас получается...
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395208
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinДа, да, да... Разрабатывали по DB2 Express, а выбрали PG?
А почему бы и нет? Современные "программисты" всё равно использую ADO и прочие
универсальные обёртки, так что остаётся только подточить запросы и сменить строку подключения.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395211
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovА почему бы и нет? Современные "программисты" всё равно использую ADO и прочие
универсальные обёртки, так что остаётся только подточить запросы и сменить строку подключения.

Боже упаси от таких "программистов" и от их поделок.

ЗЫ. Да и подтачивать, порой, придется сильно. Подточите, например T-SQLские TOP(N) и UPDATE ... FROM ... под, скажем, Oracle. А если еще запросы зашиты в клиента\апп. сервер, то это совсем мама дорогая....
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395214
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinT-SQLские TOP(N) и UPDATE ... FROM ...
Упаси боже от идиотов, использующих такие кривоконструкции вообще.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395218
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovpkarklinT-SQLские TOP(N) и UPDATE ... FROM ...
Упаси боже от идиотов, использующих такие кривоконструкции вообще.


Дмитрий, слишком толсто. Многие СУБД сейчас поддерживают следующий синтаксис

Код: sql
1.
2.
SELECT person_id, person_name, age FROM person
FETCH FIRST 1 ROWS ONLY



из ANSI/ISO SQL:2008?
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395223
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinМногие СУБД сейчас поддерживают следующий синтаксис из ANSI/ISO
SQL:2008?
Я знаю ровно две. Но даже если идиотизм занесён в стандарт это его не уменьшает. Эта
конструкция всего лишь прогиб под тех, кто не в силах сформулировать вменяемые условия во
WHERE.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395229
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovНо даже если идиотизм занесён в стандарт это его не уменьшает.

Дмитрий, Вы как всегда, бесподобны.

Dimitry SibiryakovЭта конструкция всего лишь прогиб под тех, кто не в силах сформулировать вменяемые условия во
WHERE.

Приведите пример.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395234
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinПриведите пример.
Типичный пример использования это фигни - разнообразные "ТОП 10". "Десять человек с
наибольшей зарплатой в отделе". Говнокодеры просто неспособны взять первые 10 записей из
резалт-сета, поэтому сваливают проблему со своей головы на здоровую. Говнозаказчики не в
состоянии сформулировать хотелку "люди с зарплатой выше средней". В морг.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395235
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovТипичный пример использования это фигни - разнообразные "ТОП 10". "Десять человек с
наибольшей зарплатой в отделе". Говнокодеры просто неспособны взять первые 10 записей из
резалт-сета, поэтому сваливают проблему со своей головы на здоровую. Говнозаказчики не в
состоянии сформулировать хотелку "люди с зарплатой выше средней". В морг.


Покажите, что вы не говнокодер!
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395237
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

И да, иногда, за поучение "бизнеса", чему его формулировать неговнокодеры получают пинком под зад.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395238
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinПокажите, что вы не говнокодер!
Показать как ограничить фетч записей на клиента? Вы сами неспособны придумать способ
вызова функции fetch() только нужное число раз?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395240
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinИ да, иногда, за поучение "бизнеса", чему его формулировать неговнокодеры
получают пинком под зад.
Гораздо чаще неговнокодеры просто держатся от такого "бизнеса" подальше.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395241
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovpkarklinПокажите, что вы не говнокодер!
Показать как ограничить фетч записей на клиента? Вы сами неспособны придумать способ
вызова функции fetch() только нужное число раз?..А если это не фетч, а подзапрос?
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395243
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftА если это не фетч, а подзапрос?
А осмысленный пример привести?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395245
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovПоказать как ограничить фетч записей на клиента? Вы сами неспособны придумать способ
вызова функции fetch() только нужное число раз?..


Нет, у меня "ума не хватит" додуматься до того, чтобы заставить сервер сформировать многомиллионный резалтсет, а потом ограничить феч записей на клиенте.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395248
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinу меня "ума не хватит" додуматься до того, чтобы заставить сервер
сформировать многомиллионный резалтсет, а потом ограничить феч записей на клиенте.
Ну так я Вам открою маленький секрет: резалтсет в этом случае и не формируется целиком,
только те записи, которые действительно клиентом запрошены.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395249
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovmiksoftА если это не фетч, а подзапрос?
А осмысленный пример привести?..Взять топ-100 наиболее прибыльных товаров и приджойнить кучу справочных таблиц.

Кстати, ряд СУБД (как минимум, Оракл и MySQL) имеют специальные оптимизации при выполнении ограниченных (топ-N) выборок и отказываться от них было бы странно.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395251
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakovpkarklinу меня "ума не хватит" додуматься до того, чтобы заставить сервер
сформировать многомиллионный резалтсет, а потом ограничить феч записей на клиенте.
Ну так я Вам открою маленький секрет: резалтсет в этом случае и не формируется целиком,
только те записи, которые действительно клиентом запрошены.Зависит от запроса, бывает и что формируется.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395253
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftВзять топ-100 наиболее прибыльных товаров и приджойнить кучу справочных
таблиц.
А теперь внимание, вопрос: почему именно 100, а не 99 или 101? Какой критрий использовался
при выборе этой цифры?

miksoftбывает и что формируется.
В этом случае он и при использовании ROWS сформируется и никакая оптимизация это не
предотвратит.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395254
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovА осмысленный пример привести?..

Легко... Есть объект со схемой состояний. В определенное состояние объект может переходить несколько раз. Нужно получить все атрибуты объекта (для списка ID) и его первый момент (Moment) перехода в определенное состояние (DstStateTransitID). Три таблицы: Object, Event и EventStateTransit. Moment в Event, DstStateTransitID в EventStateTransit. Связь таблиц, надеюсь интуитивно понятна. В Object 800 млн. записей, в Event и EventStateTransit далеко за миллиард.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395256
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovНу так я Вам открою маленький секрет: резалтсет в этом случае и не формируется целиком,
только те записи, которые действительно клиентом запрошены.


Каким это таким магическим образом сервер определил, что запросил клиент, пока клиент не сделал феч или не сказал стоп?
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395258
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovА теперь внимание, вопрос: почему именно 100, а не 99 или 101? Какой критрий использовался
при выборе этой цифры?

CEO ввел его в качестве параметра при формирования отчета.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395260
Форбс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry SibiryakovmiksoftВзять топ-100 наиболее прибыльных товаров и приджойнить кучу справочных
таблиц.
А теперь внимание, вопрос: почему именно 100, а не 99 или 101? Какой критрий использовался
при выборе этой цифры?

ТОП 100, для Форбс, формируем, например, устроит ?

какое тут WHERE можно сформировать ?
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395261
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinСвязь таблиц, надеюсь интуитивно понятна.
Ну, о связи я, предположим, догадаюсь. А вот с какого перепою "DstStateTransitID в
EventStateTransit" и в какое место тут можно воткнуть подзапрос - ни за что.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395262
Форбс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry SibiryakovmiksoftА если это не фетч, а подзапрос?
А осмысленный пример привести?..

попроще пример:

выбрать форумы, в которых находятся 100 тем, с макс.кол-вом просмотров
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395265
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Форбскакое тут WHERE можно сформировать ?
Тут нужен вообще-то ORDER BY...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395266
Форбс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakovpkarklinу меня "ума не хватит" додуматься до того, чтобы заставить сервер
сформировать многомиллионный резалтсет, а потом ограничить феч записей на клиенте.
Ну так я Вам открою маленький секрет: резалтсет в этом случае и не формируется целиком,
только те записи, которые действительно клиентом запрошены.

"пользователи" АДО.НЕТ - рыдают от зависти ... !
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395267
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovА вот с какого перепою "DstStateTransitID в EventStateTransit"

Ибо не все события для объекта являются событиями перехода из одного состояния в другое.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395269
Форбс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry SibiryakovФорбскакое тут WHERE можно сформировать ?
Тут нужен вообще-то ORDER BY...

ай бросьте! зачем нам ORDER BY !
"трясьти надо!" WHERE же ! :))
Dimitry SibiryakovpkarklinМногие СУБД сейчас поддерживают следующий синтаксис из ANSI/ISO
SQL:2008?
Я знаю ровно две. Но даже если идиотизм занесён в стандарт это его не уменьшает. Эта
конструкция всего лишь прогиб под тех, кто не в силах сформулировать вменяемые условия во
WHERE.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395274
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovmiksoftВзять топ-100 наиболее прибыльных товаров и приджойнить кучу справочных
таблиц.
А теперь внимание, вопрос: почему именно 100, а не 99 или 101? Какой критрий использовался
при выборе этой цифры?По массе нетехнических причин. Круглые числа легче воспринимаются психилогически.
Или по техническим причинам, но напрямую не связанным с БД. Например, 100 строчек влезает на лист бумаги. Или в рекламной брошюре места только на 100 товаров.

Dimitry Sibiryakovmiksoftбывает и что формируется.
В этом случае он и при использовании ROWS сформируется и никакая оптимизация это не
предотвратит.Но одно дело сформируется на миллионы записей и совсем другое - на сотню.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395275
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinИбо не все события для объекта являются событиями перехода из одного
состояния в другое.
А нуль-переход у вас за переход уже не считается... Но это не отвечает на вопрос в каком
месте тут нужен подзапрос. Даже со всеми возможными извратами тут в лучшем случае можно
задействовать derived table. Это если оконные функции не справятся.

ФорбсWHERE же ! :))
WHERE, повторяю, для тех, кто способен выбранный критерий обосновать чем-то иным нежели
чесанием левой пятки СЕО.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395276
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftНо одно дело сформируется на миллионы записей и совсем другое - на сотню.
Не бывает в природе. Кляуза ROWS чисто технически абсолютно эквивалентна ограниченному
фетчу. Так что и формирование базового резалт-сета в точности одинаково.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395280
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovmiksoftНо одно дело сформируется на миллионы записей и совсем другое - на сотню.
Не бывает в природе. Кляуза ROWS чисто технически абсолютно эквивалентна ограниченному
фетчу. Так что и формирование базового резалт-сета в точности одинаково. http://dev.mysql.com/doc/refman/5.5/en/limit-optimization.html If you use LIMIT row_count with ORDER BY, MySQL ends the sorting as soon as it has found the first row_count rows of the sorted result, rather than sorting the entire result. If ordering is done by using an index, this is very fast. If a filesort must be done, all rows that match the query without the LIMIT clause are selected, and most or all of them are sorted, before the first row_count are found. After the initial rows have been found, MySQL does not sort any remainder of the result set. У Оракла есть аналогичная оптимизация, доку, надеюсь, найдете самостоятельно.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395284
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftIf you use LIMIT row_count with ORDER BY, MySQL ends the sorting as soon as
it has found the first row_count rows of the sorted result, rather than sorting the entire
result.
Ага. А теперь осталось понять какой телепатией MySQL узнаёт, что в несортированном остатке
нет ни одной записи из этого row_count.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395289
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovА нуль-переход у вас за переход уже не считается...

Нет, ибо, например, присвоение объекту характеристики (фиксируется в Event), не является переходом состояния.

Dimitry SibiryakovНо это не отвечает на вопрос в каком
месте тут нужен подзапрос. Даже со всеми возможными извратами тут в лучшем случае можно
задействовать derived table. Это если оконные функции не справятся

К черту слова! Запрос приведите!

Dimitry SibiryakovWHERE, повторяю, для тех, кто способен выбранный критерий обосновать чем-то иным нежели
чесанием левой пятки СЕО.

Вот поэтому Вам никогда не быть CIO.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395301
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinК черту слова! Запрос приведите!
Прямо так, без структуры таблиц? Ню-ню...
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
select атрибуты объекта, min_Moment
  from Object
   join (select id, min(Moment) min_Moment
          from Event
           join EventStateTransit on интуитивно понятно
         where id in (список) and DstStateTransitID = определённое состояние
         group by id)
    on интуитивно понятно


Где тут место для подзапроса да ещё и с ROWS/TOP/и т.п.?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395322
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovГде тут место для подзапроса да ещё и с ROWS/TOP/и т.п.?


Там, где серверу будет "легче" сделать TOP ... ORDER BY ... по индексу, чем Stream Aggregate.

ЗЫ. Синтаксис запроса еще ни есть мерило производительности.
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38395345
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pkarklinТам, где серверу будет "легче" сделать TOP ... ORDER BY ... по индексу, чем
Stream Aggregate.
Без разницы. Там, где он сможет использовать индексную навигацию для ORDER BY, он сможет
использовать её и для GROUP BY. Механика-то та же самая.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Переход с mysql на mssql Express Edition
    #38414867
CawaSPb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovmiksoftНо одно дело сформируется на миллионы записей и совсем другое - на сотню.
Не бывает в природе. Кляуза ROWS чисто технически абсолютно эквивалентна ограниченному
фетчу. Так что и формирование базового резалт-сета в точности одинаково.


Это, конечно же, совершенно неверно.

Простой пример:
Выборка по JOIN'у двух примерно равноразмерных больших таблиц, объединение по проиндексированным ключам.
Вменяемая СУБД конечно же сообразит, что при запрошенном полном резалт-сете нужно сделать какой-нибудь HASH JOIN, требующий предварительных подготовительных операций и далеко не сразу начинающий "выплёвывать" результаты.
На полном наборе данных это будет ЗНАЧИТЕЛЬНО быстрее NLJOIN, выдёргивающего записи по индексу по одной из random'ных мест "внешней" таблицы.
Или пусть не HASH, а MERGE JOIN, требующий предварительного полного сканирования и сортировки объединяемых таблиц, который тоже будет значительно быстрее NLJOIN.

При наличии информации о том, что выборка ограничена сотней записей, будет "в лоб" применён Nested Loop JOIN с немедленной отдачей результатов.


При наличии ORDER BY всё несколько интереснее, но тем не менее все равно есть существенное отличие . Могут быть использованы плохие для полного result set'а планы, но сразу начинающие отдавать записи.


Другое дело, что что с точки зрения как реляционной теории, так и правильногоо проектирования конструкции типа "отдай то, не знаю чего", часто и лежащие под fetch first... у ленивых разработчиков/бизнес-аналитиков, бессмысленны.
Тем не менее, ограниченная размером вывода выборка по упорядоченному списку, да и просто случайная выборка (sample) вполне адекватно могут отражать существующие "бизнес"-задачи.

Семантически FETCH FIRST N ROWS ONLY можно заменить соответствующими OLAP функциями с ограничением выборки предикатом в WHERE. По мне это красивее, но заставлять разработчиков использовать "... ROW_NUMBER() OVER(...) as RNUM ... WHERE RNUM < ..." вместо более короткого fetch first ... особого смысла не вижу (за некоторыми "но").
...
Рейтинг: 0 / 0
66 сообщений из 66, показаны все 3 страниц
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Переход с mysql на mssql Express Edition
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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