Get started with Elasticsearch
Stack Serverless Elasticsearch
New to Elasticsearch? Start building a search experience by setting up your first deployment, refining your search goals, and adding data.
If you're looking for an introduction to the Elastic Stack or the Elasticsearch product, go to Get started or The Elasticsearch data store.
-
Choose your deployment type
Elastic provides several self-managed and Elastic-managed options. For simplicity and speed, try out Elasticsearch Serverless:
Create an Elasticsearch Serverless project
There are two options to create serverless projects:
- If you are a new user, sign up for a free 14-day trial to create a serverless project. For more information about the Elastic Cloud trials, check Trial features.
- If you are an existing customer, log in to Elastic Cloud. On the home page, you will see a new option to create serverless projects. The
admin
predefined role or an equivalent custom role is required to create projects. Refer to User roles and privileges.
Choose the Elasticsearch project type and provide a name. You can optionally edit the project settings, such as the region.
When your project is created, you're ready to move on to the next step and to start creating indices, adding data, and performing searches.
Alternatively, create a local development installation in Docker:
curl -fsSL https://elastic.co/start-local | sh
Check out the full list of deployment types to learn more.
-
Identify your search goals
Depending on your use case, you can choose multiple search approaches, for example full-text and semantic search. Each approach affects your options for storing and querying your data.
If you're unsure which approaches match your goals, you can try them out with sample data. For example, Get started with semantic search.
If you prefer to ingest your data first and transform or reindex it as needed later, skip to the next step.
-
Ingest your data
If your goals include vector or semantic AI-powered search, create vectorized data with built-in and third-party natural language processing (NLP) models and store it in an Elasticsearch vector database. The approach that requires the least configuration involves adding
semantic_text
fields when ingesting your data. This method is described in Semantic search with semantic_text.To learn about adding data for other search goals, go to Ingest for search use cases. For a broader overview of ingestion options, go to Ingest: Bring your data to Elastic.
If you're not ready to add your own data, you can use sample data or create small data sets when you follow the instructions in the quickstarts.
The Elasticsearch home page in the UI also provides workflow guides for creating indices and ready-to-use code examples for ingesting data by using REST APIs.
-
Build your search queries
Your next steps will be to choose a method to write queries and interact with Elasticsearch. You can pick a programming language client that matches your application and choose which query languages you will use to express your search logic. Each decision builds on the previous ones, offering flexibility to mix and match approaches based on your needs.
Not sure where to start exploring? Get an introduction to index and search basics or build your first search query with Python.
Use these resources to learn more about Elasticsearch or get started in a different way: