powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Разработка СУБД
25 сообщений из 195, страница 3 из 8
Разработка СУБД
    #34681489
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
БредЗначит ли это, что "вертикальное партиционирование" в Oracle отпадает, и нужно реализовывать в Oracle "какой-нибудь EAV-like dasign" мне сложно понять.
Попробуйте спросить у Гугля, что эти слова значат - может, станет яснее. Правда, не ответит на вопрос "что же нужно реализовывать" - например, разреженные данные очень эффективно хранятся в analytic workspace-ах, но это не значит, что их надо использовать для каждой задачи.

БредИ это, надо думать, тоже мое право.
Безусловно.
...
Рейтинг: 0 / 0
Разработка СУБД
    #34681494
Бред
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ChA БредЯ не смог обнаружить нечистоту, к сожалению, и обратился с вопросом к специалистам.В данном случае лучше было писать "не" и "чистоту" раздельно, хотя фразу это все равно не спасает. Начнем с того, как Вы определили объем БД после выполнения всех операций ? В EM в свойствах БД посмотрели ?

Закончите, пожалуйста, тем каков правильный результат, и дело с концом. Я же уже согласился с полной бессмысленностью.
...
Рейтинг: 0 / 0
Разработка СУБД
    #34681500
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ChA БредЯ не смог обнаружить нечистоту, к сожалению, и обратился с вопросом к специалистам.В данном случае лучше было писать "не" и "чистоту" раздельно,

Это было бы орфографической ошибкой.
...
Рейтинг: 0 / 0
Разработка СУБД
    #34681505
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSuperкакая у нас аллергия на сильноразреженность
Она в природе человеческой. Мы же не радуемся сильно разреженным товарам в магазинах и не отправляемся в отпуск с сильно разреженными вещами в чемоданах
...
Рейтинг: 0 / 0
Разработка СУБД
    #34681510
Фотография ChA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
БредЗакончите, пожалуйста, тем каков правильный результат, и дело с концом. Я же уже согласился с полной бессмысленностью.Я не знаю, что Вы подразумеваете под правильным результатом. Грубый пример стандартного расчета объема таблицы уже был приведен. Все сильные отклонения от него могут быть результатом неизвестных мне факторов.
...
Рейтинг: 0 / 0
Разработка СУБД
    #34681513
Фотография ChA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivЭто было бы орфографической ошибкой. Модератор: Давайте остановимся на этом?
...
Рейтинг: 0 / 0
Разработка СУБД
    #34681519
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
БредТам разные способы хранения, и не совсем понятно о чем Вы говорите. В любом случае там не нужно бороться с разреженностью - количество колонок в таблице не ограничено.
Способы может быть и разные, но все сводится к одному - есть некий ключ и аттрибут. Сделайте так же на SQL - и тоже не надо будет бороться
...
Рейтинг: 0 / 0
Разработка СУБД
    #34681520
Бред
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer SergSuperкакая у нас аллергия на сильноразреженность
Она в природе человеческой. Мы же не радуемся сильно разреженным товарам в магазинах и не отправляемся в отпуск с сильно разреженными вещами в чемоданах

Интересный пример с чемоданами. Сложно представить что-либо более разреженное. Я уж не говорю, что в любом магазине просто потрясающая разреженность товаров. Постоянно большинство нужных предметов нельзя купить в конкретном магазине...
...
Рейтинг: 0 / 0
Разработка СУБД
    #34681528
Бред
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSuper БредТам разные способы хранения, и не совсем понятно о чем Вы говорите. В любом случае там не нужно бороться с разреженностью - количество колонок в таблице не ограничено.
Способы может быть и разные, но все сводится к одному - есть некий ключ и аттрибут. Сделайте так же на SQL - и тоже не надо будет бороться

Вы мне предлагаете сделать количество колонок в таблице не ограниченным, и не занимать место под несуществующие данные в SQL Server ??? Я этого сделать не могу.
...
Рейтинг: 0 / 0
Разработка СУБД
    #34681534
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
БредЯ уж не говорю, что в любом магазине просто потрясающая разреженность товаров. Постоянно большинство нужных предметов нельзя купить в конкретном магазине...
"Потрясающая разреженность" здесь относится к "товарам в совокупности", к тому, что я назвал "данными", противопоставив их "таблицам". То, что Вы предпочли трактовать как поправку в терминологии.

