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

Опишу подробнее.
Есть база, в базе большая по числу записей таблица.
К бд подключаются несколько одинаковых java приложений. Каждое умеет обрабатывать записи таблицы. То есть вычитывать, изменять и сохранять обратно в туже таблицу.

Требуется запустить обработку всех записей из таблицы, удовлетворяющих условию.
Допустим, если таблица содержит 10млн строк, то под условие может попадать 8,5 млн. И эти 8,5 млн строк требуется обработать, например, на 5 клиентских приложениях - около 1,7 млн записей на каждого.

Как можно разделить данные между клиентами, чтобы не было проблем во время обработки? Как в таком подходе будет реагировать оракл?
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39701138
Фотография AmKad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
feomatr,

А что такого умеет делать клиент, что возникает необходимость тянуть к нему данные?
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39701147
feomatr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AmKad,

Клиент по отношению к бд. На самом деле это уровень сервера приложений.
Хочется перераспределить нагрузку по обработке данных с сервера бд на сервера приложений.
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39701151
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
feomatrХочется перераспределить нагрузку по обработке данных с сервера бд на сервера приложений.

Хочется - перераспределяй. Но что заставляет делать это средствами БД? Заведи диспетчер,
который вычитает твои 8кк записей и раскидает по исполнителям.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39701217
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
feomatrХочется перераспределить нагрузку по обработке данных с сервера бд на сервера приложений.Наивный велосипедостроитель? "Шчаз я на яве всех порву, как тузик грелку"?
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39701606
feomatr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry SibiryakovfeomatrХочется перераспределить нагрузку по обработке данных с сервера бд на сервера приложений.

Хочется - перераспределяй. Но что заставляет делать это средствами БД? Заведи диспетчер,
который вычитает твои 8кк записей и раскидает по исполнителям.
Когда исполнитель выбирает пачку данных и активно ее обновляет не будет происходить столкновений/взаимных блокировок в оракле при обновлении строк?

Будет разница если горизонтально разделять записи таблицы для обработчиков? А если каждый из обработчиков пронуровать и пусть он отрабатывает строки, хэш функция которых при делении на число обработчиков равна номеру обработчика?
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39701610
feomatr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ElicfeomatrХочется перераспределить нагрузку по обработке данных с сервера бд на сервера приложений.Наивный велосипедостроитель? "Шчаз я на яве всех порву, как тузик грелку"?

Есть идеи, как оптимально организовать такой процесс обработки?
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39701625
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
feomatrКогда исполнитель выбирает пачку данных и активно ее обновляет не будет происходить
столкновений/взаимных блокировок в оракле при обновлении строк?

С кем столкновений? Диспетчер - один. Он коммитит транзакцию перед раскидыванием
выбранного списка исполнителям.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39701659
Мутаген
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Mu:hleisenTransferring a large amount of data from a database to a
client program is a surprisingly expensive operation. The
time this requires can easily dominate the query execution
time for large result sets.
http://www.vldb.org/pvldb/vol10/p1022-muehleisen.pdf
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39701803
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
feomatrкак оптимально организовать такой процесс обработки?"Такой" - это сферо-коне-вакуумо-образный?
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39701806
feomatr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry SibiryakovfeomatrХочется перераспределить нагрузку по обработке данных с сервера бд на сервера приложений.

Хочется - перераспределяй. Но что заставляет делать это средствами БД? Заведи диспетчер,
который вычитает твои 8кк записей и раскидает по исполнителям.


1)На сколько эффективно , если Исполнитель будет обновлять каждую запись в отдельной транзакции?
2) на сколько эффективно обновлять записи пачками?

Есть best practices в массовой обработке данных из бд на клиенте?
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39701811
feomatr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry SibiryakovfeomatrКогда исполнитель выбирает пачку данных и активно ее обновляет не будет происходить
столкновений/взаимных блокировок в оракле при обновлении строк?

С кем столкновений? Диспетчер - один. Он коммитит транзакцию перед раскидыванием
выбранного списка исполнителям.
Если исполнителей много и каждый активно пишет и читает одну таблицу, то полагаю, что СУБД при определенной нагрузке может начать не поддерживать конкурентный доступ к таблице.
Насколько это реально? Есть какой-то sla у оракла.
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39701812
feomatr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Или массовая обработка просто напросто упрется в сеть и передачу данных ? Как указал Мутаген.
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39701816
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
feomatrобработке данных из бд на клиентеНемотивированная самоцель.
Но таки да, ты уменьшишь конкуренцию за счёт замедления обработки путём выноса её на клиентов
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39701838
feomatr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сформулировал мысль и задал вопрос в другой ветке.

http://www.sql.ru/forum/1302406-a/posovetuyte-podhody-i-literaturu-po-massovoy-obrabotke-dannyh

Спасибо за ответы)
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39701945
XMLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
feomatr1)На сколько эффективно , если Исполнитель будет обновлять каждую запись в отдельной транзакции?


Неэффективно, ты рискуешь не просто не достигнуть своей цели - снизить нагрузку, ты рискуешь добиться обратного.

feomatr2) на сколько эффективно обновлять записи пачками?

После построчной обработке тебе покажется что "ура, все полетело". Но это только кажется
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39701974
feomatr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
XMLer,
Что может случиться?
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39701978
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
feomatr1)На сколько эффективно , если Исполнитель будет обновлять каждую запись в отдельной
транзакции?

Если результатом работы исполнителя является одна запись, то обновлять её в транзакции -
единственно правильное решение.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39701998
feomatr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,

Результатом работы исполнителя предполагается обновление каждой записи из переданной ему пачки. Пачка размерами от тысяч, десятков тысяч
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39702006
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
feomatrРезультатом работы исполнителя предполагается обновление каждой записи из переданной ему
пачки.

Это бред, которые не имеет смысла выносить из СУБД.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39702057
XMLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
feomatr,
Никакой пачкой ты не добьёшся производительности, сравнимой с массовой обработкой внутри СУБД.
Вспомнил один похожий проект, миграция обработки файла одной из IPS из Oracle в AppServer на Java. Целью проекта было отказ от дорогой СУБД, она была достигнута. Но производительностью подобные решения не страдают.
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39702320
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
feomatrЕсть best practices в массовой обработке данных из бд на клиенте?
В общем, да. И эта best practice - не делать массовых обработок данных из бд на клиенте :)
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39702327
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerИ эта best practice - не делать массовых обработок данных из бд на клиенте :)

Кто ж знает, что ТС называет "обработкой" и насколько она массовая...
Прибавить единицу к значению поля в миллиарде записей это одно. Но есть и вещи типа SETI и
прочего майнинга, которые требует очень больших вычислительных мощностей, но и входные
данные и результат которых сравнительно компактны.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Массовая обработка таблицы на клиентах
    #39702389
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovНо есть и вещи типаУспокойся. Просто ТС явист. Иначе бы уже давно обозначил сферического коня.
...
Рейтинг: 0 / 0
24 сообщений из 24, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Массовая обработка таблицы на клиентах
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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