小编Yuv*_*uva的帖子

针对AWS EMR的AWS Glue定价

我正在对AWS Glue与AWS EMR进行一些定价比较,以便在EMR和Glue之间进行选择.

我考虑了6个DPU(4个vCPU + 16 GB内存),ETL作业运行10分钟,持续30天.假设爬行器请求假定为高于免费等级100万,并且对于100万个额外请求计算为1美元.

在EMR上,我考虑了m3.xlarge的EC2和EMR(定价分别为0.266美元和0.070美元),有6个节点,运行10分钟30天.

在计算一个月时,我发现AWS Glue的价格约为14.64美元,而对于EMR,它的价格约为10.08美元.我没有考虑其他额外费用,如S3,RDS,Redshift等.&DEV Endpoint是可选的,因为我的目标是比较ETL工作价格的好处

与AWS Glue相比,EMR看起来更便宜.EMR定价是否正确,如果有任何遗漏,有人可以建议吗?我已经尝试过针对EMR的AWS价格计算器,但很困惑,并且不清楚是否将标准化小时计入其中.

问候

青年组织

amazon-web-services amazon-emr aws-glue

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

G.1X 和 G.2X 的 AWS Glue 工作人员定价详细信息

已搜索 AWS Glue 文档,但找不到 AWS Glue 工作线程类型 G.1X 和 G.2X 的定价详细信息。有人可以解释一下标准、G.1X 和 G.2X 之间是否没有成本差异吗?

我所能看到的 Glue 定价部分是“您需要按每 DPU 小时 0.44 美元计费,增量为 1 秒,四舍五入到最接近的秒。使用 Glue 版本 2.0 的 Glue Spark 作业的最短计费持续时间为 1 分钟。 ”。这与工人类型无关吗?

感谢对此的任何投入。 …

amazon-web-services aws-glue aws-glue-data-catalog aws-glue-spark

8
推荐指数
1
解决办法
2万
查看次数

AWS Glue PySpark 替换 NULL

我正在运行 AWS Glue 作业,使用 Glue 自动生成的 PySpark 脚本将 S3 上的管道分隔文件加载到 RDS Postgres 实例中。

最初,它抱怨某些列中存在 NULL 值:

pyspark.sql.utils.IllegalArgumentException: u"Can't get JDBC type for null"
Run Code Online (Sandbox Code Playgroud)

经过一番谷歌搜索和阅读后,我尝试通过将 AWS Glue 动态数据帧转换为 Spark 数据帧、执行函数fillna()并重新转换回动态数据帧来替换文件中的 NULL。

datasource0 = glueContext.create_dynamic_frame.from_catalog(database = 
"xyz_catalog", table_name = "xyz_staging_files", transformation_ctx = 
"datasource0")
custom_df = datasource0.toDF()
custom_df2 = custom_df.fillna(-1)
custom_df3 = custom_df2.fromDF()

applymapping1 = ApplyMapping.apply(frame = custom_df3, mappings = [("id", 
"string", "id", "int"),........more code
Run Code Online (Sandbox Code Playgroud)

参考:

https://github.com/awslabs/aws-glue-samples/blob/master/FAQ_and_How_to.md#3-there-are-some-transforms-that-i-cannot-figure-out

如何替换 Pyspark 中数据帧的所有 Null 值

http://spark.apache.org/docs/latest/api/python/pyspark.sql.html#pyspark.sql.DataFrame.fillna

现在,当我运行我的作业时,它会抛出以下错误:

Log Contents:
Traceback (most recent call last): …
Run Code Online (Sandbox Code Playgroud)

pyspark aws-glue

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

我们可以考虑将AWS Glue替代EMR吗?

Masters只是一个简单的问题,因为作为一种ETL工具,AWS Glue可以为公司带来好处,例如,服务器维护最少或无需维护,通过避免过度配置或资源不足而节省成本,除了运行spark之外,我在寻求澄清,如果AWS Glue可以代替EMR?

如果两者可以共存,那么EMR如何与AWS Glue一起发挥作用?

感谢和问候

尤瓦

etl amazon-web-services amazon-emr aws-glue

6
推荐指数
2
解决办法
8711
查看次数

AWS Glue Crawler - 读取 csv 的 gzip 文件

您能帮我使用 Glue 数据爬虫读取 tar.gz 文件吗?我有一个 tar.gz 文件,其中包含 S3 中不同架构的几个文件,当我尝试运行爬网程序时,我在数据目录中看不到该架构。我们应该使用自定义分类器吗?AWS Glue 常见问题解答指定使用分类器支持 gzip,但未在 Glue 分类器部分提供的分类器列表中列出。

amazon-web-services aws-glue

4
推荐指数
1
解决办法
2万
查看次数

传统数据湖与 AWS Lake Formation

我一直在为客户设置数据湖,其中我们将数据从本地或任何其他来源加载到 S3(数据湖)中。我们将根据这些原始数据创建一个 AWS Glue 目录来创建架构。

下一步是使用 EMR 或 AWS Glue 进行一些数据清理,将转换后的数据加载到 RDS / REDSHIFT / S3 作为最终目标。

可以使用数据管道、Glue 作业或 AWS Lambda 事件触发器来计划作业,具体取决于所使用的用例/服务。

将使用 IAM 服务为分析师和其他用户提供所需的数据/S3 存储桶访问权限,以进行 Quicksight 可视化或使用 Athena、Drill 等进行数据查询,或将数据用于 Sagemaker 中的 ML 应用程序。

我的问题是 AWS Lake Formation 与上述传统数据湖有何不同?

我可以定义AWS Lake Formation提供的所有上述服务(例如S3、Glue Catalog、Glue中的ETL代码生成器、作业调度程序等)都可以在单个窗口中使用吗?为用户/数据(记录/列级别)提供一些更高级的安全性,可以在 Lake Formation 控制台中进行配置。

还有什么能让湖的形成从传统的基于云的数据湖中脱颖而出吗?

谢谢

amazon-web-services aws-glue aws-lake-formation

4
推荐指数
2
解决办法
2276
查看次数

将 Python 脚本提交到 Databricks JOB

是否可以向 databricks 作业提交/配置 Spark python 脚本 (.py) 文件?

我在 Pycharm IDE 中进行开发,然后将代码推送/提交到我们的 gitlab 存储库。我的要求是当 python 脚本移动到 GitLab 主分支时,我需要在 databricks 集群中创建新作业。

如果可以使用 gitlab.yml 脚本在 python 脚本上创建 databricks 作业,我想得到一些建议?

在databricks Job UI中,我可以看到可以使用的spark jar或笔记本,但想知道我们是否可以提供一个python文件。

谢谢,

尤瓦

gitlab pyspark gitlab-api databricks azure-databricks

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

在 AWS Glue 中解压缩 zip 文件

我在 S3 存储桶中有一个压缩的 gzip 文件。客户端每天都会将文件上传到 S3 存储桶。解压缩后的 gzip 将包含 10 个 CSV 格式的文件,但仅具有相同的架构。我需要解压缩 gzip 文件,并使用 Glue->Data crawler,需要在使用 dev 运行 ETL 脚本之前创建一个模式。端点。

胶水能够解压缩 zip 文件并创建数据目录。或者我们可以直接在python ETL脚本中使用的任何可用的胶水库?或者我应该选择 Lambda/任何其他实用程序,以便在上传 zip 文件后立即运行一个实用程序来解压缩并作为输入提供给 Glue?

感谢任何答复。

amazon-web-services aws-glue

2
推荐指数
2
解决办法
9281
查看次数

AWS Glue - 空闲时间的开发终端节点价格

AWS Glue - 开发人员终端节点的空闲时间是否有任何定价费用?比如说,我配置了一个开发人员端点,并且每天运行一个作业 30 分钟。定价是仅针对每天 30 分钟的持续时间还是包括 AWS Glue - 开发人员终端节点的空闲时间。

谢谢

尤瓦

aws-glue

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

Gitlab-ci.yml 创建合并请求

我在 DEV 分支中运行了以下 gitlab-ci.yml 文件,目标也为 DEV。由于我无法将 TARGET 指向 MASTER,因此不会创建自动 MR。我想知道是否可以在 gitlab-ci 脚本本身中创建合并请求。

dev:
  stage: deploy
  script:
    - url_host=`git remote get-url origin | sed -e "s/https:\/\/gitlab-ci-token:.*@//g"`
    - git remote set-url origin "https://gitlab-ci-token:${CI_TAG_UPLOAD_TOKEN}@${url_host}"
    - databricks workspace export_dir -o /mynotebooks.
    - git add .
    - git commit -m 'Add notebooks to Repo' -a || true
    - git push origin HEAD:dev
  tags:
    - test
Run Code Online (Sandbox Code Playgroud)

我搜索并引用了我的网站,但看不到任何有关以编程方式创建合并请求的说明。

这个想法是各种开发人员正在开发一个 databrick 集群,并且 gitlab 计划定期运行。更改将被推送到 DEV 分支,并将使用合并请求推送到 MASTER 分支。

我想知道这个 MR 创建是否可以自动化。请新到 GITLAB。

谢谢。

git gitlab gitlab-ci gitlab-api

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

基于列合并两个 Spark 数据框

我有 2 个数据框,需要根据列(员工代码)合并它们。请注意,数据框大约有 75 列,因此我提供了一个示例数据集来获取一些建议/示例解决方案。我正在使用 databricks,数据集是从 S3 读取的。

以下是我的 2 个数据框:

DATAFRAME - 1

|-----------------------------------------------------------------------------------|
|EMP_CODE   |COLUMN1|COLUMN2|COLUMN3|COLUMN4|COLUMN5|COLUMN6|COLUMN7|COLUMN8|COLUMN9|
|-----------------------------------------------------------------------------------|
|A10001     |   B   |       |       |       |       |       |       |       |       |
|-----------------------------------------------------------------------------------|


DATAFRAME - 2
|-----------------------------------------------------------------------------------|
|EMP_CODE   |COLUMN1|COLUMN2|COLUMN3|COLUMN4|COLUMN5|COLUMN6|COLUMN7|COLUMN8|COLUMN9|
|-----------------------------------------------------------------------------------|
|A10001     |       |       |       |       |   C   |       |       |       |       |   
|B10001     |       |       |       |       |       |       |       |       |T2     |
|A10001     |       |       |       |       |       |       |       |   B   |       |
|A10001     |       |       |   C   |       | …
Run Code Online (Sandbox Code Playgroud)

python apache-spark pyspark databricks

0
推荐指数
1
解决办法
4万
查看次数