2015-05-14 4 views
0

У меня есть два требования и индекс. У меня есть поле в классе претензии, называемом темой, которая является строкой. Я пытаюсь индексировать столбец темы, не используя возможности столбца индекса базы данных. Но он должен кодировать следующий метод. Предположим, у меня есть претензии 1, по претензии 1тема поля («я люблю кексы кексы») я буду делать на следующие лечениеЭто индексирование или маркировка?

#1. Create an empty Dictionary with "word"=>occurrences 
#2. Create a List of the stopwords exemple stopwords = ("For","This".....etc) 
#3. Create List of the delimiters exemple delimiter_chars = ",.;:!?" 
#4. Split the Text(topic field) into words delimited by whitespace. 
#5. Remove unwanted delimiter characters adjoining words. 
#6. Remove stopwords. 
#7. Remove Duplicate 
#8. now i create multiple index object (word="love",occurences = 1,looked = 0,reference on claim 1),(word="muffins",occurences = 2,looked = 0,reference on claim 1), 

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

ответ

1

Что я думаю, что вы ищете, это то, что называется B-Tree. В вашем случае вы должны использовать 26-й (или 54, если требуется регистр данных) узел ветвления в дереве. Это сделает поиск объектов очень быстрым. Я думаю, что время - это ничтожество или что-то в этом роде. В узле у вас будет указатель на фактические данные в массиве, списке, файле или что-то еще.

Однако, если вы не хотите указывать время для кодирования какого-либо конкретного приложения, вам может быть лучше использовать базу данных, такую ​​как Oracle, Microsoft SQL Server или MySQL, потому что они профессионально разработаны и профилированы для получения максимальная производительность возможна.

Смежные вопросы