Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Вопрос по табличным пространствам.  [new]
Virtuoz
Member

Откуда: Украина
Сообщений: 307
и по методам хранение больших объемов данных

В общем вопрос в следующем: (Сразу оговорюсь Oracle-ом занимаюсь вторую неделю, пока что удалось все установить и создать БД (16 таблиц)) (Оракл 10ж)

Мне необходимо вести учет трафика интернет абонентов. С этим проблем нет, во всяком случае пока (перенес логику с MS SQL Server 2000 - вроде работает), проблема возникла с хранением огромного количества данных по трафику интернет-абонентов (кто куда, когда ходил и т.д.). Так вот такой вопрос: Как это лучше реализовать средствами Оракл??? Что-то слышал про архивируемые табличные пространства, но что это и "с чем его едят" - не знаю.

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

Заранее благодарен!!!
13 окт 06, 12:11    [3258145]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
tru55
Member

Откуда: СПб
Сообщений: 19790
читай про partition, размещение их в разных tablespace и перевод старых partition (tablespace) в READ ONLY
13 окт 06, 12:17    [3258185]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
Virtuoz
Member

Откуда: Украина
Сообщений: 307
Ок, щас поищу что-нить по этой теме. Спасибо.

Кто еще скажет в каком направлении лучше продвигаться - также буду очень благодарен.
13 окт 06, 12:18    [3258200]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
Вячеслав Любомудров
Member

Откуда: Владивосток
Сообщений: 18486
Мне интересно, а зачем в билинге READ ONLY, там же данные (детализированные) больше месяца не хранятся
Или я не прав?
13 окт 06, 12:20    [3258215]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 64001
Блог
Вячеслав Любомудров
Мне интересно, а зачем в билинге READ ONLY, там же данные (детализированные) больше месяца не хранятся

Хм. Во-первых, месяца мало в любом случае.

Во-вторых, у меня есть привычка никогда-никогда-никогда не удалять данные, успевшие так или иначе поучаствовать в бизнес-процессе. Никогда не знаешь, с чем придется разбираться и куда ради этого закопаться. Поэтому стратегию "READ ONLY, отмонтировать и в сейф" я полагаю глубоко и принципиально верной - если, конечно, по соображениям объема нежелательно держать в онлайне.
13 окт 06, 12:26    [3258293]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
Virtuoz
Member

