|
|
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
Доброго дня. Для уникального ID записи организовал домен. Код: sql 1. 2. 3. Для небольших таблиц и SMALLINT мне хватит. Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы? Стоит ли возится делать и меньше? Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2013, 22:48:50 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
kot275Стоит ли возится делать и меньше? Ну, если хочешь получить такой геморрой на всю голову... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2013, 22:52:03 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
kot275Для небольших таблиц и SMALLINT мне хватит. Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?Влияние это разглядеть можно только в телескоп, и только высоко в горах в безлунную ночь. Озаботьтесь эффективностью SQL-запросов, и прежде всего - уменьшением числа обращений к таблицам и числа фетчей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2013, 23:04:40 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
Спасибо за ответы. Можно значит не замачиваться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2013, 23:12:05 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
Еще спрошу. Это записи равнозначные или уже первое поле масло масленое получается? Код: sql 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.10.2013, 23:18:40 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
kot275, просто похоже, что NOT NULL ограничение установлено на уровне домена. каждый сам себе Дейт, но я бы не стал так делать. Тем более с доменом для ID: внешние ключики могут же отсутствовать. Писать для них свой домен D_ID_NULLABLE? Гораздо проще поднимать флаг NOT NULL на уровне столбца. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2013, 07:58:38 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
ХЗ, я как раз 2 домена создаю: DR$INT и DN$INT. R типа required, а N типа nullable. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2013, 08:42:51 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
kot275Еще спрошу. Это записи равнозначные или уже первое поле масло масленое получается? Код: sql 1. 2. 3. Если у домена стоит NOT NULL, то ограничение NOT NULL в поле да, "масло-маслянное". Поле с таким доменом уже не сделать допускающим пустые поля. Чем удобен домен, что поправив только домен - поля, которые используют данный домен, также поправятся. Ну и, допустим, сняв ограничение NOT NUL у домена, у поля ID D_ID NOT NULL оно останется. В итоге - нужно быть внимательным. Знал одну девушку, она домен BOOLEAN = INTEGER in [0,1] поправила на INTEGER in [0,1, 2,3,4]. Ну просто ей у поля значений не хватало. А то, что этот домен ещё где-то используется... А пофиг :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2013, 10:55:18 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
kot275, мне интересно - человек собирается использовать smallint, и спрашивает о производительности, и тут же втыкает bigint в ПК. Мало 2-миллиардного int? Я допускаю, что может оказаться мало, но пока такие случаи по пальцам пересчитать. Когда то для генераторов на int считали, что если выдавать новое число каждую секунду, то maxint кончится через 68 лет. Конечно, скорости нынче другие, и можно 10 чисел выдавать в секунду - тогда да, через 7 лет кончится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2013, 11:24:57 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
kdv, Ну я для однообразности. Просто мне надо будет заливать данные которые уже перешли за верхний диапазон INTEGER, хотя там и не подряд. И всего тару таблиц таких. В принципе можно упорядочить, там не более миллиона записей. Надо только замену в подчинены таблицах еще сделать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2013, 12:47:13 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
arnikot275, просто похоже, что NOT NULL ограничение установлено на уровне домена. каждый сам себе Дейт, но я бы не стал так делать. Тем более с доменом для ID: внешние ключики могут же отсутствовать. Писать для них свой домен D_ID_NULLABLE? Гораздо проще поднимать флаг NOT NULL на уровне столбца. А где лучше отграничение прикрутить, в домене или на уровне таблице? Просто в руководстве написано что не надо переменные объявлять в таблицах, лучше через домены. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2013, 12:49:00 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
kdv пишет: > Мало 2-миллиардного int? Я допускаю, что может оказаться мало, но пока > такие случаи по пальцам пересчитать. Когда то для генераторов на int > считали, что если выдавать новое число каждую секунду, то maxint кончится > через 68 лет. Конечно, скорости нынче другие, и можно 10 чисел выдавать в > секунду - тогда да, через 7 лет кончится У нас генератор перевалил за 2G. Правда, он один на всю базу, но все же... Хорошо, что я тогда, 4 года назад, не поленился и всё сразу на бигинтах сделал. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2013, 13:00:55 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
kot275А где лучше отграничение прикрутить, в домене или на уровне таблице? Просто в руководстве написано что не надо переменные объявлять в таблицах, лучше через домены.Если вы не уверены, что лучше для ВАС, тогда пихайте NOT NULL на уровень столбца. Это более гибко. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2013, 13:22:19 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
kot275Просто в руководстве написано что не надо переменные объявлять в таблицах, лучше через домены. в каком руководстве? Домены - это аналог пользовательских типов в ЯП. Например, для Delphi пишем Код: pascal 1. 2. 3. 4. 5. 6. и в этом случае, по идее, тип i не равен j. В SQL домен - это тоже "тип", имеющий свой диапазон значений, и ограничения (not null, и прочее). Есть люди, которые не любят домены (к ним я отношусь), есть наоборот, те, кто их использует слишком активно, т.е. с переизбытком, даже для самых простых типов, вроде create domain cardcode int; И тут нужно учитывать, что на закладке DDL в IBExpert, благодаря запросам пользователей, сделан вот этот самый вывод расшифровки домена в комментарии Код: sql 1. Сам сервер (как IB так и FB) такую расшифровку не выводит. И если переборщить, то на определенном этапе может поразить склероз, и копание "а что же за тип имеет этот домен" только усложнит жизнь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2013, 13:52:21 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
я бы еще добавил, что идея делать домен ID INT NOT NULL для всех первичных ключей содержит провокацию. В том смысле, что на самом деле "код товара" и "код клиента", для которых будет использован этот ID, хоть и имеют абстрактные значения, но по смыслу не равны. То есть, если проектировать с доменами до упора, то для столбца каждого конкретного ПК должен быть свой домен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2013, 13:54:39 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
kdv, Ну да. IBExpert при создании нового поля эти домены и показывает. Т.е. домены системные там создаются. Если свой не делать. А для меня, я понял, делать домены это зло. Сам и запутаюсь. Не могу вспомнить где я про домены вычитал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.10.2013, 15:09:24 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
Я немного запутался. А что за домены BExpert типа такого RDB$6 мне показывает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2013, 21:50:11 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
kot275, rdb$fields - склад доменов. любой столбец создается тут как домен. Только домен можно использовать как тип в разных таблицах, а столбец - в одной. При создании столбца в Rdb$fields создается авто-домен с генерируемым именем. в rdb$relation_fields - ссылка на него. Тебе это зачем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2013, 21:59:14 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
Да вот разобраться пытаюсь. То есть у меня любой столбец создается как домен? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2013, 22:01:48 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
kot275, да. Это вызывает невыносимые муки? Подозрения на проблемы с производительностью? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2013, 22:28:15 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
Мук не вызывает. Но непонятность есть. Если это так и надо, то и ладно. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2013, 22:31:06 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
kot275, ну тогда читай http://citforum.ru/database/interbase/index.shtml и http://www.ibase.ru/devinfo/sysqry.htm если есть интерес. а если нет - просто забей. Любая СУБД должна где то и в каком то виде хранить метаданные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2013, 22:46:56 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
Интерес есть. Буду читать. Метаданные. самая интересная вещь в базе. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2013, 22:56:50 |
|
||
|
Влияет-ли тип переменной(INTEGER, SMALLINT, BIGINT) на скорость работы?
|
|||
|---|---|---|---|
|
#18+
kot275А для меня, я понял, делать домены это зло. Сам и запутаюсь. Нет, домены не зло. Домены - отражение структурного подхода. (см. книгу Структуры данных + алгоритмы = программы). kot275Метаданные. самая интересная вещь в базе. Самое интересное в базе - правильно выбранные сущности (таблицы) с достаточным уровнем нормализации, и корректная бизнес-логика, построенная на вью/процедурах/триггерах. Слишком сильный интерес к метаданным, переходящий в желание эти данные изменять ручками, часто доводит до неработоспособности БД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2013, 14:37:40 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=38443556&tid=1564187]: |
0ms |
get settings: |
8ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
195ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
| others: | 233ms |
| total: | 520ms |

| 0 / 0 |
