powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Java и API DirectPath Oracle ?
14 сообщений из 14, страница 1 из 1
Java и API DirectPath Oracle ?
    #39380628
nagisa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
День добрый Коллеги!

Вопрос - есть ли API DirectPath под Java ?
к сожалению гугление не дало положительного результата - все ссылки на хинт /*+ APPEND */ и только. Неужели нет ничего ?

ps: как на сях грузить через DirectPath уже разобрался, в тестах получил 250тыс зап в секунду, хочу получить подобные скорости и в Java
...
Рейтинг: 0 / 0
Java и API DirectPath Oracle ?
    #39380765
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nagisa,
а код где? На сях и на Java?
...
Рейтинг: 0 / 0
Java и API DirectPath Oracle ?
    #39380907
Фотография grasoff.net
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nagisaДень добрый Коллеги!

Вопрос - есть ли API DirectPath под Java ?
к сожалению гугление не дало положительного результата - все ссылки на хинт /*+ APPEND */ и только. Неужели нет ничего ?

ps: как на сях грузить через DirectPath уже разобрался, в тестах получил 250тыс зап в секунду, хочу получить подобные скорости и в Java Как правильно вставить ArrayList в SQL таблицу ?
...
Рейтинг: 0 / 0
Java и API DirectPath Oracle ?
    #39381080
nagisa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
grasoff.netКак правильно вставить ArrayList в SQL таблицу ?
это не то, я говорю про API
те аналогично тому что есть на си
см
http://docs.oracle.com/cd/B19306_01/appdev.102/b14250/oci12obn.htm#i433129
и https://vrogier.github.io/ocilib/doc/html/group___ocilib_c_apidirect_path.html

How to use direct path

1 : Create a direct path handle with OCI_DirPathCreate()
2 : Set (optional) some direct path load attributes
3 : Describe the columns to load with OCI_DirPathSetColumn()
4 : Populate data with OCI_DirPathSetEntry()
5 : Convert the data with OCI_DirPathConvert()
6 : Load the data into the database with OCI_DirPathLoad()
7 : Repeat step 4,5,6 + reset the stream with OCI_DirPathReset() until all rows has been loaded
8 : Commit the load with OCI_DirPathFinish()
9 : Free the direct path handle with OCI_DirPathFree()

ну и скорости совсем другие
те если обычными инсертами то потолок в районе 3500 записей в секунду
а с DirectPath я получил 250тысяч
...
Рейтинг: 0 / 0
Java и API DirectPath Oracle ?
    #39381082
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nagisaте если обычными инсертами то потолок в районе 3500 записей в секунду
есть инсерты пачками-пакетами.
есть инсерты через перекачку файла в шару сервера и импорт целиком файла.
...
Рейтинг: 0 / 0
Java и API DirectPath Oracle ?
    #39381124
Фотография grasoff.net
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nagisaэто не то, я говорю про APIтам есть комментарий где-то, что directapi - это твой хинт append
...
Рейтинг: 0 / 0
Java и API DirectPath Oracle ?
    #39382758
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как я понимаю, доступа к Direct API, как этого хочет топик стартер - нет.

Но по опыту из Oracle 8i, при достаточно большем Bulk Array + APPEND - скорость вполне приличная. Т.ч. такой уж надобности в Direct API на мой взгляд и нет. Диски (даже относительно приличные средние массивы) и сеть (1 Gbit ethernet) первыми становятся бутылочным горлышком.

IMHO & AFAIK
...
Рейтинг: 0 / 0
Java и API DirectPath Oracle ?
    #39382759
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
grasoff.netтам есть комментарий где-то, что directapi - это твой хинт append
Занимался этим в 8i, тогда это было так. AFAIK даже для C никакой специальной поддержки Direct API не было.

Дает ли какие либо приемушества собсветно Direct API из ссылки ТС - не знаю, не пользовался.
...
Рейтинг: 0 / 0
Java и API DirectPath Oracle ?
    #39382800