Магазины - как раз пример вертикального партиционирования как варианта хранения разреженных данных. Благодаря ему во-первых полки магазина плотно забиты, во-вторых, гвозди как правило можно купить рядом с молотками, а в-третьих, покупая хлеб, мы не рискуем обнаружить в нем завалившийся гвоздь.
...
Рейтинг: 0 / 0
Разработка СУБД
    #34681535
Бред
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ChA БредЗакончите, пожалуйста, тем каков правильный результат, и дело с концом. Я же уже согласился с полной бессмысленностью.Я не знаю, что Вы подразумеваете под правильным результатом. Грубый пример стандартного расчета объема таблицы уже был приведен. Все сильные отклонения от него могут быть результатом неизвестных мне факторов.

Я могу только предположить, что в Вашем грубом примере есть серьезная ошибка. Но, предположим, что ошибка была у меня (куда-то не туда смотрел). Тогда:

SQL Server 2005 - 4 Гб
Cache 5.2 - 17 Мб
Oracle ??? - 1.11 Гб
...
Рейтинг: 0 / 0
Разработка СУБД
    #34681542
Бред
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer БредЯ уж не говорю, что в любом магазине просто потрясающая разреженность товаров. Постоянно большинство нужных предметов нельзя купить в конкретном магазине...
"Потрясающая разреженность" здесь относится к "товарам в совокупности", к тому, что я назвал "данными", противопоставив их "таблицам". То, что Вы предпочли трактовать как поправку в терминологии.

Магазины - как раз пример вертикального партиционирования как варианта хранения разреженных данных. Благодаря ему во-первых полки магазина плотно забиты, во-вторых, гвозди как правило можно купить рядом с молотками, а в-третьих, покупая хлеб, мы не рискуем обнаружить в нем завалившийся гвоздь.

Лирика. Вы продолжаете настаивать на том, что данные могут быть разреженными (что это такое я понять не могу - не дано), а таблицы не могут. На этой оптимистической ноте позвольте закончить обсуждение изначально бессмысленного вопроса.
...
Рейтинг: 0 / 0
Разработка СУБД
    #34681548
Фотография ChA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivЭто было бы орфографической ошибкой.Уважаемый MasterZiv, рекомедую Вам ознакомиться со смыслом слова "нечистота", например, с помощью Google.

P.S. Модератор, так лучше ?
Модератор: Уважаемый ChA, рекомендую Вам ознакомиться с правилами хорошего тона
...
Рейтинг: 0 / 0
Разработка СУБД
    #34681552
pavelvp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
БредТам разные способы хранения, и не совсем понятно о чем Вы говорите. В любом случае там не нужно бороться с разреженностью - количество колонок в таблице не ограничено. Конечно не ограничено. Ведь там нет ни того, ни другого. Ограничение на размер "ключа" всё же есть.
...
Рейтинг: 0 / 0
Разработка СУБД
    #34681753
Фотография SergSuper
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
БредВы мне предлагаете сделать количество колонок в таблице не ограниченным, и не занимать место под несуществующие данные в SQL Server ??? Я этого сделать не могу.
Я ничего не предлагаю, я просто объясняю что структура данных в Cache эквивалентна таблице с двумя полями. Снимаю шляпу перед маркетологами Cache, которые для этого сумели придумать красивое название "разряженные массивы"
...
Рейтинг: 0 / 0
Разработка СУБД
    #34681836
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
БредБольшое спасибо. Пусть и бессмысленный, но результат:

В таблице 1000 колонок типа Integer.
1 000 000 записей, и только в последней колонке каждой записи записали значение=1.

SQL Server 2005 - 17.2 Gb
Cache 5.2 - 17 Mb
Oracle ??? - 1.11 Gb

