powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / самый эффективный способ посчитать позиции в битмапе?
25 сообщений из 85, страница 3 из 4
самый эффективный способ посчитать позиции в битмапе?
    #39852789
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharpполудухпропущено...

денормализация и поиск по ID - это самый быстрый вариант что-то найтида. Но магазин плохо ложиться на данную модель. Отсюда костыли в виде EAV, xml, json,...
EAV - не обеспечивает нужной скорости сбора информации. Фактически EAV эффективен на коротких
точечных транзакциях типа security, metadata где мы берем ID принципала и смотрим какие напрмиер
у него права и привилегии есть. Если мы по толстому EAV (магазин) будем постоянно бомбить поисковыми
реквестами от UI фронта интернет магазина - то база умрёт.

Я готов спорить что умрёт на продуктовой нагрузке и при той архитектуре которую я имею в виду.
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39852793
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
У меня тоже к нему куча наезда)).
Это костыль к Р субд для движка магазина.
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39852947
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonна это ЛЮДИ нужны, а их нет. Сам такой поиск у них не в приоритете.
FTS и так есть. И кстати, в постгресе редиску тоже можно прикрутить.
также как у них есть битмапы на любую длину и операции по ним.

Ну и пускай нужны. Я-то тут причем?

По поводу FTS. Насколько я понимаю он потребности фасетного поиска не покрывает.
Если-бы покрывал - господин на хабре не стал-бы писать статью про Редисочный поиск.
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39852950
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудухоткуда у тебя кириллица взялась во WHERE?ну причем тут кодировка или ищем по ID или названию отеля.
Вроде главное что тут битовой маской не пахнет и битмапом. Или пахнет?
И если пахнет, то в каком месте?))))
Вот что главное.
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39852951
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прошу прощения. Вместо квотировать сообщение я нажал редактировать. Старая копия не сохранилась.
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39852953
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
)
Хде прогер движка форума который должен был ТРИ раза спросить: "вы уверены?")))
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39852954
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да мы давно просили. Главный грохнул ПТ и с тех пор ни с кем ни общается.
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39852957
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудух,
Вот такое в урл
Код: plaintext
1.
checkin_month=9;checkin_monthday=28;checkin_year=2019;checkout_month=10;checkout_monthday=3;checkout_year=2019;city=-2738120;class_interval=1;dest_id=-2738120;dest_type=city;dtdisc=0;from_sf=1;group_adults=2;group_children=0;highlighted_hotels=17190;inac=0;index_postcard=0;label_click=undef


Конечно, там есть и строки-стринги)
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39852965
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonПрошу прощения. Вместо квотировать сообщение я нажал редактировать. Старая копия не сохранилась.
бл?*:! ну спасибо
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39852966
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
денормализация по сути

