SuperAPI AI 工具集

azure-data-tables-java

编程与开发

查看项目

更新于 10-16 03:12

技能介绍

用途:使用 Azure Tables SDK for Java 构建表存储应用,兼容 Azure Table Storage 与 Cosmos DB Table API。

安装:引入 Maven 依赖 com.azure:azure-data-tables(版本 12.6.0-beta.1)。

主要能力:

  • 客户端创建:支持连接字符串、共享密钥(AzureNamedKeyCredential)、SAS 令牌,以及仅 Storage 可用的 DefaultAzureCredential。
  • 核心对象:TableServiceClient 管理表(创建、列出、删除);TableClient 管理表内实体 CRUD。
  • 实体模型:Partition Key 用于分组与高效查询,Row Key 为分区内唯一标识;实体最多 252 个属性,Storage 上限 1MB、Cosmos 上限 2MB。
  • 常用操作:createTable、createTableIfNotExists、getTableClient,实体的 createEntity、getEntity、updateEntity(MERGE/REPLACE)、upsertEntity、deleteEntity。
  • 查询:listEntities 配合 ListEntitiesOptions,支持 OData 过滤(如 PartitionKey eq 'sales')、setSelect 投影、setTop 取前 N 条。
  • 批处理:submitTransaction 提交原子事务,同一批实体须共享同一分区键,动作类型含 CREATE、UPSERT_MERGE 等。
  • 表级操作:listTables、ListTablesOptions 过滤、deleteTable。
  • 强类型实体:实现 TableEntity 接口,自定义字段与 getter/setter。
  • 错误处理:捕获 TableServiceException,读取响应状态码(409 冲突、404 未找到)。

使用方式:通过环境变量配置连接串或端点,例如 AZURE_TABLES_CONNECTION_STRING、AZURE_TABLES_ENDPOINT,Cosmos 使用 COSMOS_TABLE_ENDPOINT。

适用场景:需要以键值/NoSQL 方式存储结构化数据的 Java 应用,尤其是使用 Azure 表存储或 Cosmos DB Table API 的场景。

限制与最佳实践:分区键应均匀分布负载;尽量按 PartitionKey 过滤以优化查询;仅选择所需属性;实体大小控制在 Storage 1MB、Cosmos 2MB 以内;批处理须同分区。资料未提供收费、价格与平台信息;技能仅适用于明确匹配其范围的场景,输出不应替代环境相关验证、测试或专家评审,缺少必要输入、权限或安全边界时应停止并请求澄清。