Size: a a a

SDS и Кластерные FS

2020 September 16

ВН

Виталий На Заборе... in SDS и Кластерные FS
могу вообще-то прям проверить
источник

p

pragus in SDS и Кластерные FS
Виталий На Заборе
хм, а это что, надо почитать
короче, если ты засрёшь SQ - сам дурак )
источник

N

Nikolay in SDS и Кластерные FS
Виталий На Заборе
ну вот я это наблюдал то ли на 11 то ли на 12
100% это работало на 11.4.
источник

ВН

Виталий На Заборе... in SDS и Кластерные FS
Nikolay
это 10ка.
а, ну не, кажись io_submit для чтений юзает. правда нюанс в том, что по 1 операции сабмитит
источник

ВН

Виталий На Заборе... in SDS и Кластерные FS
io_submit(0x7f61d0a95000, 1, [{aio_data=0x6776b0b8, aio_lio_opcode=IOCB_CMD_PREAD, aio_fildes=263, aio_buf=0x22bc00000, aio_nbytes=8192, aio_offset=4430598316032}]) = 1
io_getevents(0x7f61d0a95000, 2, 128, [{data=0x7f61ca8bf4b8, obj=0x7f61ca8bf4b8, res=1048576, res2=0}], {tv_sec=0, tv_nsec=0}) = 1
io_getevents(0x7f61d0a95000, 1, 128, [{data=0x6776b0b8, obj=0x6776b0b8, res=8192, res2=0}], {tv_sec=600, tv_nsec=0}) = 1
io_submit(0x7f61d0a95000, 1, [{aio_data=0x68e0ef48, aio_lio_opcode=IOCB_CMD_PREAD, aio_fildes=263, aio_buf=0x22ba00000, aio_nbytes=8192, aio_offset=4430598324224}]) = 1
io_getevents(0x7f61d0a95000, 1, 128, [{data=0x68e0ef48, obj=0x68e0ef48, res=8192, res2=0}], {tv_sec=600, tv_nsec=0}) = 1
getrusage(RUSAGE_THREAD, {ru_utime={tv_sec=989, tv_usec=620011}, ru_stime={tv_sec=3, tv_usec=395419}, ...}) = 0
getrusage(RUSAGE_THREAD, {ru_utime={tv_sec=989, tv_usec=641217}, ru_stime={tv_sec=3, tv_usec=395419}, ...}) = 0
pread64(263, "\6\242\0\0\233\206? u\267\362:l\4\2\4uR\0\0\1\0\0\0W#v\0Q\302O:"..., 8192, 4432151666688) = 8192
io_submit(0x7f61d0a95000, 1, [{aio_data=0xba8a78a8, aio_lio_opcode=IOCB_CMD_PREAD, aio_fildes=263, aio_buf=0x22b900000, aio_nbytes=8192, aio_offset=4430598332416}]) = 1
io_getevents(0x7f61d0a95000, 1, 128, [{data=0xba8a78a8, obj=0xba8a78a8, res=8192, res2=0}], {tv_sec=600, tv_nsec=0}) = 1
getrusage(RUSAGE_THREAD, {ru_utime={tv_sec=989, tv_usec=719788}, ru_stime={tv_sec=3, tv_usec=395419}, ...}) = 0
источник

ВН

Виталий На Заборе... in SDS и Кластерные FS
и т.п.
источник

ВН

Виталий На Заборе... in SDS и Кластерные FS
ну может конечно просто не параллелится задача. но весь вопрос, а что ж тогда параллелится-то
источник

N

Nikolay in SDS и Кластерные FS
Виталий На Заборе
а, ну не, кажись io_submit для чтений юзает. правда нюанс в том, что по 1 операции сабмитит
там это зависит от sql. где-то можно начитать, а где-то только последовательно т.к нужно начитать и слю порцию взять из начитанной
источник

ВН

Виталий На Заборе... in SDS и Кластерные FS
ну вот я щас в стрейсе вообще не вижу ни одного io_submit где было бы несколько чтений
источник

ВН

Виталий На Заборе... in SDS и Кластерные FS
что выглядит вроде как странно
источник

ВН

Виталий На Заборе... in SDS и Кластерные FS
большие блоки по мегабайту время от времени вижу
источник

N

Nikolay in SDS и Кластерные FS
источник

ВН

Виталий На Заборе... in SDS и Кластерные FS
и это 12-й оракл
источник

N

Nikolay in SDS и Кластерные FS
можно открыть ту презентаху и посмотреть поиском nr=
источник

ВН

Виталий На Заборе... in SDS и Кластерные FS
Nikolay
можно открыть ту презентаху и посмотреть поиском nr=
а, то есть асинхронные чтения в оракле есть - кто-то их видел!
источник

ВН

Виталий На Заборе... in SDS и Кластерные FS
=))))
источник

ВН

Виталий На Заборе... in SDS и Кластерные FS
ну это хорошо, ещё бы самому их увидеть
источник

ВН

Виталий На Заборе... in SDS и Кластерные FS
у меня вот кажется от этого и бомбило, да... что асинхронно, но по одному блоку
источник

ВН

Виталий На Заборе... in SDS и Кластерные FS
pragus
короче, если ты засрёшь SQ - сам дурак )
ага, посмотрел про CQ backpressure, но это какой-то изврат всё-таки. я у себя на самом деле сделал так, что просто в процессе выполнения не может быть больше запросов, чем размер SQ
источник

ВН

Виталий На Заборе... in SDS и Кластерные FS
т.к. концепцию разного числа запросов там и там я как-то не уловил
источник