文档首页/ 云数据库 GeminiDB/ GeminiDB兼容DynamoDB接口/ 快速入门/ 购买并连接GeminiDB兼容DynamoDB实例
更新时间:2025-07-31 GMT+08:00
分享

购买并连接GeminiDB兼容DynamoDB实例

本章节主要介绍了如何在云数据库 GeminiDB控制台购买兼容DynamoDB接口的数据库实例。

每个租户下GeminiDB兼容DynamoDB接口实例的默认总配额为50。如需申请扩大配额,您可以在管理控制台右上角,选择“工单 > 新建工单”,联系客服进行处理。

前提条件

  • 注册华为账号并开通华为云
  • 注册华为云账号后,如果需要对华为云上的资源进行精细管理,请使用统一身份认证服务(Identity and Access Management,简称IAM)创建IAM用户及用户组,并授权,以使得IAM用户获得具体的操作权限,更多操作,请参见创建用户并授权
  • 账户余额大于或等于0元。

步骤1:购买实例

具体详细的购买操作指导请参见购买实例

  1. 登录管理控制台
  2. 在服务列表中选择“数据库 > 云数据库 GeminiDB”。
  3. “实例管理”页面,单击“购买数据库实例”
  4. “服务选型”页面,选择计费模式,填写并选择实例相关信息后,单击“立即购买”
    下面的配置项仅作为示例,实际购买时根据用户需求选择合适的规格参数,具体参数详见参数详解
    图1 计费模式和基本信息

    参数

    示例

    参数说明

    计费模式

    按需计费

    实例的计费模式。

    • 包年/包月:一种预付费模式,即先付费再使用,按照订单的购买周期进行结算。购买周期越长,享受的折扣越大。一般适用于需求量长期稳定的成熟业务。
    • 按需计费:一种后付费模式,即先使用再付费,按照云数据库GeminiDB实际使用时长计费,秒级计费,按小时结算。按需计费模式允许您根据实际业务需求灵活地调整资源使用,无需提前预置资源,从而降低预置过多或不足的风险。

    区域

    华北-北京四

    租户所在的区域。

    说明:

    请就近选择靠近您业务的区域,可减少网络时延,提高访问速度。不同区域内的产品内网不互通,且购买后不能更换,请谨慎选择。

    实例名称

    自定义

    设置实例名称时,需要满足如下规则。

    • 实例名称允许和已有名称重复。
    • 实例名称长度在4个到64个字符之间,必须以字母或中文字开头,区分大小写,可以包含字母、数字、中划线、下划线或中文(一个中文字符占用3个字节),不能包含其他特殊字符。如果名称包含中文,则不超过64字节。

    兼容接口

    DynamoDB

    云数据库 GeminiDB目前兼容Redis、DynamoDB、Cassandra、HBase、InfluxDB和MongoDB主流NoSQL接口,您当前选择的是DynamoDB接口,其他接口的选择具体参见如何选择接口

    部署模式

    经典

    • 经典:GeminiDB经典的存算分离架构。
    • 云原生:新一代存算分离架构,更灵活,支持更多的可用区。
    说明:

    云原生部署模式目前处于公测中,如需使用,您可以在管理控制台右上角,选择“工单 > 新建工单”,联系客服开通。

    实例类型

    集群

    集群

    集群是基于多个节点(至少是三节点)组成。集群的主要特点是横向扩展能力强,能满足不断增长的数据量需求,因此当您对可用性要求较高、数据量较大、未来扩展性要求较高的情况下,可以使用集群架构。

    可用区

    可用区1,可用区2,可用区3

    指在同一区域下,电力、网络隔离的物理区域,可用区之间内网互通,不同可用区之间物理隔离。

    目前支持将实例部署在单可用区或3可用区。

    • 若实例只需要部署在单可用区,请选择1个可用区。
    • 若实例需要实现跨可用区容灾部署时,请选择3可用区,此时实例下的节点Hash均衡部署在3个可用区内。
    图2 规格与存储

    参数

    示例

    参数说明

    性能规格

    2U8GB

    请根据不同的CPU与内存配比,选取符合业务类型的性能规格。

    创建成功后可以变更规格,请参见变更实例的CPU和内存规格

    节点数量

    3

    节点数量请根据实际需要进行选取。

    目前节点数上限为60个,如需更多,您可以在管理控制台右上角,选择“工单 > 新建工单”联系客服进行咨询。

    创建成功后可以添加节点,请参见手动扩容实例节点

    存储空间

    500GB

    存储空间的取值范围(最大值和最小值)与所选的实例规格有关,具体范围请参见数据库实例规格

    创建成功后可以扩容磁盘,请参见手动扩容实例磁盘

    自动扩容

    不开启自动扩容。

    如果您在创建实例时未开启存储空间自动扩容,待实例创建成功后也可以单独开启。具体操作请参见自动扩容实例磁盘

    磁盘加密

    不加密

    不开启加密功能。

    当启用加密功能,用户创建数据库实例成功后,磁盘数据会在服务端加密成密文后存储。用户下载加密对象时,存储的密文会先在服务端解密为明文,再提供给用户,用于提高数据安全性,但对数据库读写性能有少量影响。

    图3 网络配置
    图4 数据库配置

    参数

    示例

    参数说明

    虚拟私有云

    default_vpc

    实例所在的虚拟专用网络,可以对不同业务进行网络隔离。您可根据需要创建或选择所需的虚拟私有云。

    说明:
    • 目前GeminiDB兼容DynamoDB接口实例创建完成后不支持切换虚拟私有云VPC,请谨慎选择所属虚拟私有云。
    • 如需与ECS进行内网通信,GeminiDB兼容DynamoDB接口实例与需要通信的ECS需要处于同一个虚拟私有云下,或者不同虚拟私有云之间配置对等连接

    子网

    default_subnet

    通过子网提供与其他网络隔离的、可以独享的网络资源,以提高网络安全性。

    内网安全组

    default

    安全组限制安全访问规则,加强GeminiDB兼容DynamoDB接口与其他服务间的安全访问。请确保所选取的安全组允许客户端访问数据库实例。

    管理员密码

    根据密码策略配置

    用户设置的密码。

    • 长度为8~32个字符。
    • 必须是大写字母、小写字母、数字、特殊字符的组合,其中可输入~!@#%^*-_=+?特殊字符。
    • 系统会进行弱密码校验,安全起见,请输入高强度密码。

    请妥善管理您的密码,因为系统将无法获取您的密码信息。

    企业项目

    default

    该参数针对企业用户使用。

    企业项目是一种云资源管理方式,企业项目管理服务提供统一的云资源按项目管理,以及项目内的资源管理、成员管理,默认项目为default。

    请在下拉框中选择所在的企业项目。更多关于企业项目的信息,请参见《企业管理用户指南》

    其他参数选择默认配置。

  5. 在“订单详情确认”页面,核对实例信息。如果需要修改,单击“上一步”,修改实例信息。
  6. 核对无误后,勾选协议,单击“提交”,开始创建实例。
  7. 单击“返回实例列表”按钮,返回实例列表页。
  8. “实例管理”页面,您可以查看并管理实例。
    • 实例创建过程中,运行状态显示为“创建中”,此过程约5~9分钟。
    • 实例创建完成后,运行状态显示为“正常”
    图5 购买成功

