This is an automated email from the ASF dual-hosted git repository.

mck pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra-website.git


The following commit(s) were added to refs/heads/trunk by this push:
     new dc9c4ad8 BLOG - Cassandra 4.1 is here
dc9c4ad8 is described below

commit dc9c4ad83f44eff2cf3b4325addb62714ec37fa7
Author: Erick Ramirez <erickramire...@apache.org>
AuthorDate: Sun Dec 11 23:38:35 2022 +1100

    BLOG - Cassandra 4.1 is here
    
    Patch by Chris Thornett, Diogenese Topper, Erick Ramirez; reviewed by Erick 
Ramirez, Michael Semb Wever for CASSANDRA-18063
---
 .../ROOT/images/blog/cassandra-4.1-is-here.png     | Bin 0 -> 795101 bytes
 site-content/source/modules/ROOT/pages/blog.adoc   |  24 ++++
 .../ROOT/pages/blog/Cassandra-4.1-is-here.adoc     | 121 +++++++++++++++++++++
 site-content/source/modules/ROOT/pages/index.adoc  |  19 ++--
 4 files changed, 155 insertions(+), 9 deletions(-)

diff --git 
a/site-content/source/modules/ROOT/images/blog/cassandra-4.1-is-here.png 
b/site-content/source/modules/ROOT/images/blog/cassandra-4.1-is-here.png
new file mode 100644
index 00000000..7e447b26
Binary files /dev/null and 
b/site-content/source/modules/ROOT/images/blog/cassandra-4.1-is-here.png differ
diff --git a/site-content/source/modules/ROOT/pages/blog.adoc 
b/site-content/source/modules/ROOT/pages/blog.adoc
index 2822cd63..0a5fc46a 100644
--- a/site-content/source/modules/ROOT/pages/blog.adoc
+++ b/site-content/source/modules/ROOT/pages/blog.adoc
@@ -8,6 +8,30 @@ NOTES FOR CONTENT CREATORS
 - Replace post tile, date, description and link to you post.
 ////
 
+//start card
+[openblock,card shadow relative test]
+----
+[openblock,card-header]
+------
+[discrete]
+=== Apache Cassandra 4.1 is here!
+[discrete]
+==== December 13, 2022
+------
+[openblock,card-content]
+------
+Apache Cassandra 4.1 is GA! Read the blog for more details on the key features 
you won't want to miss in the next major release from the project.
+
+[openblock,card-btn card-btn--blog]
+--------
+[.btn.btn--alt]
+xref:blog/Cassandra-4.1-is-here.adoc[Read More]
+--------
+
+------
+----
+//end card
+
 //start card
 [openblock,card shadow relative test]
 ----
diff --git 
a/site-content/source/modules/ROOT/pages/blog/Cassandra-4.1-is-here.adoc 
b/site-content/source/modules/ROOT/pages/blog/Cassandra-4.1-is-here.adoc
new file mode 100644
index 00000000..72f75dfa
--- /dev/null
+++ b/site-content/source/modules/ROOT/pages/blog/Cassandra-4.1-is-here.adoc
@@ -0,0 +1,121 @@
+= Apache Cassandra 4.1: Rock Solid, Cloud-Native, Strongly Consistent and 
Highly Scalable
+:page-layout: single-post
+:page-role: blog-post
+:page-post-date: December 13, 2022
+:page-post-author: Cassandra Community
+:description: Apache Cassandra 4.1 released
+
+:!figure-caption:
+
+._Image credit: https://www.pexels.com/@roman-odintsov/[Roman Odintsov on 
Pexels^]_
+image::blog/cassandra-4.1-is-here.png[Christmas present]
+
+Today, we are excited to announce General Availability (GA) of Apache 
Cassandra 4.1, the project's major release for 2022 with lots of new features. 
This release paves the way to a more cloud-native future for the project by 
externalizing important key functions, extending Apache Cassandra, and enabling 
an expanded ecosystem without compromising the stable core code.
+
+Cassandra 4.1 also marks the delivery of our commitment to a yearly release.
+
+The release of 4.0 last year laid the foundations for growth. It established 
an important baseline for any future version of Cassandra while providing the 
needed infrastructure to ensure future releases maintain high quality and 
correctness. The 4.0 release was also the most stable GA for the project, and 
arguably any distributed open source database system, and opened the floodgates 
to a host of new community-developed features that are either included in 4.1 
or in development.
+
+== New Features in 4.1 
+
+A major theme for Apache Cassandra 4.1 is pluggability. With each new 
framework, we are establishing a straightforward interface to Cassandra 
internals and an understood contract when using outside code. This theme sits 
alongside a strong focus on features that provide better control, improved ease 
of use, and flexibility that benefits developers and operators significantly.
+
+=== For Developers and Users
+
+The community is continuing to improve the performance of the database and 
make Cassandra both easier to use for end users and easier to onboard key 
development requests from the community.
+
+==== Paxos Improvements
+
+Cassandra uses a Paxos consensus protocol implementation that creates strong 
consistency. This is achieved by quorum reads to ensure a single value is 
selected and executed from all the proposed updates at any given time. Where an 
action needs to persist based on the current state of the system then 
Lightweight Transactions (LWTs) are used. Some examples of use cases are 
selling seats to a concert and where an `INSERT` or `UPDATE` operation must be 
unique, such as for a customer ID. Hist [...]
+
+Recognizing these shortcomings, 
https://cwiki.apache.org/confluence/x/54cjCw[Paxos was optimized^], improving 
LWT performance by 50%, improving latency, and halving the number of required 
round-trip to achieve consensus. Linearizability is now guaranteed across range 
movements in-line with what you would expect from a database with strong 
consistency.
+
+==== Improved Configuration
+
+Apache Cassandra is a powerful but complex distributed database system with 
many available configuration parameters. It can be confusing especially for 
newcomers and our goal with every release is to provide greater clarity and 
flexibility for developers and users which is why syntax in `cassandra.yaml`, 
the main configuration file, has had a major overhaul in 4.1. Among many 
improvements, our new configuration framework introduces unit types and 
standardizes names with a more intuitive  [...]
+
+Read the blog 
xref:blog/Apache-Cassandra-4.1-Configuration-Standardization.adoc[Configuration 
Standardization in 4.1] to learn more.
+
+=== For CQL Developers
+
+Based on the feedback from the community we have implemented new Cassandra 
Query Language features:
+
+* Users can now group by time range
+* Users can now use `CONTAINS` and `CONTAINS KEY` conditions in conditional 
update
+* Users can now use `IF EXISTS` and `IF NOT EXISTS` in `ALTER` statements
+
+Those seeking more query options will appreciate `GROUP BY` as it can be used 
to output row sets that are the same into a single grouped row, for instance, 
for marathon time results over a season. This can be used along with `FLOOR()` 
and `COUNT()` to further aggregate output. For instance, `FLOOR()` could be 
used to output results for runners over a series of marathons that finished 
within a specified hour and `COUNT()` could be used to output a column that 
indicates the number of runne [...]
+
+=== Security Enhancements
+
+End users of Apache Cassandra are constantly under pressure to provide better 
security to their users and safeguard the privacy of data. Apache Cassandra, as 
one of the most popular NoSQL databases in the world, is constantly testing, 
researching, and developing ways to make its mission-critical open source 
product more secure. This release offers several features around making 
authentication more accessible and data-in-transit more secure.
+
+==== Credentials File Support for CQLSH
+
+In Apache Cassandra 4.1, we have added support for authentication plugins. 
While Cassandra authentication is already highly extensible, and users can 
create plugins to add authentication methods, the CQL shell (CQLSH) did not tap 
into this mechanism. Consequently, developers and users were forced to develop 
their own tool to interact with a Cassandra DB, but now you can use any Python 
authentication mechanism in CQLSH.
+
+==== PEM-based Key Material Supported
+
+Making SSLContext creation pluggable and extensible, as mentioned above, 
overcame previous challenges with a TLS configuration as it allows for 
specifying custom ways to build SSLContext and the new framework has swiftly 
led to support for PEM-based security credentials.
+
+Read the blog 
xref:blog/Tightening-Security-for-Apache-Cassandra-Part-3.adoc[Tightening 
Security] to learn more.
+
+==== Pre-hashed passwords in CQL Supported
+
+As well as sanitizing any logging for sensitive data before the development of 
v4.1, a new tool (`tools/bin/hash_password`) now provides a jBCrypt hash for 
use in Data Definition Language (DDL) commands used for creating, manipulating 
and modifying objects including creating or altering roles.
+
+Read the blog 
xref:blog/Apache-Cassandra-4.1-Features-Client-side-Password-Hashing.adoc[Client-side
 Password Hashing] to learn more.
+
+=== For the Cassandra Ecosystem
+Regarding pluggability, 4.1 provides various structured ways to add powerful 
features that enhance the Apache Cassandra ecosystem. Prominent examples of 
this are:
+
+==== Pluggable Memtable Implementation
+Memtables are in-memory structures where Cassandra buffers writes. This 
feature enables developers to implement new memtable solutions and allows users 
to select a memtable implementation and configuration for each table in their 
database. 
+
+Read the blog 
xref:blog/Apache-Cassandra-4.1-Features-Pluggable-Memtable-Implementations.adoc[Pluggable
 Memtable Implementation] to learn more.
