powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Медленный insert
25 сообщений из 61, страница 2 из 3
Медленный insert
    #39500344
хм... хм...
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Pavel_PV,

как по вашему индексы в parallel будут обновляться? И за счет чего там может получиться прирост в скорости?
...
Рейтинг: 0 / 0
Медленный insert
    #39500463
Гаврилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
landy, SQL есть SQL. В любой среде интерпретатор этого языка написан в конце концов на С, а C есть C. Не надо противопоставлять одну фирму другой! Если бы они были настолько разными по своим возможностям, то какой-то из них уже давно бы не было.
...
Рейтинг: 0 / 0
Медленный insert
    #39500491
Гаврилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
landy, извините, но еще одно и существенное.
Вы упомянули DEC/Rdb. В данном случае SQL ни при чем.
СУБД Rdb я использовал на VAXах еще до того, как там утвердился SQL. Запросы к БД выполнялись на собственном языке DEC под названием RDO. Это было что-то похожее на применение курсоров в SQL. Результаты каждой итерации можно было отслеживать и реагировать на них любым языком, поддерживаемым DEC (например, языком, очень похожим на FORTRAN-66, но намного более мощным, со всеми элементами "С с классами", которого еще не было в употреблении). В частности, можно было только указать в начале файла таблицу - и RDO в том же файле автоматически создавал структуру, полностью соответствующую этой таблице, и с изменением таблицы БД эта структура автоматически изменялась при перекомпиляции. Оставалось только написать код, обрабатывающий данные в хост-программе. Замечу для ясности, что никакой другой язык в то время не поддерживал структуры из разнотипных данных и, соответственно, не было самого понятия "структура". RDO работал намного быстрее, чем внедренный затем SQL с той же самой СУБД Rdb. На VAXах, когда остальные многочисленные пользователи из-за загрузки машины даже не могли ввести текст со своих клав на свои же терминалы, программы с RDO срабатывали моментально. Для запросов RDO использовалась атавистическая шина, оставшаяся с первых версий PDP, которая не использовалась никакими другими процессами. Спецы, перекупленные Ораклом у Digital Equipment Corporation, не могли использовать эту шину в другой инфраструктуре, ее там не было. Поэтому скорострельность СУБД DEC/Rdb до сих пор остается непревзойденной. (Просто информация из истории IT)
...
Рейтинг: 0 / 0
Медленный insert
    #39500495
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гавриловнаписан в конце концов на Сфвмас и стебелек на паскале.
...
Рейтинг: 0 / 0
Медленный insert
    #39500502
ura1y
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гавриловlandy, SQL есть SQL. В любой среде интерпретатор этого языка написан в конце концов на С, а C есть C. Не надо противопоставлять одну фирму другой! Если бы они были настолько разными по своим возможностям, то какой-то из них уже давно бы не было.
Надеюсь тут все получится, и что-то изменится
...
Рейтинг: 0 / 0
Медленный insert
    #39500504
Гаврилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ura1y,
Я очень хочу, чтобы всё получилось - но ведь знаю наперед, что не получится. О чем и сердце болит. А ведь мы, пенсионеры, давно know how.
...
Рейтинг: 0 / 0
Медленный insert
    #39500526
Гаврилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-2-, Да ты только флудер, блин! А я тебя до сих пор считал.
...
Рейтинг: 0 / 0
Медленный insert
    #39500534
landy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SQL есть SQL. В любой среде интерпретатор этого языка написан в конце концов на С, а C есть C
При чем тут реализация интерпретатора SQL?

Имеем горшочки разных размеров и разных систем(угольный, электрический, атомный)
Вы говорите - Горшочек вари/не вари/налей кипятку(суть SQL)
При этом реализация механизмов кипячения/отключения/открытия кранов в горшочках разная. И методы повышения
скорости приготовления кипятка/выключения/налива - зависят от того в каком горшочке вы его готовите
Вы же говорите, что все горшочки одинаковые, т к выполняют вари/не вари/налей

Собственно это я и хотел донести, что при использовании разных горшjчков методы будут различаться.
Вы же не будете тушить электрический или атомный гршочек водой, чтобы их выключить?
Хотя это возможно, вопрос насколько эффективно и безопасно
...
Рейтинг: 0 / 0
Медленный insert
    #39500543