步骤2:通过Java连接实例

本章节主要介绍使用Java语言连接GeminiDB兼容DynamoDB接口实例的基本操作。

前提条件

  • 已成功创建GeminiDB兼容DynamoDB接口实例。
  • 已创建弹性云服务器,创建弹性云服务器的方法,请参见《弹性云服务器快速入门》中“创建弹性云服务器”章节。
  • 弹性云服务器上已经安装JDK环境。

查看GeminiDB兼容DynamoDB接口实例IP地址

  1. 登录管理控制台
  2. 在服务列表中选择“数据库 > 云数据库 GeminiDB”。
  3. “实例管理”页面,单击目标实例名称,进入基本信息页面。

    GeminiDB兼容DynamoDB接口实例端口为8000。

    方法一:

    “基本信息”页面下方节点信息列表中,即可查看到GeminiDB兼容DynamoDB接口实例下各个节点的内网IP地址或绑定的弹性公网IP。

    图6 查看IP地址

    方法二:

    您也可以单击实例“基本信息”左侧导航中的“连接管理”,即可查看到GeminiDB兼容DynamoDB接口实例的内网IP地址、绑定的弹性公网IP地址。

    图7 查看IP

使用负载均衡插件连接实例

  1. 依赖的Jar包和插件代码,您可以在管理控制台右上角,选择“工单 > 新建工单”,联系客服提供。
  2. 将下面代码示例中的IP替换为3查到的IP。

    Java样例如下:

    package com.huawei.dbs.test;  
    
    import com.huawei.dbs.RequestHandler;  
    
    import com.amazonaws.SDKGlobalConfiguration;  
    import com.amazonaws.auth.AWSCredentialsProvider;  
    import com.amazonaws.auth.AWSStaticCredentialsProvider;  
    import com.amazonaws.auth.BasicAWSCredentials;  
    import com.amazonaws.services.dynamodbv2.AmazonDynamoDB;  
    import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClientBuilder;  
    import com.amazonaws.services.dynamodbv2.document.DynamoDB;  
    import com.amazonaws.services.dynamodbv2.document.TableCollection;  
    
    import java.net.URI;  
      
    
    public class V1Demo {  
        public static AWSCredentialsProvider myCredentials = new AWSStaticCredentialsProvider(  
            new BasicAWSCredentials("your_ak", "your_sk"));  
        public static String ip = "***.***.***.***";  
        public static void main(String[] args) {  
            disableCertificateChecks();  
            AmazonDynamoDB client = AmazonDynamoDBClientBuilder.standard()  
                .withRegion("region-a")  
                .withRequestHandlers(new RequestHandler(URI.create("http://" + ip + "8000")))  
                .withCredentials(myCredentials)  
                .build();  
            DynamoDB dynamoDB = new DynamoDB(client);  
            TableCollection res = dynamoDB.listTables();  
            System.out.println(res);  
        }  
      
    }

使用HTTPS方式连接实例

前提条件

  • 目标实例必须与弹性云服务器在同一个虚拟私有云和子网内才能访问。
  • 弹性云服务器必须处于目标实例所属安全组允许访问的范围内,详情请参见配置节点安全组规则
  • GeminiDB实例开启SSL的功能,详情参见开启SSL,并下载证书。以Java应用为例,导入证书命令为:
    keytool -importcert -alias hw -file ca.cert -keystore truststore.jks -storepass password

1. 出于业界兼容考虑,开启SSL后仍然可以使用HTTP的方式访问。在高安全性要求的场景下,客户可以通过修改配置项关闭HTTP方式访问,详情您可以在管理控制台右上角,选择“工单 > 新建工单”联系客服进行咨询。

2. HTTPS暂不支持弹性IP访问。

操作步骤

  1. 添加 Maven 依赖。在 pom.xml 中添加 AWS SDK for Java 2.x 相关的依赖。

    <dependencies>
         <dependency>
             <groupId>software.amazon.awssdk</groupId>
             <artifactId>dynamodb</artifactId>
             <version>2.x.x</version>
         </dependency>
     </dependencies>

  2. 通过 DynamoDbClient 使用 HTTPS 连接GeminiDB兼容DynamoDB接口。

    Java样例如下:
    import com.amazonaws.auth.AWSCredentialsProvider;
    import com.amazonaws.auth.AWSStaticCredentialsProvider;
    import com.amazonaws.auth.BasicAWSCredentials;
    import com.amazonaws.client.builder.AwsClientBuilder;
    import com.amazonaws.services.dynamodbv2.AmazonDynamoDB;
    import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClientBuilder;
    import com.amazonaws.services.dynamodbv2.model.*;
    public class SourceDemo {
        // AK/SK凭证可以自动从环境变量home/.aws/credentials 文件获取
        // 若 home/.aws/credentials 不存在,则需要手动指定AK/SK凭证;若 home/.aws/credentials 存在,则无需指定AK/SK凭证
        public static AWSCredentialsProvider myCredentials = new AWSStaticCredentialsProvider(
                new BasicAWSCredentials("your_ak", "your_sk"));
        public static void main(String[] args) {
            AmazonDynamoDB client = AmazonDynamoDBClientBuilder.standard()
                    .withEndpointConfiguration(new AwsClientBuilder.EndpointConfiguration("https://127.0.0.1:8000", "region_a"))
                    .withCredentials(myCredentials)
                    .build();
            System.out.println(client.listTables());
            CreateTableRequest request = new CreateTableRequest()
                    .withTableName("test_001")
                    .withProvisionedThroughput(new ProvisionedThroughput(1000L, 1000L))
                    .withKeySchema(
                            new KeySchemaElement("id", KeyType.HASH)
                    )
                    .withAttributeDefinitions(
                            new AttributeDefinition("id", ScalarAttributeType.N)
                    );
            System.out.println(client.createTable(request));
        }
    }

由于GeminiDB兼容DynamoDB接口完全兼容DynamoDB接口,故最常用的操作请参考DynamoDB官方文档。

常见问题

问题:在实例列表的操作列单击“登录”时或者在“基本信息”页面单击“登录数据库”时,无法跳转至DAS页面怎么办?

解决方法:请将您的浏览器设置为允许弹出窗口,然后重试。

相关文档