+
+==== Extensible and Pluggable SSL Context Creation
+
+Another feature that is now pluggable and extensible is 
https://cwiki.apache.org/confluence/x/9YbOCg[SSLContext creation^]. This 
feature will appeal to enterprises operating in industries with stricter and 
more contextual security requirements. Enterprises need the flexibility to load 
the SSL protocol artifacts from custom resources and this feature makes that 
possible.
+
+==== Pluggable External Schema Manager Services
+
+The schema management has been completely refactored 
(https://issues.apache.org/jira/browse/CASSANDRA-17044[CASSANDRA-17044^]) so 
that schema storage is now pluggable. In practical terms, this means that 
schema can be stored somewhere other than in the local system tables, for 
example etcd. Again, this is a feature that enables the extension and 
customization of Cassandra for different use cases.
+
+=== For Operators
+
+This release sees new tools to assist operators in managing risk, controlling 
user access, and maintaining performance. A good example of this type of 
feature is the new Guardrails Framework.
+
+==== Guardrails Framework
+
+The Guardrails Framework enforces soft and hard limits system-wide, disables 
certain features, and disallows specific values. The framework exists to help 
operators avoid particular configuration and usage pitfalls that can degrade 
the performance and availability of an Apache Cassandra cluster when taken to 
scale. As well as activating available guardrails, developers can use the 
framework to create their own guardrails. 
+
+Read the blog 
xref:blog/Apache-Cassandra-4.1-Features-Guardrails-Framework.adoc[Guardrails 
Framework] to learn more.
+
+==== Partition DenyListing
+
+On a similar theme, the Partition Denylisting tool gives operators new 
controls to reduce the impact of overloaded partitions. While the community 
continues to strengthen and widen the tracks on which data models run (for 
example, previously we added support for large partitions on SSTable 3.0 
format), DenyListing is a quick solution to a recognized situation for 
operators. The tool will protect performance on other partitions that would be 
adversely affected by a large, problematic partition.
+
+Read the blog 
xref:blog/Apache-Cassandra-4.1-Denylisting-Partitions.adoc[Denylisting 
Partitions] to learn more.
+
+==== SSTable Identifiers
+
+As well as introducing the ability to monitor top partitions by 
size/tombstones and improving `nodetool`, backup and restore, we've introduced 
new SSTable identifiers which is a naming pattern for files and data 
directories that are located and organized in SSTables. As each SSTable on any 
node will have a globally unique identifier, we expect this will eliminate some 
problems with manual backups.
+
+Read the blog xref:blog/Apache-Cassandra-4.1-New-SSTable-Identifiers.adoc[New 
SSTable Identifiers in 4.1] to learn more.
+
+=== Validating with Advanced Simulations
+
+The community validated the new, improved Paxos implementation with its new 
https://cwiki.apache.org/confluence/x/LY7OCg[Cluster and Code Simulator^] which 
is capable of simulating hundreds of thousands of clusters and millions of 
queries to assert linearizability. Cassandra's new Simulator can completely 
control the database and fully control JVM thread scheduling, lock acquisition, 
and time in the new burn suite. These simulations can be launched in the cloud 
to validate Paxos at a mas [...]
+
+== The Future
+
+Many of 4.1's features establish frameworks that the community is now building 
on and creating exciting new features.
+
+The Code and Cluster Simulator is at the heart of helping the project develop 
a new consensus protocol called 
https://cwiki.apache.org/confluence/download/attachments/188744725/Accord.pdf[Accord^]
 which will reduce linearizable reads/writes to a single round trip. Accord 
will be a ground-breaking development for the database industry at large 
enabling multi-partition 
https://cwiki.apache.org/confluence/x/FQRACw[general-purpose transactions^] in 
Cassandra.
+
+Elsewhere, the memtable implementation ushers in Trie-based memtable support 
(https://issues.apache.org/jira/browse/CASSANDRA-17240[CASSANDRA-17240^]) which 
will offer significant improvements to both performance and garbage collection 
overheads.
+
+Collectively, this level of community momentum is pushing Apache Cassandra 
ever forward toward a more cloud-native future.
+
+We encourage you to join us on this journey by subscribing to the mailing 
lists, introducing yourself on our ASF Slack, and following us on social media 
-— all the details are available in the xref:community.adoc[Community] section 
with links at the top of the page.
diff --git a/site-content/source/modules/ROOT/pages/index.adoc 
b/site-content/source/modules/ROOT/pages/index.adoc
index 01b90bb2..5a62b825 100644
--- a/site-content/source/modules/ROOT/pages/index.adoc
+++ b/site-content/source/modules/ROOT/pages/index.adoc
@@ -34,16 +34,17 @@ Banner: The section below is where the updated banner 
content goes.
 [openblock,arrow]
 ----
 // start home banner
-[openblock,home-banner w75 product-highlight mx-auto pt-xlarge cf]
+[openblock,home-banner]
 ------
-[openblock,float50 full-800]
---------
-Cassandra 4.0 is GA! How did we deliver the most stable database release ever 
shipped?
---------
-[openblock,float50 full-800]
+[openblock, home-hero-content text-center pa-large]
 --------
-[.btn.btn--grad.ml-large]
-xref:blog/Apache-Cassandra-4.0-is-Here.adoc[Read the Blog]
+[discrete]
+=== Cassandra 4.1 is here!
+[discrete]
+==== Rock Solid. Cloud-Native. Strongly Consistent. Highly Scalable.
+
+[.btn.btn--grad]
+xref:blog/Cassandra-4.1-is-here.adoc[Read the Blog]
 --------
 ------
 ----
@@ -268,4 +269,4 @@ 
image::blog/inside-Cassandra-Marcel-Birkner/image2.png[Inside Cassandra: Marcel
 
 ------
 ----
-// end community spotlight
\ No newline at end of file
+// end community spotlight


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to