编写dynamodb基于GSI的分页查询

本文介绍如何在DynamoDB中利用全局二级索引(GSI)进行基于topic和时间戳(ts)的分页查询,以msg-id、msg、topic和ts为主表结构。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

主表结构(dmg-offline-archive.201604)

msgid(主分区键,字符串), msg(字符串), topic(字符串), ts(long型时间戳)

GSI二级索引(topic-ts-index)

项目键(topic)

排序键(ts)



public static void main(String[] args) {
        AWSCredentials credentials = new BasicAWSCredentials("AKIAPVA435O7PIBRCPQDWA", "39456bfkdgrewGtfdsfdsff324dfs/iVlcof4");
        Region region = Region.getRegion(Regions.fromName("cn-north-2"));
        AmazonDynamoDBClient client = new AmazonDynamoDBClient(credentials);
        client.setRegion(region);
        DynamoDB dynamoDB = new DynamoDB(client);


        Table table = dynamoDB.getTable("offline-archive.201604");
        Index index = table.getIndex("topic-ts-index");


        RangeKeyCondition rangeKeyCondition = new RangeKeyCondition("ts").between(1460531204769L, 1460531214769L);
        QuerySpec spec = new QuerySpec().withHashKey("topic", "aws_topic_1_test").withRangeKeyCondition(rangeKeyCon
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值