Sergei.Agalakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Грешно смеяться над больным человеком.
По делу - выдать подробности про IO систему, количество дисков, конфиг. ASM или файловая система? Проверить, что нет какого-нибудь авторасширения, и место под новые данные есть. Скорее всего проблема где-то здесь.
Вам же расписали алгоритм вставки с append. Единственный шаг, зависящий от размера таблицы, это слияние индексов. У вас хватает памяти для этого, в своп не сваливаетесь?
...
Рейтинг: 0 / 0
Медленный insert
    #39500575
ст.ебелёк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ГавриловДа ты только флудерТвой почерк уж очень напоминает автора
...
Рейтинг: 0 / 0
Медленный insert
    #39500618
Гаврилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ст.ебелёк, кончай стебаться!
А вообще-то, давно уже всем всё ясно - и что делать задавшему вопрос автору темы, и всем прочим.
Тему пора закрывать, а то уже, как в плохих блогах без строгого модератора, дело пошло на личности. Я могу, конечно, выражаться в этом стиле, и даже круче других (морская закалка), но не хочу больше, надоело.
...
Рейтинг: 0 / 0
Медленный insert
    #39500620
Гаврилов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
landy, интерпретатор SQL вот при чем, если Вы не поняли этого до сих пор, вроде как бы программируя на SQL. Во время трансляции любой программы, в том числе и созданной в редакторе SQL, предоставляемом любой из фирм, в любом случае Ваша SQL-программа (запрос) тоже транслируется в исполнимый код. Но SQL надо сначала перевести (транслировать) в тот код, который понимает компилятор основного языка программирования. Это называтся прекомпиляция . Только не пишите мне, что Вы этого не знали. А если знали, тогда ваши возражения - именно флуд, и не более того.
...
Рейтинг: 0 / 0
Медленный insert
    #39500625
landy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы мыслите только одним типом INSERT
А в Oracle возможны варианты

INSERT ...
и
INSERT /*APPEND*/ ...

А теперь внимательно почитайте ссылку, которую я приводил
...
Рейтинг: 0 / 0
Медленный insert
    #39500653
schi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гавриловlandy, интерпретатор SQL вот при чем, если Вы не поняли этого до сих пор, вроде как бы программируя на SQL. Во время трансляции любой программы, в том числе и созданной в редакторе SQL, предоставляемом любой из фирм, в любом случае Ваша SQL-программа (запрос) тоже транслируется в исполнимый код. Но SQL надо сначала перевести (транслировать) в тот код, который понимает компилятор основного языка программирования. Это называтся прекомпиляция . Только не пишите мне, что Вы этого не знали. А если знали, тогда ваши возражения - именно флуд, и не более того.

Я очень извиняюсь, но запрос SQL не транслируется в "основной язык программирования". Совсем.
...
Рейтинг: 0 / 0
Медленный insert
    #39500662
Bfink
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
landyINSERT /*APPEND*/ ...
А что такое - INSERT /*APPEND*/ ?

Может быть INSERT /*FAST*/ ?
...
Рейтинг: 0 / 0
Медленный insert
    #39500879
landy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тут,например,
https://docs.oracle.com/cd/B12037_01/server.101/b10752/hintsref.htm
Что за хинт FAST?
...
Рейтинг: 0 / 0
Медленный insert
    #39500882
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
landyТут,например,
https://docs.oracle.com/cd/B12037_01/server.101/b10752/hintsref.htm
Что за хинт FAST?Я не вижу никаких хинтов.
...
Рейтинг: 0 / 0
Медленный insert
    #39500891
landy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
APPEND

The APPEND hint lets you enable direct-path INSERT if your database is running in serial mode. 
Your database is in serial mode if you are not using Enterprise Edition. 
Conventional INSERT is the default in serial mode, and direct-path INSERT is the default in parallel mode.

In direct-path INSERT, data is appended to the end of the table, rather than using existing space currently allocated to the table. 
As a result, direct-path INSERT can be considerably faster than conventional INSERT.

/*+ APPEND */



Трудно загуглить ?

