tcms gallery_info и galley_stats

darkover
Posts: 1574
Joined: Sat Apr 13, 2013 8:59 pm

tcms gallery_info и galley_stats

Post by darkover »

Привет!
Не могу понять, почему на tcms gallery_info и galley_stats имеют разные знаения по кол-ву строк ?

посмотрел у себя на v51 - они ровные по строкам, а тут
rot_gallery_stats15 - слейв языковой, раздельная статистика выключена
rot_gallery_stats16 - просто слейв

я просто не могу понять, откуда такие цифры в них берутся по 400к +
если галер всего 53к ?

никаких separate деск и всего остального нет

http://my.jetscreenshot.com/10779/20160 ... c-91kb.jpg

Это что-то пошло не так ? Или где-то есть хитрая опция ?
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: tcms gallery_info и galley_stats

Post by admin »

В новой версии изначально делает стат раздельную по группам
Сначала была идея сделать это дефолтным, потом решили делать все ж tyt дефолтным что б не пугать сложностью.
Но в табл создает поля сразу учитывая группы.
Don't forget to run script update
darkover
Posts: 1574
Joined: Sat Apr 13, 2013 8:59 pm

Re: tcms gallery_info и galley_stats

Post by darkover »

admin wrote:В новой версии изначально делает стат раздельную по группам
Сначала была идея сделать это дефолтным, потом решили делать все ж tyt дефолтным что б не пугать сложностью.
Но в табл создает поля сразу учитывая группы.
Дык базы пухнут просто пипец как
вот получается, скажем чисто мастер 50к галер - 53 метра в базе
к нему идет сразу стата - 83 метра
теперь прибавим 10 языковых слейвов - + 800 метров
и десяток просто слейвов + 800 метров
база получается под 2 гига
как оно все ворочится будет ? )
и это один сайт, а если их 10-20-30 ?
darkover
Posts: 1574
Joined: Sat Apr 13, 2013 8:59 pm

Re: tcms gallery_info и galley_stats

Post by darkover »

я вот еще не могу понять, если раздельная стата по языку не ведется, нафига таблицу то под нее делать ? )
в myisam если табличка занимает 73 метра, то при конвертации ее в innoDB это получается 202 метра уже
darkover
Posts: 1574
Joined: Sat Apr 13, 2013 8:59 pm

Re: tcms gallery_info и galley_stats

Post by darkover »

короче вот что получается, 50к галер + 15 языков = база на 3.5 гига ( это есть как полагается rot_galery* в innoDB переводить )
и это один сидж на 50к всего на 50К галер, КАРЛ!!!
при том, что на языках нет раздельной статистики.
не вижу другого варианта, как возвращаться на 51, т.к. последний вылизан годами и так не пухнет, там база в гиг это 200к галер и десяток слейвов на нем
да и tcms я решил использовать только из-за magic rotation
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: tcms gallery_info и galley_stats

Post by admin »

На тесте разница была 20%.
Можем ради интереса сравнить 2 версии по размеру базы для теста.

Зато это позволяет сразу внести группы и стат в одну таблицу и выборки для больших групп получаются на порядок быстрее.

Те это как обычно дилема: либо грубо говоря прога грузит все в память и работает быстрее но занимает больше памяти, либо меньше памяти но работает медленее.
Don't forget to run script update
darkover
Posts: 1574
Joined: Sat Apr 13, 2013 8:59 pm

Re: tcms gallery_info и galley_stats

Post by darkover »

admin wrote:На тесте разница была 20%.
Можем ради интереса сравнить 2 версии по размеру базы для теста.

Зато это позволяет сразу внести группы и стат в одну таблицу и выборки для больших групп получаются на порядок быстрее.

Те это как обычно дилема: либо грубо говоря прога грузит все в память и работает быстрее но занимает больше памяти, либо меньше памяти но работает медленее.
Предвидя такой ответ, я сделал тоже самое на тестовом 51, эта же база там, без раздельной статы по языкам - занимет около 800 мегабайт

может имеет смысл сделать на tcms -отключение дефолтной раздельной статы ?
admin
Site Admin
Posts: 38004
Joined: Wed Sep 10, 2008 11:43 am

Re: tcms gallery_info и galley_stats

Post by admin »

Оно не совсем получится.

Если очень просто то пробелма в следующем:

У нас есть 2 данных

галеры со статистикой
и соответветсвия галера - группа.

Нам надо выбрать например топ 100 галер из группы А

Если очень просто то для этого того что б выбрать эти 100 нам надо
1. выбрать из "соответветсвия галера - группа" те что в группе А
2. выбрать из статистики топ 100 по цтр которые попадают в список из 1

В 51 (при той организации базы) когда происходит действие 1 то этот список надо куда-то класть, для этого mysql делает темповую таблицу. Это грузит винт.

В версии 2 и данные по группе и данные по цтр - в одной таблице.
В этом случае база больше - да, но mysql можно сделать выборку без создания временной таблицы.

Выборка получается на порядок быстрее, те меньше нагрузки на сервак и тп.
Don't forget to run script update
darkover
Posts: 1574
Joined: Sat Apr 13, 2013 8:59 pm

Re: tcms gallery_info и galley_stats

Post by darkover »

admin wrote:Оно не совсем получится.

Если очень просто то пробелма в следующем:

У нас есть 2 данных

галеры со статистикой
и соответветсвия галера - группа.

Нам надо выбрать например топ 100 галер из группы А

Если очень просто то для этого того что б выбрать эти 100 нам надо
1. выбрать из "соответветсвия галера - группа" те что в группе А
2. выбрать из статистики топ 100 по цтр которые попадают в список из 1

В 51 (при той организации базы) когда происходит действие 1 то этот список надо куда-то класть, для этого mysql делает темповую таблицу. Это грузит винт.

В версии 2 и данные по группе и данные по цтр - в одной таблице.
В этом случае база больше - да, но mysql можно сделать выборку без создания временной таблицы.

Выборка получается на порядок быстрее, те меньше нагрузки на сервак и тп.
Я понял, и пожалуй соглашусь за одиночные ресурсы, но вот в чем сакральный смысл делать под каждый язык такую таблицу со статой, если опция использовать статистику основного языка ?
Может там можно делать пустые таблицы, если опция выкючена ?
darkover
Posts: 1574
Joined: Sat Apr 13, 2013 8:59 pm

Re: tcms gallery_info и galley_stats

Post by darkover »

Немного перефразирую вопрос, почему нельзя сократить размер базы, за счет таблиц статистики языковых слейвов, по которым не ведется отдельная статистика по тумбам ?
Я вот повесил сейчас обычный слейв, и у меня размер базы стал 3.7 гига. Ее бекапить можно будет заи%4ться. А если бы убрать их - то размер базы бы сократился на 3.2 гига.
Я конечно не против сильно за такие базы, но что бы они реально приносили пользу ) т.е. на эти 3.2 гига - можно реально разместить еще 15 полноценных слейвов.
Post Reply