We are excited to announce the release of a new version of the Elastic Database Client Library for Azure SQL database supporting Java. The client library provides tools to help developers scale out the data tier of their applications using sharding, including support for multi-tenancy patterns for Software as a Service (SaaS) applications.
The key capabilities offered by the client library include:
- Shard map management: Allowing you to define groups of shards for your application and manage key ranges for your shards.
- Data-dependent routing: Enabling you to route incoming requests to the appropriate shard.
- Multi-shard query: Supporting query across multiple shards for tasks such as data collection or reporting.
Like the existing C# version, the Java version is open source, and we welcome contributions from the community.
Key scenarios
High-volume OLTP: The client library enables a single cloud-based OLTP application to process massive data volumes, and to support high-end transaction processing needs by distributing data across potentially thousands of database shards.
Multi-tenant SaaS applications: The client library simplifies database management for highly scalable multi-tenant cloud applications. It can be used with a database-per-tenant model, where a database is provisioned for each tenant providing high tenant isolation, and with multi-tenant databases, where many tenants reside in each shard and share resources for cost effectiveness.
Continuous data collection: For applications designed to capture telemetry, or using an Internet-of-Things (IoT) data ingestion pattern, the client library enables seamless scale over time by allowing for regular creation of new shards for new date ranges. Newer shards can use higher service tiers and scale down over time as usage is reduced.
Next steps
- To add the library to your Maven project, simplify add the following dependency in your POM file.
com.microsoft.azure
elastic-db-tools
1.0.0
- To get started with the sample project, follow the the instructions to download the sample project.
- For more information on Azure SQL database tools for managing scaled out databases, see the documentation.
- To make contributions to the code, follow instructions on GitHub.
- Please submit feedback, questions, or comments to SaaSFeedback@microsoft.com.