https://iusoltsev.wordpress.com/profile/individual-sql-and-cbo/cbo-hints/#APPEND
Код: sql
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.
35.
36.
37.
38.
39.
40.
/*+ APPEND */
/*+ NOAPPEND*/

«Подсказка APPEND форсирует использование оптимизатором direct-path INSERT в запросах вида INSERT INTO… SELECT …

        Традиционный (conventional) метод вставки в таблицу используется по умолчанию (без хинтов) в режиме 
непараллельной вставки. В этом режиме direct path INSERT может быть использован только при использовании подсказки APPEND.
        Direct-path INSERT используется по умолчанию в режиме параллельной вставки [работает при выполнении след.условий:

                Oracle Enterprise Edition

                ALTER SESSION { ENABLE | FORCE } PARALLEL DML;

                установленный признак параллельности (USER_TABLES.DEGREE) для целевой таблицы на этапе 
создания/модификации (CREATE|ALTER TABLE…PARALLEL n)

            или подсказкой PARALLEL во время выполнения DML

            или параметером PARALLEL_DEGREE_POLICY = AUTO (11.2+)]

    В этом случае традиционный (conventional) метод вставки строк в таблицу будет применяться только при использовании подсказки NOAPPEND.

… При использовании direct-path INSERT, данные добавляются в конец таблицы [добавляя новые блоки и повышая High Water Mark (HWM)], 
вместо того, чтобы использовать свободное место в уже выделенных блоках таблицы. В результате direct-path INSERT может быть 
значительно быстрее традиционной (conventional) операции вставки»

Особенности использования подсказки APPEND в запросах вида INSERT INTO … VALUES, см. APPEND Hint (Direct-Path) Insert 
with Values Causes Excessive Space Usage on 11G [ID 842374.1]:

1. В версиях 10g, 10g R2, подсказка APPEND игнорируется

2. В 11g R1, хинт APPEND запускает режим direct-path insert даже в случае использования INSERT INTO … VALUES. 
Поведение аналогично использованию подсказки APPEND_VALUES в версиях, начиная с 11g R2.

3. Начиная с версии 11g R2, появляется новая подсказка APPEND_VALUES, позволяя т.о использовать механизм direct path load 
только в случае использования APPEND_VALUES. Подсказка APPEND игнорируется для предложений типа INSERT … VALUES…

Рекомендуется использовать хинт APPEND (режим прямой вставки) для загрузки больших объёмов данных, а не для вставки 
одиночных строк, т.к. в последнем случае не будет получено преимуществ
...
...
Рейтинг: 0 / 0
Медленный insert
    #39500943
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
landy,

Чудак, сравни, что пишут в доке, со своими комментариями и снимись с ручника.
...
Рейтинг: 0 / 0
Медленный insert
    #39500989
landy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Eliclandy,

Чудак, сравни, что пишут в доке, со своими комментариями и снимись с ручника.

На заборе слово написано, бабка обрадовалась, а потом все руки в занозах ...

Код: plsql
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.
35.
36.
select version from v$instance;
VERSION    
 ---------- 
 10.2.0.4.0 

create table t1(
id number,
value varchar2(256));
insert into t1 (id,value) select rownum, 'sdfghsjdfhgjhsdfhg34kjhkjHKJhjролр ЛОРОРОЛРОЛРОР jkhhjhjhHJHJHJHJHKJH jhjhjh 338458376873 kjkjkjkjk 090sdf9gng45n' from dual connect by rownum<=2048;

DBMS_OUTPUT:
 ------------
 
 2048 record(s) affected 

 [Executed: 8/6/2017 6:41:13 PM] [Execution: 21ms] 

select extent_id, bytes, blocks
 from user_extents
 where segment_name = 'T1'
 and segment_type = 'TABLE';

DBMS_OUTPUT:
 ------------

 EXTENT_ID     BYTES     BLOCKS    
 ------------  --------  --------- 
 0             65536     8         
 1             65536     8         
 2             65536     8         
 3             65536     8         
 4             65536     8         

 5 record(s) selected [Fetch MetaData: 0ms] [Fetch Data: 0ms] 

 [Executed: 8/6/2017 6:42:08 PM] [Execution: 21ms] 



