cc5566 opened a new issue, #9838: URL: https://github.com/apache/gravitino/issues/9838
## Description Currently, partition statistics can only be stored using Lance format. This enhancement adds JDBC (MySQL, PostgreSQL, H2) as an alternative storage backend, providing users with more flexibility based on their infrastructure needs. ## Benefits - **Database choice**: Users can choose between Lance (columnar) and JDBC (relational) storage - **Infrastructure reuse**: Leverage existing database infrastructure and backup/recovery tools - **Transactional guarantees**: JDBC provides ACID guarantees for statistics updates - **Unified storage**: Can use the same database as Gravitino's entity storage ## Implementation - Add JdbcPartitionStatisticStorage implementation with connection pooling - Support MySQL, PostgreSQL, and H2 databases - Pluggable via configuration (storageFactoryClass) - Database schema scripts for version 1.2.0 - Comprehensive unit and integration tests ## Configuration Example ```properties gravitino.stats.partition.storageFactoryClass = org.apache.gravitino.stats.storage.JdbcPartitionStatisticStorageFactory gravitino.stats.partition.storageOption.jdbcUrl = jdbc:mysql://localhost:3306/gravitino gravitino.stats.partition.storageOption.jdbcUser = root gravitino.stats.partition.storageOption.jdbcPassword = gravitino ``` ## Related PR #9779 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
