Releases: datastax/astra-sdk-java
Data API Release
Release Vector API
- Updating dependencies to latest and shinest
- Renaming
AstraDBClient
toAstraDBAdmin
- Wrapping
CollectionClient
withAstraDBCollection
- Wrapping
CollectionRepository
withAstraDBRepository
- Add support for
$and
,$or
and custom json queries - 36 standalone classes as (executable) documentation
- Reference Guide on awesome astra
0.7.1
v0.6.8
The new version bringsthe following improvements:
Maintenance
- Upgrade dependencies to latest available
- Fix 3 CVE on
commons-beanutils
andorg.json:json
Bug Fixing
- The CDC operations failed as the date format evolved
New Features
- Astra SDK Vector support for Vector Store implementation.
// .... [Initializations Ommited]
// Create Destination Table and SAI indexes
MetadataVectorCassandraTable v_table = new MetadataVectorCassandraTable(
cqlSession, ASTRA_DB_KEYSPACE,"philosophers", LLM_MODEL_DIMENSION);
// Criteria
Map<String, String> metaData = new LinkedHashMap<>();
metaData.put("author", author);
metaData.put(tag, "true");
// Similarity Search supporting threshold, metadata filtering, different similairy mretry
SimilaritySearchQuery.SimilaritySearchQueryBuilder queryBuilder =
SimilaritySearchQuery.builder()
.distance(SimilarityMetric.DOT_PRODUCT)
.recordCount(recordCount)
.embeddings(computeOpenAIEmbeddings(query))
.threshold(threshold)
.metaData(metaData);
// Execute query and open search results
List<String> rag = vTable.similaritySearch(queryBuilder.build())
.stream()
.map(SimilaritySearchResult::getEmbedded)
.map(MetadataVectorCassandraTable.Record::getBody)
.collect(Collectors.toList());
0.6.4
0.6.2
- Fix the
application.yml
in Spring Boot 3X templates - Upgrade to drivers
4.16.0
for VectorSearch Support - New Archetype quickstart for all Astra APIs including a VectorSearch Sample
- Support for DEV and TES environments in Devops Api Endpoints
mvn archetype:generate \
-DarchetypeGroupId=com.datastax.astra \
-DarchetypeArtifactId=astra-sdk-quickstart \
-DarchetypeVersion=0.6.2 \
-DinteractiveMode=false \
-DgroupId=fr.clunven \
-DartifactId=astra-quickstart\
-Dversion=1.0-SNAPSHOT
0.6
0.4
- Stargate SDk has been moved to its dedicated repositories. It will be easier to release Astra SDK more frequently.
- Dedicated component
astra-sdk-devops
with the devops API wrappers (used by CLI) - New implementations for the Database regions functions
- New implementations for Streaming and CDC
- Revamping of the Unit Tests
- Fix Logging issues
Improvements, Updates, BugFixing
CHANGELOG
- - Version dependencies updated to latest
- - Break dependency of
StreamingClient
from pulsar client - - Fix Tests to work with JDK17 and GraalVM JDK
- - New Calls implementation to sustain Astra CLI
- - Flag to disable cross-region-failback, removing dependency to devops API
astra:
api:
cross-region-failback: false
Start only whats needed and Spring Configuration Integration
Start Clients
only when needed
Astra offers a wide variety of Apis and functions. (see Architecture for details of ports). Previous the SDK initialized all connections for you as long as you provided enough parameters. This behavior leads to. usage of resources not in used and port openings that are not really used.
With the builders you would have to enable functions explicitely:
AstraClient.builder()
.enableCql()
.enableGrpc()
.enableDownloadSecureConnectBundle()
With the Spring configuration file you would have to also enable
astra:
api:
application-token: "AstraCS:mytoken..."
database-region: eu-west-1
grpc:
enabled: true
...
Merge and fined grained configuration of the driver with Spring config
Java Driver used to read application.conf
configuration file to load fine grained settings. You can all define any driver key in astra.cql.driver-config
.
Here is a sample:
astra:
api:
application-token: change_me
database-id: change_me
database-region: change_me
grpc:
enabled: true
cql:
enabled: true
download-scb:
enabled: true
metrics:
enabled: false
driver-config:
basic:
request:
timeout: 5s
consistency: LOCAL_QUORUM
page-size: 5000
session-keyspace: feeds_reader
advanced:
connection:
init-query-timeout: 5s
set-keyspace-timeout: 5s
control-connection.timeout: 5s
Release of constraint on DatabaseTierType
The devops API database will retrieve the tier type of your instances. With multiple updates over the months we changed from an enum to a String.