Имеем 5 сегментов под таблицу
удалим часть данных и опять вставим

Код: plsql
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.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
delete from t1 where id<=1024;

1024 record(s) affected 
 [Executed: 8/6/2017 6:44:15 PM] [Execution: 40ms] 

select extent_id, bytes, blocks
 from user_extents
 where segment_name = 'T1'
 and segment_type = 'TABLE';

 DBMS_OUTPUT:
 ------------
 EXTENT_ID     BYTES     BLOCKS    
 ------------  --------  --------- 
 0             65536     8         
 1             65536     8         
 2             65536     8         
 3             65536     8         
 4             65536     8         

 5 record(s) selected [Fetch MetaData: 0ms] [Fetch Data: 0ms] 

 [Executed: 8/6/2017 6:45:59 PM] [Execution: 20ms] 
insert into t1 (id,value) select rownum, 'sdfghsjdfhgjhsdfhg34kjhkjHKJhjролр ЛОРОРОЛРОЛРОР jkhhjhjhHJHJHJHJHKJH jhjhjh 338458376873 kjkjkjkjk 090sdf9gng45n' from dual connect by rownum<=1024;

DBMS_OUTPUT:
 ------------
 1024 record(s) affected 

 [Executed: 8/6/2017 6:46:52 PM] [Execution: 162ms] 
select extent_id, bytes, blocks
 from user_extents
 where segment_name = 'T1'
 and segment_type = 'TABLE' ;
DBMS_OUTPUT:
 ------------
  EXTENT_ID     BYTES     BLOCKS    
 ------------  --------  --------- 
 0             65536     8         
 1             65536     8         
 2             65536     8         
 3             65536     8         
 4             65536     8         

 5 record(s) selected [Fetch MetaData: 1ms] [Fetch Data: 0ms] 

 [Executed: 8/6/2017 6:47:52 PM] [Execution: 22ms] 


Как видим, число сегментов не изменилось - данные вставились в пустые страницы.
Теперь удалим часть данных и опять вставим с хинтом APPEND
Код: plsql
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.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
delete from t1 where id<=1024;
DBMS_OUTPUT:
 ------------
 
1024 record(s) affected 

 [Executed: 8/6/2017 6:49:42 PM] [Execution: 105ms] 
select extent_id, bytes, blocks
 from user_extents
 where segment_name = 'T1'
 and segment_type = 'TABLE' ;
 DBMS_OUTPUT:
 ------------
 

 EXTENT_ID     BYTES     BLOCKS    
 ------------  --------  --------- 
 0             65536     8         
 1             65536     8         
 2             65536     8         
 3             65536     8         
 4             65536     8         

 5 record(s) selected [Fetch MetaData: 0ms] [Fetch Data: 1ms] 

 [Executed: 8/6/2017 6:50:27 PM] [Execution: 26ms] 
insert /*+ APPEND*/ into t1 (id,value) select rownum, 'sdfghsjdfhgjhsdfhg34kjhkjHKJhjролр ЛОРОРОЛРОЛРОР jkhhjhjhHJHJHJHJHKJH jhjhjh 338458376873 kjkjkjkjk 090sdf9gng45n' from dual connect by rownum<=1024;
DBMS_OUTPUT:
 ------------

 1024 record(s) affected 

 [Executed: 8/6/2017 6:51:08 PM] [Execution: 50ms] 

select extent_id, bytes, blocks
 from user_extents
 where segment_name = 'T1'
 and segment_type = 'TABLE' ;
DBMS_OUTPUT:
 ------------
 
 EXTENT_ID     BYTES     BLOCKS    
 ------------  --------  --------- 
 0             65536     8         
 1             65536     8         
 2             65536     8         
 3             65536     8         
 4             65536     8         
 5             65536     8         
 6             65536     8         

 7 record(s) selected [Fetch MetaData: 0ms] [Fetch Data: 1ms] 

 [Executed: 8/6/2017 6:51:53 PM] [Execution: 21ms]


Мирикал - добавились новые сегменты - суть пустые страницы не искались, а данные добавились в "конец"
Так что не нужно газовать, берем словарь и читаем, что в оригинале
или проверяем
...
Рейтинг: 0 / 0
Медленный insert
    #39500992