dbpatch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nagisaДень добрый Коллеги!

Вопрос - есть ли API DirectPath под Java ?
к сожалению гугление не дало положительного результата - все ссылки на хинт /*+ APPEND */ и только. Неужели нет ничего ?

ps: как на сях грузить через DirectPath уже разобрался, в тестах получил 250тыс зап в секунду, хочу получить подобные скорости и в Java

в JDBC thin клиенте точно нет.

а так - я бы посмотрел на конструкцию вида INSERT /*+ APPEND */ SELECT * FROM external_table


где external_table - собственно внешняя таблица в виде .csv файла.

это не совсем честный direct path insert, но это будет работать, и, кстати, довольно быстро, даже быстрее, чем через OCI вызовы от клиента.
...
Рейтинг: 0 / 0
Java и API DirectPath Oracle ?
    #39384216
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dbpatchгде external_table - собственно внешняя таблица в виде .csv файла.

IMHO большой минус, что нужен доступ к серверу и его файловой системе. Это же админов пинать надо.

Ну еще и не забывать после себя мусор с сервера удалять ))) По опыту, обычно до удаления мусора с сервера доходит только тогда, когда сервер уже в пред-коматозном состоянии )))
...
Рейтинг: 0 / 0
Java и API DirectPath Oracle ?
    #39385062
nagisa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Leonid Kudryavtsevgrasoff.netтам есть комментарий где-то, что directapi - это твой хинт append
Занимался этим в 8i, тогда это было так. AFAIK даже для C никакой специальной поддержки Direct API не было.

Дает ли какие либо приемушества собсветно Direct API из ссылки ТС - не знаю, не пользовался.
я же написал - получил 250тыс записей в секунду, imho DP себя оправдывает
...
Рейтинг: 0 / 0
Java и API DirectPath Oracle ?
    #39385064
nagisa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
dbpatchnagisaДень добрый Коллеги!

Вопрос - есть ли API DirectPath под Java ?
к сожалению гугление не дало положительного результата - все ссылки на хинт /*+ APPEND */ и только. Неужели нет ничего ?

ps: как на сях грузить через DirectPath уже разобрался, в тестах получил 250тыс зап в секунду, хочу получить подобные скорости и в Java

в JDBC thin клиенте точно нет.

а так - я бы посмотрел на конструкцию вида INSERT /*+ APPEND */ SELECT * FROM external_table


где external_table - собственно внешняя таблица в виде .csv файла.

это не совсем честный direct path insert, но это будет работать, и, кстати, довольно быстро, даже быстрее, чем через OCI вызовы от клиента.
этот путь известен и он реально быстрый, но, не всегда удобный
грубо говоря есть парсер который жрет что-то неформатное и грузит
в случае с внешней таблицей потребуется сначала ее слепить а потом грузить. те потери времени и места.
...
Рейтинг: 0 / 0
Java и API DirectPath Oracle ?
    #39385138
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nagisa,
вам сюда
авторСделал простой тест
Вставка в таблицу поля (a,b,c: integer) 1 000 000 записей

(все СУБД внутри виртуальной машины VirtualPC)

MS SQL 2005 544сек
ORACLE 10 100сек
CACHE 2009.1 через интерфейс Objects 70сек
CACHE 2009.1 через интерфейс SQL 45сек
CACHE 2009.1 через доступ к глобалям 7сек

У кого есть какие комментарии?
У меня вопрос - почему такое отставание MSSQL (Он при работе все время обращается к винту) ?
Быстрое создание записей в БД
...
Рейтинг: 0 / 0
Java и API DirectPath Oracle ?
    #39385151
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nagisaя же написал - получил 250тыс записей в секунду, imho DP себя оправдывает
Ну если очень нужно.... берем в руки C и Java™ Native Interface )))

As far as I know, в JDBC, даже в расширениях, такого пока нет. Может когда нибудь и допилят. Если есть саппорт, можно на металинке для порядка спросить.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Java и API DirectPath Oracle ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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