gpt4 book ai didi

cassandra - 在 Snaplogic Sc​​ript Snap 中使用第三方库

转载 作者:行者123 更新时间:2023-12-05 05:10:44 24 4
gpt4 key购买 nike

我正在尝试使用脚本快照创建一个 python 脚本,以向 Cassandra 集群发出批处理请求(Cassandra 脚本出于某种原因不支持批处理操作),我需要一种使用“cassandra”库的方法

我查看了文档,寻找一种方法来导入 python 库,这些库不是默认的东西,比如随机的,但我找不到这样做的方法。

我使用的具体导入行是

from cassandra.cluster import Cluster
from cassandra.auth import PlainTextAuthProvider

但这显然行不通,因为 SnapLogic 上没有安装用于 python 的 Cassandra 库。我没有能力(据我所知)在 SnapLogic 上安装库。如果相关,我得到的具体错误是:

Failure: Cannot evaluate Script file: SQL_Demo_Cassandra_Script.py, Reason: ImportError: No module named cassandra in at line number 5, Resolution: Please fix the script file error at line: 5 column: -1

最佳答案

当您在 Script 快照中选择 Python 时,它实际上意味着 Jython。因此,基本上,您可以在脚本中导入 Java 类。

因此,您需要获取 Cassandra 的驱动程序(一个 JAR 文件)并将其上传到所有 plex 节点,并确保将其保存在所有节点上的相同路径中。

然后你可以将JAR文件添加到脚本中的路径并导入需要的类。

注意:我从未在 SnapLogic 中尝试过。

请引用 StackOverflow 问题 - Importing jars from Jython


更新 #1:

看起来这是使用第三方库的推荐方式。

来自 SnapLogic 文档:

While SnapLogic does not support importing third party libraries directly using the Script Snap, you can add their package/JAR files in a directory in your Groundplex nodes and then import them using this Snap.

For example, consider that you have added the JAR file, sample.jar, in the directory /opt/snaplogic/ext_jar/. Include the following statements in the script that you are running in the Script Snap to import this library:

import sys
# more code
sys.path.append('/opt/snaplogic/ext_jar/sample.jar')
# more code

限制:

  • If you are using multiple Groundplex nodes then you must add the package/JAR files in each of those nodes.
  • You can import third party libraries only on Groundplex nodes.

引用 - SnapLogic Docs - Script Snap

关于cassandra - 在 Snaplogic Sc​​ript Snap 中使用第三方库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56399355/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com