小编Jas*_*man的帖子

使用Python和pyathenajdbc与Athena连接

我正在尝试使用python连接到AWS Athena.我正在尝试使用pyathenajdbc来完成此任务.我遇到的问题是获得连接.当我运行下面的代码时,我收到一条错误消息,指出它无法找到AthenaDriver.(java.lang.RuntimeException:未找到类com.amazonaws.athena.jdbc.AthenaDriver).我确实从AWS下载了这个文件,我确认它正在该目录中.

from mdpbi.rsi.config import *
from mdpbi.tools.functions import mdpLog
from pkg_resources import resource_string
import argparse
import os
import pyathenajdbc
import sys

SCRIPT_NAME = "Athena_Export"

ATHENA_JDBC_CLASSPATH = "/opt/amazon/athenajdbc/AthenaJDBC41-1.0.0.jar"
EXPORT_OUTFILE = "RSI_Export.txt"
EXPORT_OUTFILE_PATH = os.path.join(WORKINGDIR, EXPORT_OUTFILE)


def get_arg_parser():
    """This function returns the argument parser object to be used with this script"""
    parser = argparse.ArgumentParser(description=__doc__, formatter_class=argparse.RawDescriptionHelpFormatter)

    return parser


def main():
    args = get_arg_parser().parse_args(sys.argv[1:])
    logger = mdpLog(SCRIPT_NAME, LOGDIR)

    SQL = resource_string("mdpbi.rsi.athena.resources", "athena.sql")

    conn = pyathenajdbc.connect(
        s3_staging_dir="s3://athena",
        access_key=AWS_ACCESS_KEY_ID,
        secret_key=AWS_SECRET_ACCESS_KEY,
        region_name="us-east-1",
        log_path=LOGDIR,
        driver_path=ATHENA_JDBC_CLASSPATH
    )
    try: …
Run Code Online (Sandbox Code Playgroud)

python amazon-web-services amazon-athena

3
推荐指数
1
解决办法
5162
查看次数