我对Data Mountaineer编写的Cassandra连接器有几个问题。我们非常感谢任何帮助,因为我们正试图找出扩展我们架构的最佳方法。
我们是否必须为要更新的每个Cassandra表创建一个Connector配置?例如,假设我有1000张桌子。每个表都专用于不同类型的小部件。每个小部件都具有相似的特征,但数据略有不同。我们需要为每个表创建一个连接器吗?如果是这样,这是如何管理的以及如何扩展?
在Cassandra,我们经常需要根据业务需求对列族进行建模。我们可能有3个表代表用户信息。 1个用户名,1个电子邮件,1个姓氏。我们需要3个连接器配置并部署3个独立的Sink任务来将数据推送到每个表吗?
答案 0 :(得分:1)
我认为两个问题都相似,接收器可以处理多个主题吗?
接收器可以在一个接收器中处理多个表,因此只需一个配置。这是在kcql语句connect.cassandra.export.route.query=INSERT INTO orders SELECT * FROM orders-topic;INSERT INTO positions SELECT * FROM positions
中设置的,但是目前它们需要位于相同的Cassandra键空间中。这会将事务从交易主题路由到名为交易的Cassandra表和来自头寸的事件。您还可以选择特定列并重命名,例如选择columnA作为columnB。
您可能需要多个接收器实例来分离关注点,即将一组主题的写入与其他不相关的主题隔离开来。
您可以根据允许连接器运行的任务数进行扩展,每个任务都会为所有目标表启动一个Writer。
我们拥有自己的支持渠道,可以进行更直接的沟通。 https://datamountaineer.com/contact/