Откуда: Украина
Сообщений: 307
У меня постановка задачи детальную информацию по трафику хранить 3 года :(.

При этом я данные за день группирую День, Абонент, sum(трафик), sum(Деньги) и складываю в таблицу, к которой постоянно обращаюсь, а вот детальный трафик надо положить и не трогать. Трогать его прийдется только в том случае, если начнутся разбирательство с нерадивым абонентом.

Я просто понимаю, что этих жанных будет немерено много и я не знаю хватит ли мне 1Тбайта что бы это все 3 года хранить. Вот и спрашиваю у честного народа как это лучше реализовать??? Может стоит вообще хранить обычными файлами, например текстовыми или xml и к ним обращаться в случае необходимости????
13 окт 06, 12:38    [3258410]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
Virtuoz
Member

Откуда: Украина
Сообщений: 307
2 tru55:

А можно ли немного по-подробнее про партишины, точнее не совсем про них, а про то как они могут помочь в моей ситуации??? Я могу ли с помощью них как нить уменьшить физически занимаемый размер файлов базы данных. Я ведь хочу иметь возможность как нить упаковать детализированные данные по трафику...

В общем пока что вопрос открыт - как лучше решить данную задачу пока что не знаю....
13 окт 06, 12:49    [3258520]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
tru55
Member

Откуда: СПб
Сообщений: 19790
физический размер не уменьшится, но
1. уменьшится время выполнения запросов, если будут запрашиваться данные из 1 partition
2. если 1 из tablespace, содержащий ненужный на данный момент partition станет недоступен, то остальная таблица остается доступной
13 окт 06, 12:54    [3258551]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
Nuri
Member

Откуда: Архангельск
Сообщений: 625
Вячеслав Любомудров
Мне интересно, а зачем в билинге READ ONLY, там же данные (детализированные) больше месяца не хранятся
Или я не прав?

Не прав. Провайдеры обязаны хранить трафик три года.
13 окт 06, 12:55    [3258563]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
Sqaimes
Member

Откуда: Украина, Мариуполь
Сообщений: 443
автор
перенес логику с MS SQL Server 2000

А как там делали?
13 окт 06, 13:44    [3259076]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
Virtuoz
Member

Откуда: Украина
Сообщений: 307
Когда это все работало под MS SQL Server - такого и вопроса не возникало, так как было всего 20 интернет абонентов, только в одном месяце их по моему было 27, а потом решили развиваться, закупили новое оборудование и теперь должно быть около 1000 абонентов за первый 3 месяца. И теперь я реально понимаю какой это будет объем данных. Вот.
13 окт 06, 14:06    [3259251]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
Virtuoz
Member

Откуда: Украина
Сообщений: 307
Собственно именно по этому я и начал смотреть в сторону Оракл. Хотя до этого всю жизнь использовал MS SQL Server, начиная с 6,5 (ну и годик пришлось с FireBird-ом повозиться).
13 окт 06, 14:25    [3259368]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
Virtuoz
Member

Откуда: Украина
Сообщений: 307
Так в общем, двигаясь в направление partition наткнулся на оператор COMPRESS? Это что за "птица"???
13 окт 06, 14:27    [3259381]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
Takurava
Member

Откуда:
Сообщений: 1776
Virtuoz
Так в общем, двигаясь в направление partition наткнулся на оператор COMPRESS? Это что за "птица"???
А поищи для начала по форуму...
13 окт 06, 14:32    [3259415]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
Virtuoz
Member

Откуда: Украина
Сообщений: 307
Вот нарыл запросец, который использует COMPRESS. В общем все становится понятным и может быть именно этот метод мне и подойдет. Попробую.


автор

CREATE TABLE easydw.purchases
(product_id varchar2(8),
time_key date,
customer_id varchar2(10) ,
purchase_date date,
purchase_time number(4,0),
purchase_price number(6,2) ,
shipping_charge number(5,2),
today_special_offer varchar2(1))
PARTITION by RANGE (time_key)
(partition purchases^jan2002
values less than (TO_DATE('01-02-2002', 'DD-MM-YYYY'))
. pctfree 0 pctused 99
storage (initial 64-k next 64k pctincrease 0)
tablespace purchases_jan2002 COMPRESS,
partition purchases_feb2002
values less than (TO_DATE('01-03-2002', 'DD-MM-YYYY'))
pctfree 0 pctused 99
storage (initial 64k next 64k pctincrease 0)
tablespace purchases_feb2002 COMPRESS,
partition purchases_mar2002
values less than (TO_DATE('01-04-2002', 'DD-MM-YYYY'))
pctfree 0 pctused 99
storage (initial 64k next 64k pctincrease 0)
tablespace purchases_mar2002 COMPRESS,
partition purchase_catchall
values less than (MAXVALUE)
...
13 окт 06, 14:42    [3259497]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
Virtuoz
Member

Откуда: Украина
Сообщений: 307
Люди, ну подскажите еще что нить по этой теме перед выходными - чтобы было над чем поразмыслить.

Варианта у меня сейчас 2:

1) Хранить детальный трафик в текстовых файлах, к ним коннектиться из Оракла как к внещним таблицам, затем, например раз в месяц паковать их (например написать батник, который будет паковать). Минусов у этого метода больно много. Так как если через пол года прийдется разьираться - то надо ручками распаковывать.

2) Разбиваем табличное пространство на 2 partition, для которых:
1) указывем обычные настройки для первой партиции и складываем сюда данные, пока дата меньше указанной
2) Для второй указывем COMPRESS и сюда складываем данные большими масивами, например 1 раз в месяц. Таким образом будем иметь упакованую часть БД + всегда имеем к ней доступ, пусть и не такой быстрый, но все же.

Может еще есть какие-нить варианты????

Подскажите плиз!!
13 окт 06, 16:37    [3260311]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
Mikst
Member

Откуда: Москва
Сообщений: 983
Virtuoz
Люди, ну подскажите еще что нить по этой теме перед выходными - чтобы было над чем поразмыслить.

Варианта у меня сейчас 2:


Первый точно в корзину.