А разве любой из таких вот "отдельных результатов" нельзя назвать бессмысленным?
Наверное нужно закрывать этот раздел на форуме.Гм. Не знаю - зачем я это делал :), но вот результаты Firebird
Код: 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.
execute block returns (s varchar( 20080 ))
as
declare i int;
begin
  s = 'create table t (id int)';
  execute statement :s;
  suspend;

  s = '';
  i =  1 ;
  while (i <  1000 ) do
  begin
    if (char_length(s) <  20000  or s = '')
    then begin
      if (s = '')
      then s = 'alter table t add col' || i || ' int';
      else s = s || ', add col' || i || ' int';
    end
    else begin
      execute statement :s;
      suspend;

      s = '';
    end

    i = i +  1 ;
  end

  if (s <> '')
  then begin
    execute statement :s;
    suspend;
  end
end;
commit;
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
execute block as
declare i int =  0 ;
begin
  while (i <  1000000 ) do
  begin
    insert into t (id) values (:i);
    i = i +  1 ;
  end
end
commit;
Сразу после этого :
Код: plaintext
1.
Data pages: 14085, data page slots: 14085, average fill: 79%
Average record length: 73.93, total records: 1000000
Размер страницы 8К, т.е. имеем 112680КБ или 110МБ

Заносим 1 в последнюю колонку :
Код: plaintext
update t set col999 =  1 
Статистика :
Код: plaintext
1.
    Average record length: 77.26, total records: 1000000 
    Data pages: 16796, data page slots: 16796, average fill: 98% 
Т.е. 134368КБ или 131МБ
...
Рейтинг: 0 / 0
Разработка СУБД
    #34681841
hvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гм, чего-то со скриптом я намутил - ночь наверное ;) Создавать таблицу можно и так

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
execute block returns (s varchar( 64 ))
as
declare i int =  1 ;
begin
  s = 'create table t (id int)';
  execute statement :s;
  suspend;

  while (i <  1000 ) do
  begin
    s = 'alter table t add col' || i || ' int';
    execute statement :s;
    suspend;

    i = i +  1 ;
  end
end;
commit;
Суть от этого, конечно, не меняется
...
Рейтинг: 0 / 0
Разработка СУБД
    #34681846
Пьяный Лох
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Простите, а где ЧАЛ?
...
Рейтинг: 0 / 0
Разработка СУБД
    #34682041
Bogdanov Andrey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
БредМожет чего не правильно настроил:

В таблице 1000 колонок типа Integer.
1 000 000 записей, и только в одной колонке каждой записи записал значение=1.

SQL Server 2005 - 17.2 Gb
Cache 5.2 - 17 Mb

И, если кто может, скажите какой результат в Oracle?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
SQL> create table EmptyTable
   2   (RecordId integer,
   3   ColId integer,
   4   CalValue integer)
   5   storage(initial 1M next  0 );

Table created.

SQL> insert into EmptyTable(RecordId,ColId,CalValue)
   2   select n, 1000 , 1  from (select rownum n from dual connect by level <  1000001 );

 1000000  rows created.

SQL> select bytes/ 1024 / 1024  from dba_segments where segment_name=upper('EmptyTable');

BYTES/ 1024 / 1024 
---------------
              18 

То есть 18 Mb. Это слегка завышенная цифра, так как место выделяется экстентами. Без увеличения размера в эту табличку можно добавить еще около ста тысяч записей.
...
Рейтинг: 0 / 0
Разработка СУБД
    #34684390
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бред говорил про базы данных, кажется. А именно про хранение "сильно разреженных таблиц", в которых иногда есть потребность. Но пусть это будет совершенно бессмысленным, в отличие от Ваших, всегда осмысленных, "сравнениях СУБД". Я не против.

Sybase IQ именно так и хранит данные - по столбцам. Если стобец пустой, или там "сильноразряженный", то он практически ничего на диске не занимает, независимо от числа строк в таблице. Более того - если в таблице миллион строк километровой длины, но в строках хранится всего десять - сто - тысяча уникальных значений, то эти значения будут закодированы и храниться будут толко пара байт (и образцы строк). Такая вот звездообразная схема реализована "унутре думателя".
При всем этом IQ является вполне себе реляционной СУБД (а не кашей какой-то), и даже Transact SQL понимает.
...
Рейтинг: 0 / 0
Разработка СУБД
    #34684391
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Bogdanov Andrey БредМожет чего не правильно настроил:

В таблице 1000 колонок типа Integer.
1 000 000 записей, и только в одной колонке каждой записи записал значение=1.

