Рейтинг: 0.9445  
На голосовании
Предложил Пользователь 95864 01.06.2015 10:58:42

SQL-запросы в новом ядре

Случайно обнаружили, что гетлист нового ядра создает такие запросы (хайлоад блоки):
SEL ECT ...
FR OM ...
WHERE UPPER(...) like upper(...)
ORDER BY ...

На базе всего в  80000 записей (даже с созданными индексами) разница: без upper - 0.0005 сек, с - 0.0194 сек.

Идея - создать при установке битрикса настройку - или её аналог просто в админке или в db_conn, которая определяла бы - нужны ли такие обертки или нет.

P.S. за все время работы в web - ни разу не использовали case sensitive баз. Пока пришлось писать свои запросы.
Рейтинг: 0.3962  
На голосовании
Предложил Пользователь 231744 07.08.2014 13:32:37

Кто - за, молчите, чтобы Вас не вычислили ! :)

Да не поддержат меня умельцы и ветераны работы с БД ! :D

Потому что крайне неудобно, имея в работе не только сложные сайты но и относительно простые - валить все в одну БД или лепить несколько установок, ладно еще, когда одна ср1251 а другая Юникод, тут без комментариев

но вот когда нет возможности простыми средствами создать новую базу и залить туда требуемое минуя развертывание архива и прочее = весьма скудно и однобоко смотрятся все преимущества BitrixEnv в сравнении с Денвером и классической связкой Apache-MySQL-PHP/
На мой взгляд даже урезаный phpMyAdmin именно для упрощения означенных целей был бы вполне приемлем. Ибо Bitrix Framework все же для иных более специфических целей.

гораздо проще, имея устаканеный шаблон - подключать к нему соответствующую БД  чтобы сразу было видно, что было в начале, что стало теперь и как может быть потом, если заказчик не того и не может озвучить то, что и так ясно
Рейтинг: 0.4893  
На голосовании
Предложил Пользователь 45383 26.04.2012 13:56:39

Инфоблоки и внешние данные

Было бы здорово иметь возможность создавать инфоблоки, основанные на внешних источниках данных(другие базы, корпоративные системы учета, web-сервисы и т.п.)
Т.е. в Битриксе создается "виртуальный" инфоблок, как обертка для вышестоящих компонентов и шаблонов. Все компоненты на страницах работают с таким инфоблоком как с обычным. Для них не важно где хранятся данные.
Данные инфоблока лежат во внешнем источнике. Нужно только сделать грамотные представления данных и мапинг полей.  
Возможность изменения данных тоже можно реализовать, если источник данных поддерживает нужные методы.
Это здорово облегчило решение простых задач получения информации на сайтах, без лишних и ненужных импортов/экспортов.

Правда еще для этого скорее всего придется здорово переделать класс инфоблока, убрать оттуда прямую работу с базой.
И ввести между базой и инфоблоками еще один промежуточный слой.