Эластичный поиск - это то, что мне нужно? - PullRequest
0 голосов
/ 11 мая 2018

Я немного запутался в том, как работает Elastic Search, поэтому я не уверен, что это то, что мне нужно, или что-то еще будет лучше.

Чего я пытаюсь достичь.

У меня будет SPA с базой данных Asp.net Core Api и SQL Server.

Отфильтрованные категории

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

Brand 
Apple (50)
Microsoft (100)

Ram 
2 GB ( 10)
4 GB ( 80)

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

Если они проверяют 2 ГБ, он должен выполнить еще один запрос и просто вернуть эти 10 результатов.

Тип впереди

Я знаю, что это поддерживается Elastic Seach

Другие вопросы

Насколько я понимаю, Elastic search - это собственная база данных (nosql), мне нужно поддерживать базу данных SQL Server, так как мне синхронизировать эти две базы данных?

В моем примере некоторые данные, вероятно, будут храниться в JSON EAV, например, Ram будет храниться как JSON EAV, так как у меня будет много других продуктов, которые могут не быть компьютерами и вообще не иметь оперативной памяти. Это вызовет проблемы с синхронизацией?

Похоже, что Elastic Search является собственной службой, которую вы вызываете через API отдыха. Как вы защищаете ее, чтобы ее могли вызывать только мои приложения?

Как мне развернуть его на сервере?

1 Ответ

0 голосов
/ 11 мая 2018

Это хороший вопрос, но очень широкий.Elastic определенно будет работать в этом сценарии, но, вероятно, не ваш лучший выбор для начала.

Для вас, MVP или v.1.0, я бы просто использовал обычный реляционный БД (т. Е. Сервер SQL), а затем, как только вы попадете всотни тысяч или миллионы пользователей рассматривают такие вещи, как эластичность, повторное отображение и т. д.

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...