Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Partitioning, в чем его минусы?
|
|||
|---|---|---|---|
|
#18+
Настроил партицирование таблицы (в таблице хранятся данные о трафике за большой период времени, от года и выше), разбиение сделал по месяцам. Запросы стали работать в 2-6 раз быстрее. Скорость вставки пока еще не проверял, но думаю из-за отсутствия больших индексов вставка тоже будет работать быстрее, если ее не замедлят RULE. Но есть и минусы: -нет возможности автоматизировать добавление новых таблиц и RULE для вставки при смене месяца (все нужно делать заранее и можно где-то ошибиться или забыть добавить) Можно ли как-то упростить это или обязательно все делать вручную? Какие еще могут быть непредвиденные недостатки партицирования, ведь не может же все быть так хорошо? Еще интересует как партицирование реализуется в др. СУБД, тоже на основе наследования или как-то еще? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2007, 19:55 |
|
||
|
Partitioning, в чем его минусы?
|
|||
|---|---|---|---|
|
#18+
Права на таблици не наследуются, тоесть при добавлении группы пользователей необходимо устанавливать вручную права на все партиции. У вообще минусы тут все от большого кол-ва таблиц. У меня на добпвление таблиц работает ХП, которая запускается по крону в конце каждого отчетного периода. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2007, 16:06 |
|
||
|
Partitioning, в чем его минусы?
|
|||
|---|---|---|---|
|
#18+
я сделал функцию, которая делает insert в таблицу текущего месяца. и функцию которая создает новые таблицы для нового месяца. вариант работы через rule мне не понравился. права на таблицы не раздавал, а написал функцию, которая делает из них выборку и клиенту отдает готовый результат. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2007, 18:06 |
|
||
|
Partitioning, в чем его минусы?
|
|||
|---|---|---|---|
|
#18+
DeWiLя сделал функцию, которая делает insert в таблицу текущего месяца. и функцию которая создает новые таблицы для нового месяца. вариант работы через rule мне не понравился. права на таблицы не раздавал, а написал функцию, которая делает из них выборку и клиенту отдает готовый результат. Можете примеры выложить? Сейчас пробую что-то придумать для этого, пока безуспешно. Как в руле определать текущий месяц? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2007, 20:45 |
|
||
|
Partitioning, в чем его минусы?
|
|||
|---|---|---|---|
|
#18+
Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2007, 11:47 |
|
||
|
Partitioning, в чем его минусы?
|
|||
|---|---|---|---|
|
#18+
Ошибся.. это начало следующего квартала в конце текущего :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2007, 11:49 |
|
||
|
Partitioning, в чем его минусы?
|
|||
|---|---|---|---|
|
#18+
2 Алексей Ключников Я не силен в бухгалтерии, но может имелось в виду: Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2007, 11:55 |
|
||
|
Partitioning, в чем его минусы?
|
|||
|---|---|---|---|
|
#18+
Ну просто мне не важно.. использую за один день до нового квартала. так что можно было поставить 2 дня. а вообще Код: plaintext можно что то вроде current_month или имя конкретного месяца указывать :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2007, 12:13 |
|
||
|
Partitioning, в чем его минусы?
|
|||
|---|---|---|---|
|
#18+
Алексей Ключников а вообще Код: plaintext можно что то вроде current_month или имя конкретного месяца указывать :) ????? Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2007, 14:14 |
|
||
|
Partitioning, в чем его минусы?
|
|||
|---|---|---|---|
|
#18+
т.е. в выражении now()+ INTERVAL '1 month ' Он прибавляет просто цифирку в значении месяца.. Не знал, надо записать себе куда нибудь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2007, 16:05 |
|
||
|
Partitioning, в чем его минусы?
|
|||
|---|---|---|---|
|
#18+
Есть большие проблемы с ссылками на партиционированные таблицы. Вернее совершенно не понятно как с этим бороться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2007, 15:38 |
|
||
|
Partitioning, в чем его минусы?
|
|||
|---|---|---|---|
|
#18+
AlexanderFedyukovЕсть большие проблемы с ссылками на партиционированные таблицы. Вернее совершенно не понятно как с этим бороться. можно подробней на этом моменте? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2007, 19:37 |
|
||
|
Partitioning, в чем его минусы?
|
|||
|---|---|---|---|
|
#18+
postuser DeWiLя сделал функцию, которая делает insert в таблицу текущего месяца. и функцию которая создает новые таблицы для нового месяца. вариант работы через rule мне не понравился. права на таблицы не раздавал, а написал функцию, которая делает из них выборку и клиенту отдает готовый результат. Можете примеры выложить? Сейчас пробую что-то придумать для этого, пока безуспешно. Как в руле определать текущий месяц? Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2007, 19:39 |
|
||
|
Partitioning, в чем его минусы?
|
|||
|---|---|---|---|
|
#18+
к вопросу о периодах ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2007, 19:52 |
|
||
|
Partitioning, в чем его минусы?
|
|||
|---|---|---|---|
|
#18+
To DeWiL Я поднимал вопрос здесь . Хорошего решения так и не нашел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2007, 20:08 |
|
||
|
Partitioning, в чем его минусы?
|
|||
|---|---|---|---|
|
#18+
Есть большой минус в партицировании (или в планировщике запросов), который, как я понял, лишает смысл в партицировании в моем случае вообще. Есть таблица: Код: plaintext 1. 2. 3. 4. 5. 6. Код: plaintext Код: plaintext В одних моих запросах есть первое, в других второе условие. И получается выигрыш я получаю только в части запросов. Не понимаю, почему так тупит планировщик? PS: Код: plaintext Может есть возможность как-то обмануть его или в 8.2 с этим нормально уже? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2007, 12:48 |
|
||
|
Partitioning, в чем его минусы?
|
|||
|---|---|---|---|
|
#18+
Тупишь ты, а не планировщик. Делай where save_date between '$date_from'::timestamp and ('$date_to'::date + '1 day'::interval)::timestamp и будет тебе производительность. Здесь $date_from и $date_to это дата, не дата-время. А насчет RULE - делаешь набор таблиц, при вставке данные автоматом отправляются в нужную: CREATE OR REPLACE RULE merch_ansdata_base_insert_yy06mm01 AS ON INSERT TO merch_ansdata_base WHERE new.save_date >= '2006-01-01'::date::timestamp without time zone AND new.save_date < '2006-02-01'::date::timestamp without time zone DO INSTEAD INSERT INTO merch_ansdata_yy06mm01 (save_date, user_id, object_id, question_id, answer_id, text) VALUES (new.save_date, new.user_id, new.object_id, new.question_id, new.answer_id, new.text); CREATE OR REPLACE RULE merch_ansdata_base_insert_yy06mm02 AS ON INSERT TO merch_ansdata_base WHERE new.save_date >= '2006-02-01'::date::timestamp without time zone AND new.save_date < '2006-03-01'::date::timestamp without time zone DO INSTEAD INSERT INTO merch_ansdata_yy06mm02 (save_date, user_id, object_id, question_id, answer_id, text) VALUES (new.save_date, new.user_id, new.object_id, new.question_id, new.answer_id, new.text); Напиши скриптик, который на пару лет вперед сгенерит таблицы и не парься. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2007, 20:29 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=34288155&tid=2005666]: |
0ms |
get settings: |
7ms |
get forum list: |
16ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
35ms |
get topic data: |
8ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 216ms |
| total: | 343ms |

| 0 / 0 |
