powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / sphinx+бд+сортировка товаров по курсу валют
14 сообщений из 14, страница 1 из 1
sphinx+бд+сортировка товаров по курсу валют
    #38136109
Фотография Nrisimha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дано:
1) источник данных: Oracle(не важно в данном случае)
хранит продукты(более 800тыс) и валюты, причем исходная валюта у товара может быть разной
2) sphinx - rt-index поисковая система, которая берет данные из oracle о товарах
3) валюты меняются очень быстро и товары тоже из внешних источников (пока товары попадают в сфинкс)

Требуется сделать возможность сортировать товары по цене из поисковика(sphinx).

PS: Проблема в том, что сфинкс не умеет делать join (так бы можно было сделать Join между валютами и товарами, обновляя на сфинке и курс валют)
...
Рейтинг: 0 / 0
sphinx+бд+сортировка товаров по курсу валют
    #38136296
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nrisimha,

Если это не умеет делать Sphinx, то пусть делает Oracle.
Create View вам в помощь.
...
Рейтинг: 0 / 0
sphinx+бд+сортировка товаров по курсу валют
    #38136388
Фотография Nrisimha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul,

отказались от поиска через Oracle - потому, что вьюха большая, и поиск на сайте не мерянно сильно загружает oracle
...
Рейтинг: 0 / 0
sphinx+бд+сортировка товаров по курсу валют
    #38136400
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nrisimha,

Как понимаю, можно взять ID-шники из sphinx-овой выборки и сделать Oracl'у запрос where ID in (....) order by price - это по идее должен быть легкий запрос.
...
Рейтинг: 0 / 0
sphinx+бд+сортировка товаров по курсу валют
    #38136489
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nrisimha,

Э-э-э не понял?
Зачем искать, когда Вам нужно всего лишь объединить?
Т.е. в представлении просто объединяете данные по ключу/ключам.
Если они проиндексированы, то операция не должна сильно загружать сервер.
А уж потом это представление "скармливать" sphinx'у.

Или я ошибаюсь?
...
Рейтинг: 0 / 0
sphinx+бд+сортировка товаров по курсу валют
    #38136760
Фотография Nrisimha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mad_nazgul,

т.е. если например поменялась цена валюты, то на сфинксе обновлять более миллионов записей товаров, конвертируя все допустим 10 валют и делать update на миллионы записей, учитывая что изменения валют сыплятся чуть ли не каждую секунду?
...
Рейтинг: 0 / 0
sphinx+бд+сортировка товаров по курсу валют
    #38136798
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nrisimhaесли например поменялась цена валюты, то на сфинксе обновлять более
миллионов записей товаров, конвертируя все допустим 10 валют и делать update на миллионы
записей, учитывая что изменения валют сыплятся чуть ли не каждую секунду?

Это что за безумная система? Если у вас цена зависит от курса валюты, это не повод её
хранить в данной валюте. Наоборот, это повод её не хранить.

Курсы валют вообще-то обновляются при закрытии валютной биржи, раз в день и то только рабочий.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
sphinx+бд+сортировка товаров по курсу валют
    #38136825
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nrisimha,

Ради интереса - а в чем смысл для инет-магазина (раз товары на сайте - это же инет магазин?) пересчитывать курсы раз в секунду? Вы выдали клиенту результаты поиска по одному курсу, Когда он кладет товар в корзину - курс уже другой. когда оформит заказ - третий, а когда соберется оплачивать - страшно подумать что будет :) Может, я чего-то не понимаю?
...
Рейтинг: 0 / 0
sphinx+бд+сортировка товаров по курсу валют
    #38136835
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

Ну почему, цену в валюте как раз полезно хранить - другой вопрос что курс для пересчета фиксировать чаще чем раз в день действительно непонятно зачем.
...
Рейтинг: 0 / 0
sphinx+бд+сортировка товаров по курсу валют
    #38136864
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кот МатроскинНу почему, цену в валюте как раз полезно хранить
Текущую и зависящую от курса?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
sphinx+бд+сортировка товаров по курсу валют
    #38136876
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

Тут у нас некоторое непонимание.
Вот у товара есть цена в валюте - 20USD. Итоговая цена в рублях зависит от курса USD? - Зависит. Нужно ли хранить цену в данной валюте (то бишь в USD)? - Нужно.
Хотя бывает полезно хранить даже обе цены - для инкапсуляции. Модуль продаж не будет зависеть от того, как надо считать ту или иную цену, зависит она от ваалюты или нет - он тупо показывает предрассчитанную [каким-то другим модулем] цену в рублях.
а этому другому модулю - конечно нужна цена в USD как один из входных параметров.
Но это уже, конечно, зависит от архитектуры.
...
Рейтинг: 0 / 0
sphinx+бд+сортировка товаров по курсу валют
    #38136917
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кот МатроскинТут у нас некоторое непонимание.
Вот у товара есть цена в валюте - 20USD.
Ну да, недопонимание. Цена всегда в какой-то валюте. Рубли - тоже валюта (как ни странно).
И это цена поставщика (плюс наценки и т.п.). В валюте поставщика. Её, конечно, хранить
надо. Но она не зависит от курса совершенно. Потому что назначена поставщиком.

Но раз аффтар что-то предполагает апдейтить при изменении курса, значит у него хранится
какая-то другая цена. Непонятно зачем.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
sphinx+бд+сортировка товаров по курсу валют
    #38137308
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nrisimhamad_nazgul,

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

Зачем?!
Это делается автоматом в представлении (View).
Просто перечитать представление и все.

Или я опять вас не понимаю?
...
Рейтинг: 0 / 0
sphinx+бд+сортировка товаров по курсу валют
    #38137311
mad_nazgul
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovКот МатроскинТут у нас некоторое непонимание.
Вот у товара есть цена в валюте - 20USD.
Ну да, недопонимание. Цена всегда в какой-то валюте. Рубли - тоже валюта (как ни странно).
И это цена поставщика (плюс наценки и т.п.). В валюте поставщика. Её, конечно, хранить
надо. Но она не зависит от курса совершенно. Потому что назначена поставщиком.

Но раз аффтар что-то предполагает апдейтить при изменении курса, значит у него хранится
какая-то другая цена. Непонятно зачем.


Я понял так:
Есть товар с ценой в валюте А.
Нужно передать сфинксу товар с ценой в валюте А, В, С и т.д.
Если количество валют стабильно (например только А, В, С)
То достаточно создать представление где будет показана
Дата-время, Товар, Цена в валюте А, Цена в Валюте В, Цена в валюте С.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / sphinx+бд+сортировка товаров по курсу валют
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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