标签: amazon-dynamodb-dax

AWS超低延迟读/写数据存储:EFS与Dynamodb DAX对比ElastiCache

我的Web应用程序需要极低延迟的小数据blob(<10KB)读/写,可以存储为键值对.我正在考虑使用DynamoDB(使用DAX)和EFS以及ElastiCache.AWS声称他们都提供低延迟,但我找不到任何头2对比,而且我不清楚这三个是否甚至在同一个联盟.有人可以分享任何见解吗?

amazon-web-services amazon-elasticache amazon-dynamodb amazon-efs amazon-dynamodb-dax

7
推荐指数
1
解决办法
4294
查看次数

已超出 DAX Dynamodb 上下文截止日期

我的服务使用带有 DAX 的 AWS dynamodb,在高负载下,我的请求因此错误而失败 -

"error":"RequestCanceled: 请求上下文被取消,原因是:超出上下文截止时间

关于此错误可归因于什么的任何想法?

amazon-web-services amazon-dynamodb amazon-dynamodb-dax

7
推荐指数
0
解决办法
706
查看次数

从本地开发计算机使用 AWS DynamoDB DAX

我正在为当前使用 DynamoDB 的应用程序尝试 DAX 客户端,发现它仅在 VPC 内受支持。DAX 端点位于 172.31.xy 范围内。

这是否意味着无法从本地开发计算机测试 DAX 功能,或者是否可以将 DAX 配置为可通过 Internet 访问以某种方式进行测试?或者我是否只能通过 SSH 连接到 VPC 中的 EC2?

amazon-web-services amazon-dynamodb-dax

6
推荐指数
1
解决办法
5346
查看次数

如何正确连接AWS API网关 - > Lambda - > DAX - > DynamoDB?

我使用CloudFormation模板完成了所有工作,该模板创建了一个API网关,其中包含与Lambda函数的代理集成,后者又操作各种DynamoDB表.

最近,我开始体验DynamoDB及其读/写工作者的缺点.所以,我想,我将启用DynamoDB DAX来加快缓存速度.

我没有遇到CloudFormation模板设置来构建DAX集群的问题.

但是当我尝试从Lambda函数连接到DAX时,我会收到诸如此类的错误NoRouteException: not able to resolve address.搜索周围,事实证明,由于DAX在VPC中,Lambda函数当然无法访问.Lambda函数也必须位于VPC中.

但是如果我将Lambda函数放在VPC中,那么API Gateway就不能通过代理集成来访问Lambda函数.

那么,如何在VPC中编排API网关 - > Lambda - > DAX?

似乎循环,DAX不能轻易被公共API网关 - > Lambda模式使用.VPC要求是一个真正的杀手,它实际上意味着DAX主要仅对EC2实例有用,而不是API - > Lambda.

有任何想法吗?

amazon-dynamodb aws-lambda aws-api-gateway amazon-dynamodb-dax

6
推荐指数
1
解决办法
1015
查看次数

AWS CloudFormation 条件模板验证

我有一个模板,可以使用 DynamoDB 和 DAX 为多个区域(例如 us-east-1 和 ap-southeast-1)创建 CloudFormation。虽然适用于 us-east-1,但此模板不适用于 ap-southeast-1,因为 DAX 尚不适用于该区域。

我预计这可以使用 来完成Conditions,这样对于一个区域 (us-east-1),我将同时拥有 DynamoDB 和 DAX,而对于另一个区域 (ap-southeast-1) - 只有 DynamoDB:

Conditions: 
  isDAXAvailable: !Not [!Equals [ !Ref "AWS::Region", ap-southeast-1 ]]

Resources:
  DynamoDBTable:
    Type: AWS::DynamoDB::Table
    Properties:
    .....

  DaxCluster:
    Type: AWS::DAX::Cluster
    Condition: isDAXAvailable
    Properties:
    .....
Run Code Online (Sandbox Code Playgroud)

但不幸的是我收到一个错误:

调用 ValidateTemplate 操作时发生错误 (ValidationError):模板格式错误:无法识别的资源类型:[AWS::DAX::Cluster]

是否可以配置这样的模板,或者应该创建一个单独的模板?

amazon-web-services aws-cloudformation amazon-dynamodb-dax

5
推荐指数
1
解决办法
967
查看次数

DAX 对象缓存和查询缓存不同步;没有办法告诉查询缓存驱逐坏数据吗?

