**New Features**
- The Primary Key model supports the full DELETE WHERE syntax.[4500](https://github.com/StarRocks/starrocks/pull/4500)
- The primary key model supports persistent primary key indexes to prevent excessive memory consumption.[3399](https://github.com/StarRocks/starrocks/pull/3399)
- When a Routine Load job is executed, and a global dictionary is built to optimize queries on low-cardinality columns, the global dictionary can be updated, thus improving query performance.
- The CREATE TABLE AS SELECT statement can be executed asynchronously and write results to a new table. [5543](https://github.com/StarRocks/starrocks/pull/5543)
- Support the following resource group-related features:
- Monitor resource groups: You can use the audit log to view a query in which resource group and call API operations to obtain the monitoring metrics about specific resource groups.
- Limit the consumption of large queries on CPU, memory, or I/O resources: You can route queries to resource groups by matching classifiers or configure session variables to directly specify resource groups for queries.
- StarRocks provides JDBC external tables to query Oracle, PostgreSQL, MySQL, SQLServer, Clickhouse, and other databases. StarRocks also supports predicate pushdown when performing queries. [3352](https://github.com/StarRocks/starrocks/pull/3352) [#3353](https://github.com/StarRocks/starrocks/pull/3353) [#3354](https://github.com/StarRocks/starrocks/pull/3354) [#3723](https://github.com/StarRocks/starrocks/pull/3723) [#3724](https://github.com/StarRocks/starrocks/pull/3724) [#3725](https://github.com/StarRocks/starrocks/pull/3725)
- [Preview] A new Data Source Connector framework is released to support user-defined external catalogs. You can use the external catalogs to directly access and analyze Hive without creating external tables. [5062](https://github.com/StarRocks/starrocks/issues/5062) [#7268](https://github.com/StarRocks/starrocks/issues/7268)
- Add the following functions:
- window_funnel
- ntile
- bitmap_union_count、array_to_bitmap [7404](https://github.com/StarRocks/starrocks/issues/7404)、base64_to_bitmap
- week、time_slice
- Add the EXECUTE AS statement. After you use the GRANT statement to impersonate a specific user identity to perform operations, you can use the EXECUTE AS statement to switch the execution context of the current session to this user.
**Improvements**
- The compaction mechanism can merge large metadata more quickly. This prevents metadata squeezing and excessive disk usage that can occur shortly after frequent data updates.
- The performance of loading Parquet files and compressed files is optimized. [3945](https://github.com/StarRocks/starrocks/pull/3945)
- The mechanism of creating materialized views is optimized. After the optimization, materialized views can be created at a speed up to 10 times higher than before.
- The performance of the following operators is optimized:
- TopN and sort operators [3953](https://github.com/StarRocks/starrocks/pull/3953) [#4106](https://github.com/StarRocks/starrocks/pull/4106) [#4227](https://github.com/StarRocks/starrocks/pull/4227) [#4680](https://github.com/StarRocks/starrocks/pull/4680)
- Equivalence comparison operators that contain functions can use Zone Map indexes when these operators are pushed down to scan operators.
- Optimize the Apache Hive™ external tables.
- When Apache Hive™ tables are stored as Parquet, ORC, or CSV formats, StarRocks can synchronize the schema changes like ADD COLUMN and REPLACE COLUMN from hive tables when you perform REFRESH statement on external tables.
- Hive resources' hive.metastore.uris can be modified. [3843](https://github.com/StarRocks/starrocks/pull/3843)
- Optimize the Apache Iceberg external tables. A custom catalog can be used to create an Iceberg resource. [5062](https://github.com/StarRocks/starrocks/issues/5062)
- Optimize the Elasticsearch external tables. Sniffing the addresses of the data nodes in an Elasticsearch cluster can be disabled. [6314](https://github.com/StarRocks/starrocks/issues/6314)
- When the sum() function calculates numeric strings, implicit conversion is performed.
- The year, month, and day functions support the DATE data type.
Bug Fixes
The following bugs are fixed:
- CPU utilization increases abnormally high due to an excessive number of tablets. [5875](https://starrocks.atlassian.net/browse/SR-5875)
- Problems cause the "fail to prepare tablet reader" error message to occur.[7248](https://starrocks.atlassian.net/browse/SR-7248)、
[7854](https://starrocks.atlassian.net/browse/SR-7854)、 [#8257](https://starrocks.atlassian.net/browse/SR-8257)
Problems cause the "fail to prepare tablet reader" error message to occur.
- The FEs fail to restart.[5642](https://github.com/StarRocks/starrocks/issues/5642 )、[#4969](https://github.com/StarRocks/starrocks/issues/4969 )、[#5580](https://github.com/StarRocks/starrocks/issues/5580)。
- The CTAS statement cannot be run successfully when the statement includes a JSON function.[6498](https://github.com/StarRocks/starrocks/issues/6498)
**Others**
- [Preview] StarGo, a cluster management tool, can deploy, start, upgrade, and roll back clusters and manage multiple clusters.
- StarRocks clusters can be quickly deployed on AWS by using CloudFormation.
- Pipeline Engine is turned on as default now.