landy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно просто удалить все данные из t1, и посмотреть число сегментов под таблицу
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
delete from t1;
select extent_id, bytes, blocks
 from user_extents
 where segment_name = 'T1'
 and segment_type = 'TABLE' ;

DBMS_OUTPUT:
 ------------
  EXTENT_ID     BYTES     BLOCKS    
 ------------  --------  --------- 
 0             65536     8         
 1             65536     8         
 2             65536     8         
 3             65536     8         
 4             65536     8         
 5             65536     8         
 6             65536     8         

 7 record(s) selected [Fetch MetaData: 0ms] [Fetch Data: 1ms] 

 [Executed: 8/6/2017 6:51:53 PM] [Execution: 21ms]



и теперь вставить данные с хинтом APPEND
Код: plsql
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.
insert /*+ APPEND*/ into t1 (id,value) select rownum, 'sdfghsjdfhgjhsdfhg34kjhkjHKJhjролр ЛОРОРОЛРОЛРОР jkhhjhjhHJHJHJHJHKJH jhjhjh 338458376873 kjkjkjkjk 090sdf9gng45n' from dual connect by rownum<=1024;

DBMS_OUTPUT:
 ------------

 1024 record(s) affected 

 [Executed: 8/6/2017 7:12:46 PM] [Execution: 61ms] 
select extent_id, bytes, blocks
 from user_extents
 where segment_name = 'T1'
 and segment_type = 'TABLE' ;
DBMS_OUTPUT:
 ------------
  EXTENT_ID     BYTES     BLOCKS    
 ------------  --------  --------- 
 0             65536     8         
 1             65536     8         
 2             65536     8         
 3             65536     8         
 4             65536     8         
 5             65536     8         
 6             65536     8         
 7             65536     8         
 8             65536     8         
 9             65536     8         

 10 record(s) selected [Fetch MetaData: 0ms] [Fetch Data: 1ms] 

 [Executed: 8/6/2017 7:13:47 PM] [Execution: 21ms] 



Видим, что все равно аллокируются новые сегменты - старые не используются
...
Рейтинг: 0 / 0
Медленный insert
    #39500993
Bfink
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
landy,

Для кого этот ликбез?
TC в первом сообщении так и написал что insert именно такой.
Вопрос же в том - что происходит с индексами?
Кстати, можете попробовать в Вашем примере выполнить два инсерта подряд, не делая commit между ними.
В какие блоки попадут записи второго инсерта?
...
Рейтинг: 0 / 0
Медленный insert
    #39500998
landy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
для Elic
...
Рейтинг: 0 / 0
Медленный insert
    #39501000
landy,

Я лично понял так: Bfink, нехороший человек, решил докопаться ,что у тебя в сообщении не было знака +.
Elic пытался намекнуть об этом же.
...
Рейтинг: 0 / 0
Медленный insert
    #39501004
landy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот результат - два инсерта и общий commit
Код: plsql
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.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
SQL> drop table t1;
create table t1(
id number,
value varchar2(256));
Table dropped.

SQL>   2    3  

Table created.

SQL> 
SQL> insert into t1 (id,value) select rownum, 'sdfghsjdfhgjhsdfhg34kjhkjHKJhjролр ЛОРОРОЛРОЛРОР jkhhjhjhHJHJHJHJHKJH jhjhjh 338458376873 kjkjkjkjk 090sdf9gng45n' from dual connect by rownum<=1024;
insert into t1 (id,value) select rownum, 'sdfghsjdfhgjhsdfhg34kjhkjHKJhjролр ЛОРОРОЛРОЛРОР jkhhjhjhHJHJHJHJHKJH jhjhjh 338458376873 kjkjkjkjk 090sdf9gng45n' from dual connect by rownum<=1024;
commit;
select extent_id, bytes, blocks
 from user_extents
 where segment_name = 'T1'
 and segment_type = 'TABLE' ;
1024 rows created.

SQL> 
1024 rows created.

SQL> 
Commit complete.

SQL>   2    3    4  

 EXTENT_ID	BYTES	  BLOCKS
---------- ---------- ----------
	 0	65536	       8
	 1	65536	       8
	 2	65536	       8
	 3	65536	       8
	 4	65536	       8

SQL> delete from t1;
commit;
select extent_id, bytes, blocks
 from user_extents
 where segment_name = 'T1'
 and segment_type = 'TABLE' ;
2048 rows deleted.

SQL> 
Commit complete.

SQL>   2    3    4  

 EXTENT_ID	BYTES	  BLOCKS
---------- ---------- ----------
	 0	65536	       8
	 1	65536	       8
	 2	65536	       8
	 3	65536	       8
	 4	65536	       8

SQL> insert into t1 (id,value) select rownum, 'sdfghsjdfhgjhsdfhg34kjhkjHKJhjролр ЛОРОРОЛРОЛРОР jkhhjhjhHJHJHJHJHKJH jhjhjh 338458376873 kjkjkjkjk 090sdf9gng45n' from dual connect by rownum<=1024;
insert into t1 (id,value) select rownum, 'sdfghsjdfhgjhsdfhg34kjhkjHKJhjролр ЛОРОРОЛРОЛРОР jkhhjhjhHJHJHJHJHKJH jhjhjh 338458376873 kjkjkjkjk 090sdf9gng45n' from dual connect by rownum<=1024;
commit;
select extent_id, bytes, blocks
 from user_extents
 where segment_name = 'T1'
 and segment_type = 'TABLE' ;
1024 rows created.

SQL> 
1024 rows created.

SQL> 
Commit complete.

SQL>   2    3    4  

 EXTENT_ID	BYTES	  BLOCKS
---------- ---------- ----------
	 0	65536	       8
	 1	65536	       8
	 2	65536	       8
	 3	65536	       8
	 4	65536	       8

SQL> delete from t1;
commit;
insert /*+ APPEND*/ into t1 (id,value) select rownum, 'sdfghsjdfhgjhsdfhg34kjhkjHKJhjролр ЛОРОРОЛРОЛРОР jkhhjhjhHJHJHJHJHKJH jhjhjh 338458376873 kjkjkjkjk 090sdf9gng45n' from dual connect by rownum<=1024;
commit;
select extent_id, bytes, blocks
 from user_extents
 where segment_name = 'T1'
 and segment_type = 'TABLE' ;
2048 rows deleted.

SQL> 
Commit complete.

SQL> 
1024 rows created.

SQL> 
Commit complete.

SQL>   2    3    4  

 EXTENT_ID	BYTES	  BLOCKS
---------- ---------- ----------
	 0	65536	       8
	 1	65536	       8
	 2	65536	       8
	 3	65536	       8
	 4	65536	       8
	 5	65536	       8
	 6	65536	       8

7 rows selected.

SQL> delete from t1;
commit;
insert into t1 (id,value) select rownum, 'sdfghsjdfhgjhsdfhg34kjhkjHKJhjролр ЛОРОРОЛРОЛРОР jkhhjhjhHJHJHJHJHKJH jhjhjh 338458376873 kjkjkjkjk 090sdf9gng45n' from dual connect by rownum<=1024;
insert into t1 (id,value) select rownum, 'sdfghsjdfhgjhsdfhg34kjhkjHKJhjролр ЛОРОРОЛРОЛРОР jkhhjhjhHJHJHJHJHKJH jhjhjh 338458376873 kjkjkjkjk 090sdf9gng45n' from dual connect by rownum<=1024;
commit;
select extent_id, bytes, blocks
 from user_extents
 where segment_name = 'T1'
 and segment_type = 'TABLE' ;

1024 rows deleted.

SQL> 
Commit complete.

SQL> 
1024 rows created.

SQL> 
1024 rows created.

SQL> 
Commit complete.

SQL>   2    3    4  
 EXTENT_ID	BYTES	  BLOCKS
---------- ---------- ----------
	 0	65536	       8
	 1	65536	       8
	 2	65536	       8
	 3	65536	       8
	 4	65536	       8
	 5	65536	       8
	 6	65536	       8

7 rows selected.

SQL> 
...
Рейтинг: 0 / 0
25 сообщений из 61, страница 2 из 3
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Медленный insert
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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