» Go: Building Full-Text Search API with ElasticSearch » 1. Introduction » 1.1 Preparation

Preparation

Install Go

See How to install Go?.

Note: This project uses Go 1.22.2.

Pick an editor

Pick your favorite editor or use Visual Studio Code.

Learn Go basics

If you're not familiar with Go, you may try this tutorial: "Quick Introduction to Go."

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

es logo

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.

Gin web framework

Gin is a web framework written in Golang. It features a Martini-like API, but with performance up to 40 times faster than Martini. If you need performance and productivity, you will love Gin.