Каковы некоторые Поисковые серверы там? [закрытый]

Blakes Seven ответил на это правильно, однако я хочу предложить более эффективную реализацию AggregationOperation, которая следует за стандартной реализацией Spring

import com.mongodb.BasicDBObject;
import com.mongodb.DBObject;
import org.springframework.data.mongodb.core.aggregation.AggregationOperation;
import org.springframework.data.mongodb.core.aggregation.AggregationOperationContext;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.util.Assert;

public class SampleOperation implements AggregationOperation  {

    private int size;

    public SampleOperation(int size) {
        Assert.isTrue(size > 0, " Size must be positive!");
        this.size = size;
    }

    public AggregationOperation setSize(int size) {
        Assert.isTrue(size > 0, " Size must be positive!");
        this.size = size;
        return this;
    }

    @Override
    public DBObject toDBObject(AggregationOperationContext context) {
        return new BasicDBObject("$sample", context.getMappedObject(Criteria.where("size").is(size).getCriteriaObject()));
    }

}

. После этого вы можете создать объект SampleOperation с помощью конструктора или позже изменить размер его с помощью метода setSize() и применить его к функции aggregate() как обычно.

Обновление: в SpringBoot 2.0.0+ и Spring Framework 5.0: Spring Mongo drop DBObject и заменить на org.bson.Document, поэтому последнее прошлое должно обновляться как:

    @Override
public Document toDocument(AggregationOperationContext aggregationOperationContext) {
    return new Document("$sample", aggregationOperationContext.getMappedObject(Criteria.where("size").is(size).getCriteriaObject()));

}

И удалить @Override toDBObject

21
задан Juha Syrjälä 8 May 2009 в 17:22
поделиться

10 ответов

Я записал длинное сообщение о своих событиях и функциях всех механизмов, которые я упомянул ниже, но я фрагментировал его, потому что форматирование является лавашем. Но вполне просто, если Вы не хотите выходить из оболочки деньги, Solr/Lucene или Быстро (теперь MSSE) действительно о лучшем, которое можно сделать.

Исключенный, потому что у меня нет опыта этого продукта: Навигационный знак,

Цена Высоко к Низкому

  • Endeca,
  • FredHopper,
  • Mercado,
  • Google Mini,
  • Microsoft Search Server,
  • Автономия,
  • Microsoft Search Server Express,
  • скорость Solr/Lucene

Быстро для Замедления

  • Google Mini/Endeca,
  • FredHopper,
  • Автономия,
  • функции Solr/MSS/MSSE

Высоко к Низкому

  • Endeca,
  • FredHopper,
  • Mercado,
  • Solr,
  • Автономия,
  • Lucene,
  • MSS/MSSE,
  • Расширяемость Google Mini

Высоко к Низкому

  • Solr/Lucene,
  • Endeca,
  • FredHopper,
  • Mercado,
  • Автономия,
  • MSS/MSSE,
  • Google Mini

Java API

  • Endeca,
  • FredHopper,
  • Автономия,
  • .NET API Solr/Lucene

  • Endeca,
  • Solr/Lucene,
  • MSS/MSSE,
  • Автономия

XML API

  • FredHopper,
  • Mercado,
  • Solr/Lucene,
  • Автономия,
  • Google Mini (ограничил)

Фасетный поиск

  • Endeca,
  • FredHopper,
  • Навигационный знак,
  • поиск на естественном языке Solr

  • Endeca,
  • Fred Hopper,
  • Solr,
  • Mercado,
  • MSS/MSSE,
  • Автономия,
  • Документ Google Mini

, Проверяющий

  • Endeca,
  • Mercado,
  • MSS/MSSE,
  • Автономия,
  • Google Mini

ITL

  • Endeca,
  • Продающий/Удовлетвор FredHopper

, Высвечивающий

  • Endeca,
  • FredHopper,
  • Mercado

Распределенный Поиск

  • Endeca,
  • FredHopper,
  • Mercado,
  • Solr/Lucene,
  • Автономия,
  • Аналитика Google Mini

  • платформа Endeca

x86 Windows

  • Endeca,
  • FredHopper,
  • Mercado,
  • MSS/MSSE,
  • Solr/Lucene,
  • Автономия

Платформа x64 Windows

  • Endeca,
  • FredHopper,
  • варианты x86 Unix платформы Solr/Lucene

  • Endeca,
  • FredHopper,
  • Mercado,
  • Solr/Lucene,
  • Автономия

варианты x64 Unix Платформы

  • Endeca,
  • Solr/Lucene

Другой

  • Google Mini
42
ответ дан nbro 29 November 2019 в 06:49
поделиться

+1 для Lucene и FAST. Lucene был также портирован к.NET, если Вы интересуетесь расширением его.

http://incubator.apache.org/lucene.net/

2
ответ дан stephbu 29 November 2019 в 06:49
поделиться

Вот некоторые поисковые системы более с открытым исходным кодом

Здесь является некоторыми связанными с поиском инструментами

  • , библиотека Forage The Forage PHP5 является простым в использовании интерфейсом к нескольким библиотекам поиска бэкэнда. Это обеспечивает единый интерфейс, поддерживая уникальные функции в каждой библиотеке, позволяя бэкендам поддерживать определенные функции или нет.

  • Marjory Marjory является веб-сервисом для индексации и поиска документов, используя механизм полнотекстового поиска.

2
ответ дан ejunker 29 November 2019 в 06:49
поделиться

Быстрый ESP, который Microsoft купила в январе 2008

1
ответ дан vzczc 29 November 2019 в 06:49
поделиться

IBM Omnifind Выпуск Yahoo является поисковым сервером Предприятия, который использует Apache Lucene для индексации. Это просто, легко установить и администрировать. Это также имеет встроенный, Открывают Search API. Это имеет поддержку разных платформ и его Свободное!!

Этот продукт был запущен IBM для конкуренции с Google Mini на рынке Поиска Предприятия.

0
ответ дан Jahangir 29 November 2019 в 06:49
поделиться

В дополнение к тем, что люди уже упомянули, Microsoft имеет" Microsoft Search Server " и" Microsoft Search Server Express ". Последний свободен, бывшие поддержки больший корпус.

0
ответ дан Dirk Groeneveld 29 November 2019 в 06:49
поделиться

Сегодня мы используем Fast. В нем много замечательных функций, но мы ими не пользуемся. Это дорого. Мы также ищем альтернативное решение.

1
ответ дан 29 November 2019 в 06:49
поделиться

А как насчет FACT-Finder? Например, www.eddiebauer.de использует решение для поиска и навигации и более 500 других интернет-магазинов в Европе. Высокая устойчивость к ошибкам ...

1
ответ дан 29 November 2019 в 06:49
поделиться

Я работал с Endeca на периферии, и мне кажется, что это многофункциональный и быстрый движок.

Кажется, они особенно хорошо подходят для управления сайтами электронной коммерции, со специальными инструментами для настройки контента для повышения продаж и перекрестных продаж. Я также думаю, что они собираются попробовать продвинуться в BI-пространство, так что это должно быть интересное сочетание двух возможностей, если они справятся с этим без проблем".

3
ответ дан 29 November 2019 в 06:49
поделиться

Раньше я работал в Endeca, так что примите это таким, какое оно есть . Я не буду комментировать конкурентов, но я действительно считаю, что это значительно лучший продукт, чем что-либо еще.

Solr обеспечивает базовый фасетный поиск, который «достаточно хорош» для многих приложений. Во многих смыслах это Endeca бюджетного класса.

Некоторые из вещей, которые Endeca может дать вам по сравнению с Solr:

  • лучший анализ языка (выделение стеблей и т. Д.)
  • Объединения и возможность фильтрации «многие ко многим»
  • поддержка запросов через XQuery
  • лучшая поддержка для управления измерениями / фасетами
  • намного лучшая производительность (как для запросов, так и для передачи данных)
  • поисковые роботы и инструменты интеграции данных
  • лучшие инструменты администрирования

И, разумеется, услуги и поддержка.

Тем не менее, это недешево, поэтому, если у вас нет на это бюджета, Solr - неплохой вариант.

3
ответ дан 29 November 2019 в 06:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: