小编t_w*_*sop的帖子

AWS Glue Sagemaker 笔记本“没有名为 awsglue.transforms 的模块”

我已经创建了一个 Sagemaker 笔记本来开发 AWS Glue 作业,但在运行提供的示例(“使用 AWS Glue 加入、过滤和加载关系数据”)时,出现以下错误:

在此输入图像描述

Does anyone know what I've setup wrong/haven't setup to cause the import to not work?

amazon-web-services aws-glue amazon-sagemaker

5
推荐指数
1
解决办法
5374
查看次数

SQLAlchemy 和 SQL Server 日期时间字段溢出

我正在使用 SQLAlchemy 连接到 SQL Server 数据库。

我试图从 python 脚本将一个对象插入到表中,但失败了。我收到错误:

(pyodbc.DataError) ('22008', '[22008] [Microsoft][ODBC SQL Server Driver]Datetime field overflow (0) (SQLExecDirectW)')
Run Code Online (Sandbox Code Playgroud)

看起来这是由以下日期时间对象引起的:

datetime.datetime(214, 7, 21, 0, 0)
Run Code Online (Sandbox Code Playgroud)

...那是 214 年 7 月 21 日

SQL Server 表中对应的日期时间字段的类型为 datetime2。

看起来从 python/SQLAlchemy 到 SQL Server 的转换并未在年初值中添加“0”。我通过以下事实证实了这一点:我可以使用带或不带前导“0”的 INSERT 语句手动将此日期添加到 SQL Server。

有没有办法强制日期的年份部分采用正确的格式?或者这是由其他原因引起的?

更新:https://docs.sqlalchemy.org/en/latest/dialects/mssql.html我发现您可以将列的类型指定为 DATETIME2 (对于 MS SQL),并且我已经更新了对象映射因此。

所以之前是:

from base import Base
from sqlalchemy import Column, Integer, String, Numeric, DateTime

class Results(Base):
    __tablename__ = 'Result'

    dateTimeMinValue = Column(DateTime)
    dateTimeMaxValue = Column(DateTime) …
Run Code Online (Sandbox Code Playgroud)

python sql-server sqlalchemy

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

AWS Glue NameError:未定义名称“DynamicFrame”

我正在尝试使用toDFfromDF函数将数据帧转换为动态帧(https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-crawler-pyspark-extensions-dynamic-frame .html#aws-glue-api-crawler-pyspark-extensions-dynamic-frame-fromDF)按照以下代码片段:

import sys
from awsglue.transforms import *
from awsglue.utils import getResolvedOptions
from pyspark.context import SparkContext
from awsglue.context import GlueContext
from awsglue.job import Job

## @params: [JOB_NAME]
args = getResolvedOptions(sys.argv, ['JOB_NAME'])

sc = SparkContext()
glueContext = GlueContext(sc)
spark = glueContext.spark_session
job = Job(glueContext)
job.init(args['JOB_NAME'], args)
## @type: DataSource
## @args: [database = "test-3", table_name = "test", transformation_ctx = "datasource0"]
## @return: datasource0
## @inputs: []
datasource0 = glueContext.create_dynamic_frame.from_catalog(database = "test-3", table_name = "test", transformation_ctx …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services pyspark aws-glue

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