Приложение для поиска в базе данных - PullRequest
2 голосов
/ 25 февраля 2010

Я не разработчик (не настоящий), но всегда готов оправдаться за саморазвитие.

Я работаю в команде поддержки уважаемого поставщика программного обеспечения, и в настоящее время мы используем программное обеспечение службы поддержки, называемое iSupport . - Это не плохая часть комплекта, и я не уверен, что он был настроен плохо (пытаясь выяснить), но самая большая проблема, с которой я сталкиваюсь (находясь на переднем крае в качестве аналитика, который использует его 8 часов в день), это его неспособность легко искать.

Появится новый «инцидент». Клиент сообщит о некоторых ошибках в журнале, возможно, упомянет некоторые другие ключевые слова при описании своих симптомов. Теперь я знаю, что, возможно, я уже отвечал на аналогичную проблему раньше (но не могу вспомнить решение), или, что более вероятно, коллега-аналитик мог ответить на тот же вопрос раньше.

Я хотел бы иметь возможность иметь одно окно поиска (например, Google), которое ищет КАЖДЫЙ инцидент, который когда-либо был создан, и возвращать мне ВСЕ инциденты, содержащие это ключевое слово.

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

Все данные находятся в базовых таблицах SQL Server (запросили подмножество данных).

Что я думаю, так это создание отдельного внешнего интерфейса, который является просто основным окном поиска, вот и все. Это приложение будет указывать на все соответствующие поля в таблицах SQL и извлекать соответствующие записи в таблицу. После того, как у меня есть идентификатор для инцидента, можно просто извлечь этот инцидент в интерфейсе iSupport.

Я размышлял в стиле приложения Google Desktop (сочетание клавиш вызывает окно поиска).

Теперь это столько же размышлений, сколько и я. Нужны советы о том, куда идти дальше. Например, я знаю, что Google Desktop сканирует и индексирует все ваши физические файлы на вашем компьютере. Должен ли я сделать что-то подобное для базы данных, поскольку я представляю, что может быть большое количество записей / полей / таблиц для поиска.

TBH, если он работает, я не так уж смущен (для начала), если для обработки запроса требуется некоторое время, пока он возвращает релевантные результаты. Но в идеале я хотел бы быть быстрым.

Я пока оставлю это на этом. С чего мне начать?

Ответы [ 5 ]

1 голос
/ 25 февраля 2010

Если вам подходит .NET, то Lucene.NET будет хорошо работать с SQL Server, чтобы создать ощущение поиска в Google.

Веб-сайты StackOverflow используют его, вы можете прослушать SO Podcast , где сука Джеффа / Джоэла рассказывает о том, почему полнотекстовый поиск в SQL Server так отстой.

0 голосов
/ 05 мая 2015

iSupport включает функцию полнотекстового поиска.Добавьте виджет «Глобальный поиск» на созданную вами панель мониторинга.

0 голосов
/ 25 февраля 2010

Пакет инструментов SSMS (надстройка для Management Studio) содержит функцию поиска в таблице, представлении или базе данных.

0 голосов
/ 25 февраля 2010

Ознакомьтесь с функциональностью Полнотекстовый поиск SQL Server.

0 голосов
/ 25 февраля 2010

Я бы предположил, что это может быть хорошим кандидатом для веб-приложения - сайта asp.net / jsf. Это означает, что вы можете управлять им с одного компьютера, но все ваши коллеги могут использовать его без головной боли при развертывании каждый раз, когда вы добавляете новую функцию ...

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

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