Preparation
Install Python
Note: This project uses Python 3.12.2 and pip 24.0 for Python 3.12.
Pick an editor
Pick your favorite editor or use Visual Studio Code.
Learn Python basics
If you're not familiar with Python, you may try this tutorial: "Quick Introduction to Python."
What is Full-Text Search
In text retrieval, full-text search refers to techniques for searching a single computer-stored document or a collection in a full-text database. Full-text search is distinguished from searches based on metadata or on parts of the original texts represented in databases.
A LIKE
SQL query against millions of rows of text data can take minutes to return; whereas a full-text query can take only seconds or less against the same data, depending on the number of rows that are returned.
Elasticsearch
Elasticsearch
is a distributed search and analytics engine built on Apache Lucene. Since its release in 2010, Elasticsearch has quickly become the most popular search engine and is commonly used for log analytics, full-text search, security intelligence, business analytics, and operational intelligence use cases.
FastAPI web framework
FastAPI
is a modern, fast (high-performance), web framework for building APIs with Python 3.8+ based on standard Python type hints.