Skip to content

kiryltech/simple-fts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Simple Full-text Search Index

Overview

The goal of this project is to create a simplified implementation of in-memory full-text search index to demonstrate its principle of work.

Usage example

  • Example in Kotlin:

    data class Document(
            @FtsId val id: UUID = UUID.randomUUID(),
            @FtsIndexed val title: String,
            @FtsIndexed val description: String?
    )
    
    object Application {
    
        @JvmStatic fun main(args: Array<String>) {
            val fts = FullTextSearch.createIndexWithAnnotationExtractor<UUID, Document>()
        
            fts.add(Document(
                    title = "Document #11",
                    description = "Description of document number eleven"))
            fts.add(Document(
                    title = "Document #12",
                    description = "Description of document number twelve"))
                    
            fts.search("eleven")            // returns [Document #11]
            fts.search("document eleven")   // returns [Document #11, Document #12]
            fts.search("document twelve")   // returns [Document #12, Document #11]
        }
      
    }
  • Example in Java:

    Java is not supported yet.

Data structure

Data structure diagram

About

Simple in-memory implementation of full text search index

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages