Re[8]: О рулезности опенсорса на примере mysql
От: fddima  
Дата: 03.03.10 14:44
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB>Здравствуйте, fddima, Вы писали:


f>> URL-ы с русскими символами, декорированные с помощью % — отказывался понимать, интерпретируя их как есть, — а если передавать их в 8-ми битном виде (а для этого нужно поприседать) — всё было отлично.

AB>Эм... А можно примерчик, а то мне не совсем понятно, какие проблемы возникают в percent encoding.
Эм. Это ж его сейчас ставить надо, пробовать. Грубо говоря — вместо того что-бы отдать файл с именем "ААА.html" — пытался искать файл "%80%80%80.html" (80 — это я к примеру). Увы, думаю концов сейчас уже не найти.

f>> Ещё какие-то моменты были, всех уже не помню. Дело было года 2 назад, — вот и интересуюсь — может уже исправился?

AB>Он достаточно быстро развивается и обрастает функционалом. Иногда даже кажется, что слишком много на него пытаются навешать.
Просто не думаю что он хороший пример хорошего софта, хотя, конечно же если учесть его популярность — то да.
Re[4]: О рулезности опенсорса на примере mysql
От: Mamut Швеция http://dmitriid.com
Дата: 03.03.10 14:44
Оценка:
M>> Это, кстати, один самых геморройных моментов мускуля — выбор движка.

AB>А разве сегодня есть выбор кроме InnoDB? (MyISAM спокойно почил и используется лишь от "незнания")


Ничего он не почил. До сих пор движок по умолчанию


dmitriid.comGitHubLinkedIn
Re[5]: О рулезности опенсорса на примере mysql
От: Anton Batenev Россия https://github.com/abbat
Дата: 03.03.10 15:03
Оценка:
Здравствуйте, Mamut, Вы писали:

M> AB>А разве сегодня есть выбор кроме InnoDB? (MyISAM спокойно почил и используется лишь от "незнания")

M> Ничего он не почил. До сих пор движок по умолчанию

Принцип наименьшего удивления, ИМХО. Я бы тоже не стал менять умолчания, которые были заложены столько лет назад. Ну а для 33 лямов записей даже сомнений быть не должно.
avalon 1.0rc3 rev 317, zlib 1.2.3
Re[9]: О рулезности опенсорса на примере mysql
От: Anton Batenev Россия https://github.com/abbat
Дата: 03.03.10 15:03
Оценка: 2 (1)
Здравствуйте, fddima, Вы писали:

f> AB>Эм... А можно примерчик, а то мне не совсем понятно, какие проблемы возникают в percent encoding.

f> Эм. Это ж его сейчас ставить надо, пробовать. Грубо говоря — вместо того что-бы отдать файл с именем "ААА.html" — пытался искать файл "%80%80%80.html" (80 — это я к примеру). Увы, думаю концов сейчас уже не найти.

Сейчас проверил — нормально отдает. Возможно, бага и была, но Игорь достаточно оперативно на них реагирует. Так что можно повторить подход к снаряду
avalon 1.0rc3 rev 317, zlib 1.2.3
Re[10]: О рулезности опенсорса на примере mysql
От: fddima  
Дата: 03.03.10 15:14
Оценка:
Здравствуйте, Anton Batenev, Вы писали:

AB>Сейчас проверил — нормально отдает. Возможно, бага и была, но Игорь достаточно оперативно на них реагирует. Так что можно повторить подход к снаряду

Ах тааак?!?! Тогда передавай Игорю респегд.

ЗЫ: Второй подход не нужен — карме nginx — +1.
Re[7]: О рулезности опенсорса на примере mysql
От: Vamp Россия  
Дата: 03.03.10 17:06
Оценка:
F>Э... а что — нельзя? Даже как crc от массива байт, полученного простой конкатенацией строк?
Нет, ну если ты точно знаешь, что одна таблица однозначно маппируется на один файл — то конечно можно взять CRC от этого файла.
А вот если это не так — а в общем случае это не так — то как тогда?
Да здравствует мыло душистое и веревка пушистая.
Re: О рулезности опенсорса на примере mysql
От: xBlackCat Россия  
Дата: 03.03.10 18:15
Оценка:
Здравствуйте, quwy, Вы писали:

Q>После модификации программного кода и запросов, возникла необходимость изменить конфигурацию индексов в таблице с примерно шестью миллионами записей, а в перспективе -- еще и в одной таблице уже с более чем 33,000,000 записей (статистика посещений большого количества сайтов). Казалось бы, что может быть проще, чем удалить ненужные индексы и создать новые на двухпроцессорной машине с RAID5 и 12GB оперативки? А вот фиг вам, это же опенсорс!