PetroNotC Sharpполудухоткуда у тебя кириллица взялась во WHERE?ну причем тут кодировка или ищем по ID или названию отеля.
Вроде главное что тут битовой маской не пахнет и битмапом. Или пахнет?
И если пахнет, то в каком месте?))))
Вот что главное.
когда ищут по названию отеля, это отдельный input с поиском "налету"
фильтр к ней не имеет отношение
разумеется, если делать такие кривые "фильтры", там никакой битмап не прикрутишь.
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39852967
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonПрошу прощения. Вместо квотировать сообщение я нажал редактировать. Старая копия не сохранилась.
кстати, а какого у тебя есть кнопка редактировать, а у нас нет??
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39852969
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При грамотном шардинге или партишенинге мы можем бизнес модель резать на кусочки.
Например checkout_year=2019 сразу отсечет нам ненужные года. Ну и хеш партицирование.
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39852970
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудухmaytonПрошу прощения. Вместо квотировать сообщение я нажал редактировать. Старая копия не сохранилась.
кстати, а какого у тебя есть кнопка редактировать, а у нас нет??
У меня - перчатка Таноса.
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39852979
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудухкогда ищут по названию отеля, это отдельный input с поиском "налету"это не понял.
Реально в букинге не на лету, т.к. перезапрос страницы на Enter.
И отель будет не конкретный, а просто справа в списке "товаров".
Его дополнительно надо будет там найти.
Криво это или нет, не задумывался. Не с чем сравнить.
Поисковый запрос не должен искать конкретный отель.
Он сохраняется у юзверя и может лежать годами.
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39852981
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудух,
Имхо, фасетный можно применять если у тебя запрос дольше 100мс.
Если нет, то можно не заморачиваться.
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39852989
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharpполудух,
Имхо, фасетный можно применять если у тебя запрос дольше 100мс.
Если нет, то можно не заморачиваться.
Любая база имеет тенденцию к росту. И эти 100мс с каждым днем растут.
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39852997
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
Конечно.
авторФасетный поиск позволяет перемещаться по многомерному информационному пространству через объединение текстового поиска с постепенным сужением выбора в каждом измерении[
Ровно как букинге. Текстовый поиск плюс многомерное уточнение.
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39853002
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonДавайте обсудим недостатки решения которое приведено в статье https://habr.com/ru/post/261137/
Я так понимаю ТС в курсе тех алгоритмов, но ищет чудо, а все кто говорит что чуда не будет обзывает обкурившимися.
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39853020
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TmaytonДавайте обсудим недостатки решения которое приведено в статье https://habr.com/ru/post/261137/
Я так понимаю ТС в курсе тех алгоритмов, но ищет чудо, а все кто говорит что чуда не будет обзывает обкурившимися.
так ты сюда вбрасываешь даже не вникая в тему
эту ссылку сюда принёс я, так что да, я в курсе
чудо я не ищу, по факту я сейчас тут будущим магазино-строителям раскрываю глаза на качественный фильтр - отвечаю на вопросы
ты же мне советуешь EAV на первой странице, которое для фильтров где-то на последнем месте
учитывая, что я свой фреймворк написал и несколько CRM на заказ, я несколько в курсе про EAV
про ссылки и указатели так долго троллил, что аж жЫр с монитора закапал.
могу предложить другие варианты: невнимательный, рассеянный, тролльжЫрный


PetroNotC Sharpполудухкогда ищут по названию отеля, это отдельный input с поиском "налету"это не понял.
Реально в букинге не на лету, т.к. перезапрос страницы на Enter.
И отель будет не конкретный, а просто справа в списке "товаров".
Его дополнительно надо будет там найти.
Криво это или нет, не задумывался. Не с чем сравнить.
Поисковый запрос не должен искать конкретный отель.
Он сохраняется у юзверя и может лежать годами.
ухх

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

ну вот поисковая строка, справа от неё 2 селекта "Заезд/Отъезд" + ещё опции.
поисковая строка сразу же выдаёт селектор аяксом, в нём выбирается пункт, у пункта есть ID и текст
спрашивается - НАХРЕНА текст пихать в URL?! Почему не ID?
КАК можно было такую длинную строку мусора сгенерить из такого маленького фильтра, это же талант нужен!
там всего-то должно было быть: /?f=id:22;in:2019-08-25;out:2019-09-10;mat:2;ch:1;num:1
а они чего сделали
дичь какая
на след.странице есть "Место/название объекта", так они даже оттуда слово воткнули в GET

даже если они хотели, чтобы клиент, глядя на этот урл, мог увидеть название отеля...
как он его там увидит за всем этим мусором? Там один label занимает четверь.
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39853022
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну и на второй странице, слева, длинная колонка тех самых чекбоксов (опять же дичь - там 5 экранов вниз скроллить надо, а когда выбираешь один внизу, то страница обновляется и кидает обратно наверх
), которые должны быть просто цифрами
но это было бы слишком просто...
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39853023
Фотография полудух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpКриво это или нет, не задумывался. Не с чем сравнить.
https://fcenter.ru/product/type/5?vend=7&param=1585_766_754&offset=0
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39853030
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудух, дружище , сбавь обороты. Здесь - тихий добрый форум и никто никого не обличает.
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39853034
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудухPetroNotC SharpКриво это или нет, не задумывался. Не с чем сравнить.
https://fcenter.ru/product/type/5?vend=7¶m=1585_766_754&offset=0 основа фасетных фильтров в циферках в скобочках после фильтра.
По ссылке я этого не увидел.
И давайте различать интерфейс и функционал.
- если фильтр город=Москва, то нафига отправлять ID москвы вместо москвы?
Можно и порассуждать об этом.
полудухглядя на этот урл, мог увидеть название отеля...да не смотрит на урл никто.
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39853074
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудухну вот поисковая строка, справа от неё 2 селекта "Заезд/Отъезд" + ещё опции.
поисковая строка сразу же выдаёт селектор аяксом, в нём выбирается пункт, у пункта есть ID и текст
спрашивается - НАХРЕНА текст пихать в URL?! Почему не ID?
КАК можно было такую длинную строку мусора сгенерить из такого маленького фильтра, это же талант нужен!
там всего-то должно было быть: /?f=id:22;in:2019-08-25;out:2019-09-10;mat:2;ch:1;num:1
а они чего сделали
дичь какая
на след.странице есть "Место/название объекта", так они даже оттуда слово воткнули в GET

даже если они хотели, чтобы клиент, глядя на этот урл, мог увидеть название отеля...
как он его там увидит за всем этим мусором? Там один label занимает четверь.
Если серъезно заниматься оптимизацией трафика - то нужно смотреть не в request а в response.
Там действительно вот где много избыточного. GraphQL в помощь. А эстетика URL никого не
парит потому что по хорошему она не нужна. Она может быть скрыта за приложением
типа thin-client и может строиться специальным билдером параметров.
...
Рейтинг: 0 / 0
самый эффективный способ посчитать позиции в битмапе?
    #39853082
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полудухтак ты сюда вбрасываешь даже не вникая в тему
Еще бы ты тему расписал. Сначала у тебя был битмап, потом он вдруг оказался строкой нулей и единичек, причем строка это какой промежуточный результат непонятно чего.

Как посчитать единички в строке ты уже сам ответил 21954674 , для ускорения можно только параллелить, и то не факт что значительное ускорение получишь.
Возможно быстрее будет искать с помощью strchr() .
Еще можешь вектору заранее побольше памяти выделить, чтобы он часто перевыделением не занимался.
Код: plaintext
1.
idV.reserve(1000000);


Все. Нет чудесных алгоритмов для работы с такими массивами. Да как бы и не надо. Даже если строка у тебя миллион символов, то перебор ее меньше 1 миллисекунды займет.

Но непонятно почему надо именно строку эту трансформировать в массив индексов? Почему сразу не получить массив в процессе расчета? Тем более что это СУБД, а в СУБД удобнее массивами(таблицами) оперировать, а не строки парсить.
...
Рейтинг: 0 / 0
25 сообщений из 85, страница 3 из 4
Форумы / C++ [игнор отключен] [закрыт для гостей] / самый эффективный способ посчитать позиции в битмапе?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]