【问题标题】:Kafka to Snowflake connection issue卡夫卡到雪花连接问题
【发布时间】:2020-12-18 15:34:07
【问题描述】:

我正在尝试从本地独立的 Confluent Kafka 主题连接到 Snowflake 表。我通过ksqldb 使用以下连接器配置。

CREATE SINK CONNECTOR `snowflake_sink` WITH(
"name"='snowflake_sink',
"tasks.max"='1',
"connector.class"='com.snowflake.kafka.connector.SnowflakeSinkConnector',
"topics"='USERPROFILE',
"snowflake.url.name"='https://mybu.mycompany.us-east-1.aws.privatelink.snowflakecomputing.com',
"snowflake.user.name”=‘myuser’,
"snowflake.database.name"='DEMO_DB',
"snowflake.topic2table.map"='USERPROFILE:UK_SF_DB1_Table1',
"snowflake.schema.name"='PUBLIC',
"snowflake.private.key”=‘<valid private key>’,
"snowflake.private.key.passphrase”=‘<valid pass phrase>’,
"key.converter"='org.apache.kafka.connect.storage.StringConverter',
"value.converter"='com.snowflake.kafka.connector.records.SnowflakeJsonConverter',
"key.converter.schema.registry.url"='http://schema-registry:8081',
"value.converter.schema.registry.url"='http://schema-registry:8081');

Ksqldb 抛出错误,说雪花 url、用户名、私钥无效。它们都是有效的,因为我可以通过 Snowflake web ui 使用相同的登录方式。

【问题讨论】:

标签: apache-kafka snowflake-cloud-data-platform ksqldb


【解决方案1】:

解决此问题的一些想法:

  1. 您的配置中似乎有一些“智能引号”,请删除智能单引号和双引号并将它们替换为正确的文本引号。这可能是在您准备此问题时发生的,因此请仔细检查它们。

  2. 将您的表名设置为全部大写。

  3. 您的雪花帐户不应包含 https:// 前缀。这些链接中的示例:

https://community.snowflake.com/s/article/Docker-Compose-Setting-up-Kafka-using-Snowflake-Sink-Connector-and-testing-Streams

https://docs.snowflake.com/en/user-guide/kafka-connector-install.html

我希望这会有所帮助...丰富

附言如果这个(或另一个)答案对您有帮助,请花点时间“接受”有帮助的答案,方法是单击答案旁边的复选标记,将其从“灰色”切换为“已填写”。

【讨论】:

  • 你能帮我纠正一下网址吗 -> mycompany.us-east-1.aws.privatelink.snowflakecomputing.com 还是需要网址中的私人链接?
  • 应该是网页界面的URL,不带https://
  • 如果您仍然不确定,您可以登录到 webUI,运行以下命令(记录在此链接中)并使用返回记录中的 SNOWFLAKE_DEPLOYMENT 条目。选择系统$whitelist_privatelink(); docs.snowflake.com/en/sql-reference/functions/…
  • 我正在使用 Web 界面的 url,就像我在问题中提到的那样,我被你说我们必须删除前缀感到困惑。如果您查看我有问题的网址,我在没有 https 的情况下尝试过它是行不通的。
  • 我们在文档中的示例如下所示:xy12345.us-west-2.privatelink.snowflakecomputing.com 或 myaccount.us-west-2.snowflakecomputing.com:443(无私有链接,但有 443 用于端口)。注意没有.aws。在网址中,就像你一样。要检查的另一件事,可能是您的密钥或密码有问题,以检查我是否建议您登录到 webUI 并查询 information_schema.login_history 以查看是否为您提供了失败的尝试。 docs.snowflake.com/en/sql-reference/functions/…
【解决方案2】:

您应该删除智能引号并使用普通引号,例如 'snowflake.url.name'='my.domain.com:443',

【讨论】:

    猜你喜欢
    • 2020-02-12
    • 2020-06-20
    • 2022-01-05
    • 2020-11-18
    • 2018-01-18
    • 2020-04-07
    • 2021-07-03
    • 2021-11-06
    相关资源
    最近更新 更多