Пойду в сторону от основного направления партии и хаянья MySQL.
При некотором опыте в MySQL можно обнаружить, что создание/удаление нескольких индексов в одной таблице делается одной командой и, следовательно, за одно копирование таблиц. Надо просто все операции записать через запятую.
Rojac — Rsdn Offline JAva Client
Анонсы и обсуждение здесь
Автор: xBlackCat
Дата: 08.02.10
Re[4]: О рулезности опенсорса на примере mysql
От: quwy  
Дата: 03.03.10 22:45
Оценка:
Здравствуйте, vladimir.vladimirovich, Вы писали:

DOO>>MySQL — хороший продукт. Просто имеет границы применимости.

DOO>>Автор же почему то не стал на MS OLE DB Jet engine (aka Access) делать БД — тем не менее этот engine лежит в основе AD.
VV>Автор почему-то не стал делать — это правда, может просто ему Access не попался на глаза во время придумывания архитектуры.
Автора просто супруга попросила сделать давно работающий продукт (базирующийся на open-source-скриптах, кстати) менее тормозным, с чем он справился хорошо: отклик web-приложения в удаленном браузере с 30-60 секунд сократился до 0-3.
Re[2]: О рулезности опенсорса на примере mysql
От: quwy  
Дата: 03.03.10 22:48
Оценка: 2 (1)
Здравствуйте, Testator, Вы писали:

Q>>Вот скажите, каким местом думал тот студент, который писал данную функциональность? Пусть его код может претендовать на звание самого красивого кода вселенной, но мне как пользователю это не важно, мне нужно чтобы оно работало быстро. Oracle удаляет индексы с больших таблиц за единицы секунд, и мне пофиг, открыт ли его код, и красив ли он.

T>А вы каким местом думали когда выбирали СУБД и вид лицензии?
Я ничего не выбирал, меня попросили привести в чувства уже готовое, и я взялся. О своих впечатлениях отписал тут. А т.к. я уже много лет занимаюсь разработкой в области СУБД, то меня сильно обескуражило все увиденное. Вот и все.
Re[2]: О рулезности опенсорса на примере mysql
От: quwy  
Дата: 03.03.10 22:54
Оценка:
Здравствуйте, Vamp, Вы писали:

Q>>Oracle удаляет индексы с больших таблиц за единицы секунд, и мне пофиг, открыт ли его код, и красив ли он.

V>Я думаю, не найдется человека в здравом уме, который оспорит то, что Оракле превосходит MySql практически по всем статьям... за исключением цены.
Есть шаровой оракл, для данного проекта его, конечно, не хватило бы, но с другой стороны никто сильно и не думал что будут такие масштабы (специфический сервис, который только потом присосался к более востребованному и со временем начал тормозить).

V>Тут дело не в опенсорсе.

В нем тоже, коммерческая БД, авторы которой заявляют, что она "не хуже других", такого себе позволить просто не может. Вон, например, IB/FB вообще не позволяет переименовывать объекты БД, как бы я выкрутился, если бы она тоже индексы через одно место удаляла?
Re[2]: О рулезности опенсорса на примере mysql
От: quwy  
Дата: 03.03.10 22:58
Оценка:
Здравствуйте, Vamp, Вы писали:

Q>>В три ночи прерываю процесс, ибо до утра должно все работать, а с учетом уже прошедших двух безрезультатных часов, времени явно недостаточно

Q>>В результате пришлось создавать новую таблицу, в ней создавать нужные индексы, а потом перетягивать в нее все записи. К счастью, эта операция заняла менее четырех часов для обеих таблиц
V>Я, наверное, очень тупой. Но не противоречат ли эти два предложения сами себе?
Нет, не противоречат. Потому что в первом случае кроме копирования, пересоздавались ненужные индексы (весьма тяжелые). Да и не известно еще, через какое место реализовано скрытое копирование.
Re[2]: О рулезности опенсорса на примере mysql
От: quwy  
Дата: 03.03.10 23:02
Оценка:
Здравствуйте, DOOM, Вы писали:

DOO>Здравствуйте, quwy, Вы писали:


Q>>Вот скажите, каким местом думал тот студент, который писал данную функциональность? Пусть его код может претендовать на звание самого красивого кода вселенной, но мне как пользователю это не важно, мне нужно чтобы оно работало быстро. Oracle удаляет индексы с больших таблиц за единицы секунд, и мне пофиг, открыт ли его код, и красив ли он.

DOO>Ну видно же по описанию, что у тебя используется MyISAM
Где это видно? Используется как раз InnoDB.

DOO>P.S. На Oracle-то денег хватит? Явно тебе ведь не хватит Express Edition.

Я -- фактически приглашенный со стороны специалист, спасательный круг. А при выборе БД, руководствовались в основонм ее совместимостью с кучей опенсорсного php-кода. Так что претензии мимо кассы.

DOO>P.P.S. Кривых продуктов у того же Oracle хватает, но ты его почему-то не хаешь.

Штатные управляющие программы? Дал бы в глаз тому гаду, который из написал! Хорошо, что они не обязательны в повседневной работе.
Re[2]: О рулезности опенсорса на примере mysql
От: quwy  
Дата: 03.03.10 23:11
Оценка:
Здравствуйте, xBlackCat, Вы писали:

Q>>После модификации программного кода и запросов, возникла необходимость изменить конфигурацию индексов в таблице с примерно шестью миллионами записей, а в перспективе -- еще и в одной таблице уже с более чем 33,000,000 записей (статистика посещений большого количества сайтов). Казалось бы, что может быть проще, чем удалить ненужные индексы и создать новые на двухпроцессорной машине с RAID5 и 12GB оперативки? А вот фиг вам, это же опенсорс!

BC>Пойду в сторону от основного направления партии и хаянья MySQL.
BC>При некотором опыте в MySQL можно обнаружить, что создание/удаление нескольких индексов в одной таблице делается одной командой и, следовательно, за одно копирование таблиц. Надо просто все операции записать через запятую.
Может быть, в итоге я это сделал тоже за один проход, но руками. Проблема только в том, что для удаления индекса, копирование таблицы как бы вообще не нужно...
Re[3]: О рулезности опенсорса на примере mysql
От: _d_m_  
Дата: 04.03.10 00:10
Оценка: -1
Здравствуйте, Anton Batenev, Вы писали:

AB>Здравствуйте, Sheridan, Вы писали:


S>> Я уже оччень давно говорил — не трогайте мускуль, он воняет.


AB>Да ладно — отлично работает, если его правильно работать.


Ну да, ну да. Т.е. если аккуратно обходить обильно натыканные разработчиками грабли.
Re[2]: О рулезности опенсорса на примере mysql
От: Mr.Cat  
Дата: 04.03.10 02:07
Оценка:
Здравствуйте, DOOM, Вы писали:
DOO>P.P.S. Кривых продуктов у того же Oracle хватает, но ты его почему-то не хаешь.
А его же трудно публично хаять. Пусть проблем и багов — вагон и маленькая тележка, зато багтрекер закрыт от любопытных глаз. В споре всегда можно сказать "у меня все работает" и спрятать голову в песок.
Re[4]: О рулезности опенсорса на примере mysql
От: zaufi Земля  
Дата: 04.03.10 02:48
Оценка:
Здравствуйте, Sharowarsheg, Вы писали:

S>Здравствуйте, Mamut, Вы писали:


KDK>>>Не указан тип используемых таблиц. Скорее всего данное поведение описано в доках к этому типц таблиц и на другом движке будет другое поведение.


M>>Это, кстати, один самых геморройных моментов мускуля — выбор движка.


S>Почти как в линуксе — выбор дистрибутива. Интересно, у апача есть ли аналогичная проблема или нет? Мне не попадалась вроде


мда, есть примерно тожее самое: выбор подходящего MPM (Multi-Processing Module)
Re[3]: О рулезности опенсорса на примере mysql
От: Трурль  
Дата: 04.03.10 06:57
Оценка:
Здравствуйте, frogkiller, Вы писали:

F>Подход админа: сделать копию (потому что копию нужно делать всегда), в копии удалить индекс (потому что команду DROP придумали именно для этого), заменить исхоную базу новой.


А вот интересно: перед удалением файла админ сделает копию ФС?
Re[4]: О рулезности опенсорса на примере mysql
От: DOOM Россия  
Дата: 04.03.10 06:59
Оценка:
Здравствуйте, Трурль, Вы писали:

Т>Здравствуйте, frogkiller, Вы писали:


F>>Подход админа: сделать копию (потому что копию нужно делать всегда), в копии удалить индекс (потому что команду DROP придумали именно для этого), заменить исхоную базу новой.


Т>А вот интересно: перед удалением файла админ сделает копию ФС?


Смотря какой файл
Ну а снэпшот сделать рука не отсохнет — а ситуацию может спасти.
Re[8]: О рулезности опенсорса на примере mysql
От: Farsight СССР  
Дата: 04.03.10 08:09
Оценка: :)
Здравствуйте, Sheridan, Вы писали:

A>> вместо того чтобы сделать сразу так, как как было сделано в итоге

A>> [/q]
S>Учись читать смысл а не буквы.

Молодца! И тут же вот это
Автор: Sheridan
Дата: 03.03.10
.
</farsight>
Re[3]: О рулезности опенсорса на примере mysql
От: Testator Россия  
Дата: 04.03.10 08:26
Оценка:
Здравствуйте, quwy, Вы писали:

Q>Проблема только в том, что для удаления индекса, копирование таблицы как бы вообще не нужно...


Не очевидно это ни разу. Я конечно многовато лет назад занимался базами данных, но помню что например в MSSQL и Oracle есть такие кластерные индексы, которые влияют на физическое расположение записей в таблице для оптимизации. И при удалении такого индекса тупое копирование таблицы тут может оказаться более дешевой операцией чем сортировка записей по-новому. Возможно для MySQL тоже есть какие-то особенности, из-за которых было сделано именно так как сделано.
▬▬▬▬ஜ۩۞۩ஜ▬▬▬▬
Мы — то, во что верим.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.