根据DynamoDB DAX文档,DAX维护两个独立的缓存:一个用于对象,一个用于查询。我想这还可以。

问题是,如果您更改一个对象,并且该对象的更改值会影响存储在查询缓存中的值,则似乎没有办法通知DAX它,这意味着查询缓存将是错误的,直到它TTL过期之前将是错误的。

这是相当有限的,而且似乎没有任何简单的方法可以解决它。

有人告诉我,我不知道我在说什么,并且有一种方法可以建议DAX逐出查询缓存值。

caching amazon-web-services amazon-dynamodb-dax

5
推荐指数
1
解决办法
4023
查看次数

DynamoDB DAX 和高可用性

您处理 DAX 维护时段的首选策略是什么?

DynamoDB 本身没有 MW,并且可用性非常高。当 DAX 被引入混合中时,如果它是客户端对 DDB 的唯一访问点,那么它就变成了 SPOF。那么,如何在 DAX 计划停机期间优雅地处理降级问题?

我的想法是不直接使用 DAX 客户端,而是引入一些抽象层,使其能够在 DAX 关闭时回退到直接 DDB 访问。这是一个好方法吗?

amazon-dynamodb-dax

5
推荐指数
1
解决办法
1211
查看次数

DAX 间歇性 无可用端点

设想:

我们有一个流式 Java 应用程序,它使用最新的 DAX 客户端实例通过 DAX 对 DynamoDB 执行读/写请求。在执行简单的集成测试和性能测试时,我们会间歇性地看到有关没有可用端点的异常。

com.amazonaws.AmazonClientException: Unable to call cluster endpoint: No endpoints available
at com.amazon.dax.client.dynamodbv2.ClusterDaxClient$ClusterReadRetryHandler.check(ClusterDaxClient.java:699)
at com.amazon.dax.client.dynamodbv2.ClusterDaxClient.invoke(ClusterDaxClient.java:649)
....    
IOException: No endpoints available
at com.amazon.dax.client.cluster.Cluster.readClient(Cluster.java:680)
at com.amazon.dax.client.dynamodbv2.ClusterDaxClient$2.getClient(ClusterDaxClient.java:138)
at com.amazon.dax.client.dynamodbv2.ClusterDaxClient.invoke(ClusterDaxClient.java:631)
... 23 more
Run Code Online (Sandbox Code Playgroud)

To clarify, intermittent meaning that some requests will be successful, then some will fail, only to have the requests once again be successful all within a single test (integration or performance). In fact, the majority of these test runs will be successful w/out …

java amazon-dynamodb amazon-dynamodb-dax

5
推荐指数
0
解决办法
503
查看次数

AWS dax 稳定性问题

我正在尝试将 DAX 引入我们的架构,但到目前为止尚未成功。通过 lambda 发生与 dax 的连接,完成的设置类似于 AWS 文档中的示例。Lambda 和 Dax 位于同一个 vpc 中,它们大部分时间都可以看到对方,并且 dax 正在返回响应。Dax 还开放了 8111 端口。

然而,运行几次回归测试后,cloudwatch 中开始出现错误。最常见的是:

  • “无法从 [daxurlhere] (10.0.1.177,10.0.1.25,10.0.2.11) 拉取:超时错误:10000 毫秒后连接超时”
  • 错误:NoRouteException:无法解析地址:[{“host”:“[daxurlhere]”,“port”:8111}]
  • 集群刷新期间错误捕获异常:DaxClientError:NoRouteException:无法解析地址:[{“host”:“[daxurlhere]”,“port”:8111}]
  • 错误无法解析 [daxurl]:错误:queryA ECONNREFUSED [daxurl]

当这些错误发生时,它们会破坏我们的一些回归测试。有趣的是,他们并不持久,而且很难跟踪问题。

任何建议将非常受欢迎!

amazon-web-services amazon-dynamodb-dax

5
推荐指数
1
解决办法
1183
查看次数

DynamoDB DAX是否可以水平扩展?

我想问的是,当我们向DynamoDB DAX群集中添加更多节点时,它将在各个节点之间分配数据,并且缓存容量将等于(节点数*节点容量),或者更多的节点用于可用性和负载分配,仅具有容量作为单节点的容量?

database caching amazon-dynamodb amazon-dynamodb-dax amazon-dax

4
推荐指数
1
解决办法
143
查看次数