我试图将Cassandra作为Docker容器部署在AWS ECS上。单个节点很容易完成,但是现在我正在尝试为其创建集群。
Cassandra需要固定的ip地址,至少对于种子节点,需要将其传递到群集中的所有节点。Cassandra无法使用ELB地址,因为ELB名称解析为与Docker主机本身不同的ip。
因此,基本上我需要能够强制AWS将映像部署到特定的实例/主机/ ip。这样,我可以在运行docker映像时通过正确的配置。
我可以使用RunTask api并将其传递给PlacementConstraint来给出一个限制,以基于IP将主机限制为一个吗?PrivateIp是此接口中EC2实例的属性吗?
您还有其他好的想法可以实现这一目标吗?
谢谢!
AWS Athena 查询问题;
我的行中有一个嵌套映射,我想将其中的键转置到列。我可以明确地命名列items['label_a'],但在这种情况下,键实际上是动态的......
从这些行:
{id=1, items={label_a=foo, label_b=foo}}
{id=2, items={label_a=bar, label_c=bar}}
{id=3, items={label_b=baz, label_c=baz}}
Run Code Online (Sandbox Code Playgroud)
我想要一张像这样的桌子:
| id | label_a | label_b | label_c |
------------------------------------
| 1 | foo | foo | |
| 2 | bar | | bar |
| 3 | | baz | baz |
Run Code Online (Sandbox Code Playgroud)
这可能吗?如何在 aws athena(presto 版本 0.172)中执行此操作?
谢谢!
我有这个项目,我正在尝试根据配置连接到不同的数据库类型.我有它为Mongo和MySQL工作,并通过使用加载Beans切换@ConditionalOnProperty(name = "settings.data.source", havingValue = "mongodb")
现在我想添加Cassandra,但是一旦我将以下依赖项添加到我的pom,它就开始尝试连接到localhost上的Cassandra节点.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-cassandra</artifactId>
</dependency>
Run Code Online (Sandbox Code Playgroud)
我希望能够更好地控制何时加载Cassandra资源.
当我添加Mongo依赖项时,它不会尝试自动连接:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
Run Code Online (Sandbox Code Playgroud)
有谁熟悉这种行为?我该怎么控制呢?我并不总是需要Cassandra连接......