What’s New in Elasticsearch 8.0? Key Features, Security Enhancements, and Performance Boosts

Elasticsearch 8.0 introduces 7.x REST API compatibility headers, default‑on security features with automatic enrollment tokens, tighter protection of system indices, a preview KNN search API, storage‑saving field encodings, faster geo‑point and geo‑shape indexing, PyTorch model support, and a long list of deprecations and internal improvements.

Java High-Performance Architecture
Java High-Performance Architecture
Java High-Performance Architecture
What’s New in Elasticsearch 8.0? Key Features, Security Enhancements, and Performance Boosts

Elasticsearch is a Lucene‑based distributed full‑text search engine with an HTTP API and schema‑free JSON documents, available in many client languages.

7.x REST API Compatibility

Version 8.0 adds optional compatibility headers that let clients send 7.x‑compatible requests and receive 7.x‑compatible responses, easing migration while still encouraging native 8.0 usage.

Security Features Enabled by Default

Security (authentication, authorization, TLS) is now enabled and configured automatically on first start. Elasticsearch generates a registration token for Kibana or other nodes, removing the need to create certificates or edit YAML files.

If the elastic user password and Kibana token are not generated (e.g., on ARM or macOS M1), reset the password with bin/elasticsearch-reset-password -u elastic and create a token with bin/elasticsearch-create-enrollment-token -s kibana .

Better Protection of System Indices

System indices are now hidden by default; accessing them requires the allow_restricted_indices privilege set to true. The built‑in superuser role no longer has write access to system indices, and the elastic superuser cannot modify them.

New KNN Search API

A technical preview of a KNN search API uses the dense_vector field to find the k nearest vectors, supporting recommendation and NLP relevance ranking. It offers faster approximate KNN compared to the exact script_score approach.

Storage‑Saving Field Encodings

Updates to the inverted index reduce storage for keyword, match_only_text, and text fields. In a benchmark on the message field, index size dropped 14.4% for that field and 3.5% overall.

Faster Indexing for Geo and Range Fields

Indexing speed for multi‑dimensional points used by geo_point, geo_shape, and range fields improves by 10‑15% according to Lucene‑level benchmarks.

PyTorch Model Support for NLP

Elasticsearch now accepts externally trained PyTorch models for inference, bringing modern NLP and search use cases to the Elastic Stack.

Other Changes

Aggregations

Removed adjacency matrix settings (#46327).

Removed the MovingAverage pipeline aggregation (#39328).

Removed deprecated _time and _term sorting (#39450).

Removed deprecated date‑histogram intervals (#75000).

Allocation

Removed the include_relocations setting (#47717).

Analysis

Cleaned up versioned deprecations in analysis (#41560).

Removed the pre‑configured delimited_payload_filter (#43686).

Authentication

File and native realms are now always added unless explicitly disabled (#69096).

Default policies no longer set a NameID format (#44090).

Enforced ordering for realm configuration (#51195).

Cluster Coordination

Removed connection timeout (#60873).

Removed support for delayed state recovery of the pending master (#53845).

Distributed

Removed sync flush (#50882).

Removed the cluster.remote.connect setting (#54175).

Engine

Forced merge now rejects only_expunge_deletes and max_num_segments requests (#44761).

Removed per‑type index stats (#47203).

Removed translog retention settings (#51697).

Features / CAT APIs

Deleted deprecated local parameter from _cat/indices (#64868).

Deleted deprecated local parameter from _cat/shards (#64867).

Features / ILM+SLM

Defaulted cluster.routing.allocation.enforce_default_tier_preference to true (#79275).

Features / Indices APIs

Defaulted prefer_v2_templates to true (#55489).

Removed deprecated _upgrade API (#64732).

Removed include_type_name from the REST layer.

Removed the template field from index templates (#49460).

Infra / Core

Removed nodes/0 folder prefix from data paths.

Removed bootstrap.system_call_filter setting (#72848).

Removed node.max_local_storage_nodes setting (#42428).

Removed Joda dependency (#79007).

Removed camel‑case naming for date/time formats (#60044).

Packaging

Removed SysV init support (#51716).

Removed support for JAVA_HOME (#69149).

Java 17 is now required to run Elasticsearch (#79873).

For more details, see the official blog post: https://www.elastic.co/cn/blog/whats-new-elastic-8-0-0

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

Backendsearch engineElasticsearchsecurity
Java High-Performance Architecture
Written by

Java High-Performance Architecture

Sharing Java development articles and resources, including SSM architecture and the Spring ecosystem (Spring Boot, Spring Cloud, MyBatis, Dubbo, Docker), Zookeeper, Redis, architecture design, microservices, message queues, Git, etc.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.