Вариант 2б:
Каждый месяц данных храните в своей партиции, каждая партиция в своем тейблспейсе.

Можно даже без COMPRESS (у него глюков хватает прямо скажем)

в итоге получаете такую структуру ТС:
+1 месяц - активное
0 месяц( текущий) - активное
-1 и -2 месяц - READ ONLY
-3 до -n месяцы - OFFLINE, лежат в архивах на диске (Zip, rar и т.д)
-n и дальше - OFFLINE, лежат где-нибудь на ленте, или DVD или еще что-нибудь такое.
13 окт 06, 16:47    [3260361]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 64001
Блог
Virtuoz
1) Хранить детальный трафик в текстовых файлах, к ним коннектиться из Оракла как к внещним таблицам

Вряд ли это будет хорошо.

Virtuoz
2) Разбиваем табличное пространство на 2 partition, для которых:

Почему табличное пространство и зачем же на две?

Разбиваете таблицу на некоторое количество партиций. В зависимости от специфики доступа к данным разной старости можно задавать им разные параметры хранения, например переносить старые партиции на медленные винты. С COMPRESSом не баловался, не готов давать советы. Совсем старые и ненужные партиции переводите в read-only, переписываете табличное пространство на архивный носитель и убираете из базы.
13 окт 06, 16:49    [3260375]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
Mikst
Member

Откуда: Москва
Сообщений: 983
Таким образом вы имеете быстрый доступ к недалеким по времени датам, чуть менее быстрый (распаковать архив) к устаревшим и совсем долго доставать то что было при царе горохе, но оно как правило редко нужно.
13 окт 06, 16:49    [3260379]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
Virtuoz
Member

Откуда: Украина
Сообщений: 307
Ага, понятно READ ONLY и OFF LINE - это я так понимаю для партиции указывается или для TableSpace.

То есть на сколько я понял те tablespace (или все таки партиции - путаюсь еще) мы можем физически удалить на другой винт(-ы)? Так ли это?

И как их потом вернуть в базу, если необходимо будет к ним достучаться???
13 окт 06, 17:05    [3260471]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
Virtuoz
Member

Откуда: Украина
Сообщений: 307
И как их потом паковать\распаковывать ??? Средствами Oracle или вручную??

Если средствами Oracle - то расскажи по подробнее плиз.

Заранее благодарен.
13 окт 06, 17:07    [3260486]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
tru55
Member

Откуда: СПб
Сообщений: 19790
Если tablespace переведено в offline, Oracle не проверяет его наличие при подъеме базы. Соответственно, его можно физически куда-либо переместить. Если потом понадобится - перемещай назад и переводи в online.
Стандартных средств паковки в Oracle нет, так что если надо ужать то, что в offline - любыми архиваторами.
13 окт 06, 17:12    [3260513]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
MacDuck
Member

Откуда: Москва-Подольск
Сообщений: 6387
Virtuoz
И как их потом паковать\распаковывать ??? Средствами Oracle или вручную??

Если средствами Oracle - то расскажи по подробнее плиз.

Заранее благодарен.


Пятница вечер, а ты с такими проблемами...почитал бы ты чего-нить...

С компрессией будь осторожен.
13 окт 06, 17:13    [3260519]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
Mikst
Member

Откуда: Москва
Сообщений: 983
Virtuoz
Ага, понятно READ ONLY и OFF LINE - это я так понимаю для партиции указывается или для TableSpace.

То есть на сколько я понял те tablespace (или все таки партиции - путаюсь еще) мы можем физически удалить на другой винт(-ы)? Так ли это?

И как их потом вернуть в базу, если необходимо будет к ним достучаться???


Соглашусь с MacDuck - почитай чего-нибудь (намек: оракловая дока), просил пищу, тебе ее дали.

Последний совет:
читай Концепты (про Tablespace и с чем их едят)
и Datawarehouse - там про партиции и прочее.
13 окт 06, 17:18    [3260546]     Ответить | Цитировать Сообщить модератору
 Re: Вопрос по табличным пространствам.  [new]
Virtuoz
Member

Откуда: Украина
Сообщений: 307
Ок, спасибо за ответы, буду читать, до понедельника.
13 окт 06, 17:56    [3260731]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Oracle Ответить