SQL Server 2005 - 17.2 Gb
Cache 5.2 - 17 Mb

И, если кто может, скажите какой результат в Oracle?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
SQL> create table EmptyTable
   2   (RecordId integer,
   3   ColId integer,
   4   CalValue integer)
   5   storage(initial 1M next  0 );

Table created.

SQL> insert into EmptyTable(RecordId,ColId,CalValue)
   2   select n, 1000 , 1  from (select rownum n from dual connect by level <  1000001 );

 1000000  rows created.

SQL> select bytes/ 1024 / 1024  from dba_segments where segment_name=upper('EmptyTable');

BYTES/ 1024 / 1024 
---------------
              18 

То есть 18 Mb. Это слегка завышенная цифра, так как место выделяется экстентами. Без увеличения размера в эту табличку можно добавить еще около ста тысяч записей.

А где тут 1000 колонок типа int ?
...
Рейтинг: 0 / 0
Разработка СУБД
    #34684393
Выбегалло
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выбегалло Bogdanov Andrey БредМожет чего не правильно настроил:

В таблице 1000 колонок типа Integer.
1 000 000 записей, и только в одной колонке каждой записи записал значение=1.

SQL Server 2005 - 17.2 Gb
Cache 5.2 - 17 Mb

И, если кто может, скажите какой результат в Oracle?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
SQL> create table EmptyTable
   2   (RecordId integer,
   3   ColId integer,
   4   CalValue integer)
   5   storage(initial 1M next  0 );

Table created.

SQL> insert into EmptyTable(RecordId,ColId,CalValue)
   2   select n, 1000 , 1  from (select rownum n from dual connect by level <  1000001 );

 1000000  rows created.

SQL> select bytes/ 1024 / 1024  from dba_segments where segment_name=upper('EmptyTable');

BYTES/ 1024 / 1024 
---------------
              18 

То есть 18 Mb. Это слегка завышенная цифра, так как место выделяется экстентами. Без увеличения размера в эту табличку можно добавить еще около ста тысяч записей.

А где тут 1000 колонок типа int ?

А, пардон, сразу не просек. Ну да, ну да - это та самая схема хранения, в которой элементарный запрос надо полдня продумывать, а потом сервер полдня джойны хреначит. Знакомая штука.
...
Рейтинг: 0 / 0
Разработка СУБД
    #34684640
Bogdanov Andrey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выбегалло
А где тут 1000 колонок типа int ?
А где у Cashe 1000 колонок? Там вообще нет ни одной колонки.

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

Время продумывания и время выполнения зависит в основном от умственных способностей продумывающего, а не от сервера и т.п.
...
Рейтинг: 0 / 0
Разработка СУБД
    #34684959
Бред
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pavelvp БредТам разные способы хранения, и не совсем понятно о чем Вы говорите. В любом случае там не нужно бороться с разреженностью - количество колонок в таблице не ограничено. Конечно не ограничено. Ведь там нет ни того, ни другого. Ограничение на размер "ключа" всё же есть.

Где "там"? Я не так давно познакомился с Cache, но успел увидеть три СУБД. И во всех были таблицы и колонки. Может это у Вас ревность? Потому что "там" много чего есть. Лучше опубликуйте результат бессмысленного теста для Линтер, и сравните его, конечно же, с SQL Server.
...
Рейтинг: 0 / 0
Разработка СУБД
    #34684975
Бред
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergSuper БредВы мне предлагаете сделать количество колонок в таблице не ограниченным, и не занимать место под несуществующие данные в SQL Server ??? Я этого сделать не могу.
Я ничего не предлагаю, я просто объясняю что структура данных в Cache эквивалентна таблице с двумя полями. Снимаю шляпу перед маркетологами Cache, которые для этого сумели придумать красивое название "разряженные массивы"

Не правильно объясняете - не знаю - от незнания или умышленно? Структура данных в Cache эквивалентна, помимо прочего, таблице с неограниченным числом полей. А маркетинг у Cache просто нулевой. И у меня создается ощущение, что это совсем не беспокоит Intersystems.
...
Рейтинг: 0 / 0
25 сообщений из 195, страница 3 из 8
Форумы / Сравнение СУБД [игнор отключен] [закрыт для гостей] / Разработка СУБД
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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