powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Как нарезать таблицу?
10 сообщений из 10, страница 1 из 1
Как нарезать таблицу?
    #39293933
Фотография barrabas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть таблица с операциями по картам клиента.
сейчас там 200миллионо записей.
В месяц 25-30 тыс активных договоров, генерят 5 мил транзакций. Транзакций у одного клиента от 1 до 60000 в месяц.
Идентификатор клиента составной (ID приложения истояника, ID клиента во внеш. прил.).
Задача БД выдавать клиенту данные только по нему, т.е. клиент смотрит реестр операций и суммарный оборот за период.
Никаких аналитических запросов по всем клиентам в этой бд нет.
как правило операции смотрят за месяц.

Партиции хочу сделать по дате операции по месяцу. А вот как по клиенту портиции сделать хз. Нарезку по ID внешнего приложения? но тогда при добавлении нового нужно создавать партицию для него все время, а не просто вставить в таблицу EXT_APP.
Что посоветуете?
...
Рейтинг: 0 / 0
Как нарезать таблицу?
    #39293935
Фотография barrabas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
внешних приложений сейчас 30, будет 60.
Сейчас в одном внешнем приложении от 100-300тыс записей в месяц.
...
Рейтинг: 0 / 0
Как нарезать таблицу?
    #39293941
barrabas,

партиции по дате дадут выигрыш при получении сводной статистики по всем клиентам.
а так, все равно индекс и вероятно разные блоки под каждую дату.
но. можно завершенные месяцы перестраивать, кластеризуя по клиенту.
...
Рейтинг: 0 / 0
Как нарезать таблицу?
    #39294004
schi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
barrabasЕсть таблица с операциями по картам клиента.
сейчас там 200миллионо записей.
...
А вот как по клиенту портиции сделать хз.
Что посоветуете?

По диапазонам номеров карт не подойдет ?
По диапазонами составного числа/строки ID приложения,ID клиента не подойдет ?
...
Рейтинг: 0 / 0
Как нарезать таблицу?
    #39294015
Фотография barrabas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
schibarrabasЕсть таблица с операциями по картам клиента.
сейчас там 200миллионо записей.
...
А вот как по клиенту портиции сделать хз.
Что посоветуете?

По диапазонам номеров карт не подойдет ?
По диапазонами составного числа/строки ID приложения,ID клиента не подойдет ?
по номерам карт нет, не подойдет.
по диапазонам ID, типа partition by hash?
...
Рейтинг: 0 / 0
Как нарезать таблицу?
    #39294018
Фотография barrabas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
партиции и пелбеиbarrabas,

партиции по дате дадут выигрыш при получении сводной статистики по всем клиентам.
а так, все равно индекс и вероятно разные блоки под каждую дату.
но. можно завершенные месяцы перестраивать, кластеризуя по клиенту.
т.е. реально улучшит ситуацию если нарезать по EXT_APP_ID и при добавлении нового внешнего приложения добавлять партицию
...
Рейтинг: 0 / 0
Как нарезать таблицу?
    #39294020
Фотография orawish
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
barrabas,

а зачем вам партиции по клиенту?
(как только на этот вопрос ответите - должны появиться варианты решения - например, нафик..)
...
Рейтинг: 0 / 0
Как нарезать таблицу?
    #39294021
Фотография barrabas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
schibarrabasЕсть таблица с операциями по картам клиента.
сейчас там 200миллионо записей.
...
А вот как по клиенту портиции сделать хз.
Что посоветуете?

По диапазонам номеров карт не подойдет ?
По диапазонами составного числа/строки ID приложения,ID клиента не подойдет ?
забыл написать, в некоторых внешних приложениях ID клиенте - varchar2, поэтому и в таблице с операциями ID тоже varchar2
...
Рейтинг: 0 / 0
Как нарезать таблицу?
    #39294165
Су-35
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
barrabas,

Если задача показать конкретному клиенту его месячные операции - то, почему бы просто к партиционированию по дате операции (по месяцам) не добавить локальный индекс по клиенту? Думаю этого будет достаточно.
...
Рейтинг: 0 / 0
Как нарезать таблицу?
    #39294219
Су-35не добавить локальный индексвставка, вероятно, в порядке времени. шансы, что несколько записей одного клиента окажутся в одном блоке, с учетом тормознуточть пposов, равны нулю. то есть, все равно два-три бранча по индексу и столько блоков, сколько записей. на скорости партиционирование по дате не скажется.
оно только позволит оптимизировать хранение для неменяющихся партиций по прошествии даты.
лоеальный индекс по клиенту будет неудачен для выборки не за партицию, а за меньший период и больший тоже.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Как нарезать таблицу?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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