在这个大数据时代,世界各地的组织都在不断寻找创新方法,从庞大的数据集中提取价值和见解。 Apache Spark 提供有效处理大量数据所需的可扩展性和速度。
亚马逊电子病历 是业界领先的云大数据解决方案,使用 Apache Spark 等开源框架,用于 PB 级数据处理、交互式分析和机器学习 (ML), 阿帕奇蜂巢及 急板。 Amazon EMR 是运行 Apache Spark 的最佳场所。您可以快速轻松地从以下位置创建托管 Spark 集群: AWS管理控制台, AWS命令行界面 (AWS CLI) 或 Amazon EMR API。您还可以使用其他 Amazon EMR 功能,包括快速 亚马逊简单存储服务 (Amazon S3) 使用 Amazon EMR 文件系统 (EMRFS) 连接,与 亚马逊 EC2 现货 市场和 AWS胶水 数据目录和 EMR Managed Scaling 用于在集群中添加或删除实例。 亚马逊EMR Studio 是一个集成开发环境 (IDE),使数据科学家和数据工程师能够轻松开发、可视化和调试用 R、Python、Scala 和 PySpark 编写的数据工程和数据科学应用程序。 EMR Studio 提供完全托管的 Jupyter Notebook 以及 Spark UI 和 YARN Timeline Service 等工具来简化调试。
为了释放数据宝库中隐藏的潜力,必须超越传统分析。生成式人工智能 (generative AI) 是一种尖端技术,将机器学习与创造力相结合,生成类似人类的文本、艺术甚至代码。 亚马逊基岩 是使用基础模型 (FM) 构建和扩展生成式 AI 应用程序的最直接方法。 Amazon Bedrock 是一项完全托管的服务,可通过 API 提供来自 Amazon 和领先 AI 公司的 FM,因此您可以在 Playground 中快速试验各种 FM,并使用单个 API 进行推理,无论您选择哪种模型,您可以灵活地使用来自不同提供商的 FM,并以最少的代码更改保持最新的模型版本。
在这篇文章中,我们将探讨如何使用 Amazon EMR、Amazon Bedrock 和 pyspark-ai 图书馆。 pyspark-ai 库是 Apache Spark 的英文版 SDK。它接受英语指令并将其编译成 PySpark 对象,例如 DataFrame。这使得 Spark 的使用变得更加简单,让您能够专注于从数据中提取价值。
解决方案概述
下图说明了将生成式 AI 与 Amazon EMR 和 Amazon Bedrock 结合使用的架构。
EMR Studio 是一个基于 Web 的 IDE,适用于在 EMR 集群上运行的完全托管的 Jupyter 笔记本。我们与连接到正在运行的 EMR 集群的 EMR Studio 工作区进行交互,并运行作为本文一部分提供的笔记本。我们使用 纽约市出租车 数据来深入了解用户乘坐的各种出租车。我们根据 Spark DataFrame 中加载的数据以自然语言提出问题。然后,pyspark-ai 库使用 Amazon Bedrock 中的 Amazon Titan Text FM 基于自然语言问题创建 SQL 查询。 pyspark-ai 库接受 SQL 查询,使用 Spark SQL 运行它,并将结果提供给用户。
在此解决方案中,您可以使用以下命令在您的 AWS 账户中创建和配置所需的资源: AWS CloudFormation 模板。该模板创建了 AWS胶水 数据库和表、S3 存储桶、VPC 等 AWS身份和访问管理 解决方案中使用的 (IAM) 资源。
该模板旨在演示如何将 EMR Studio 与 pyspark-ai 包和 Amazon Bedrock 结合使用,不适合在未经修改的情况下用于生产用途。此外,该模板使用 us-east-1
区域,未经修改可能无法在其他区域工作。该模板创建的资源在使用时会产生成本。按照本文末尾的清理步骤删除资源并避免不必要的费用。
先决条件
在启动 CloudFormation 堆栈之前,请确保您具备以下条件:
- 提供对 AWS 服务的访问的 AWS 账户
- 具有用于配置 AWS CLI 的访问密钥和密钥的 IAM 用户,以及在 AWS CloudFormation 中创建 IAM 角色、IAM 策略和堆栈的权限
- Titan Text G1 – Express 模型目前处于预览阶段,因此您需要具有预览访问权限才能将其用作本文的一部分
使用 AWS CloudFormation 创建资源
CloudFormation 创建以下 AWS 资源:
- 具有私有和公有子网的 VPC 堆栈,可与 EMR Studio、路由表和 NAT 网关结合使用。
- 安装了 Python 3.9 的 EMR 集群。我们使用引导操作来安装 Python 3.9 和其他相关包,例如 pyspark-ai 和 Amazon Bedrock 依赖项。 (有关更多信息,请参阅 引导脚本.)
- 用于 EMR Studio 工作区和笔记本存储的 S3 存储桶。
- 用于 EMR Studio 设置、Amazon Bedrock 访问和运行笔记本的 IAM 角色和策略
首先,请完成以下步骤:
CloudFormation 堆栈大约需要 20-30 分钟才能完成。您可以在 AWS CloudFormation 控制台上监控其进度。当其状态显示为 CREATE_COMPLETE
,您的 AWS 账户将拥有实施此解决方案所需的资源。
创建EMR工作室
现在,您可以创建 EMR Studio 和工作区来使用笔记本代码。完成以下步骤:
- 在 EMR Studio 控制台上,选择 创建工作室。
- 输入 工作室名称 as
GenAI-EMR-Studio
并提供描述。 - 在 网络和安全 部分,指定以下内容:
- 针对 VPC,选择您创建的 VPC 作为您部署的 CloudFormation 堆栈的一部分。使用 VPCID 密钥的 CloudFormation 输出获取 VPC ID。
- 针对 子网路,选择所有四个子网。
- 针对 安全与访问, 选择 自定义安全组.
- 针对 集群/端点安全组,选择
EMRSparkAI-Cluster-Endpoint-SG
. - 针对 工作区安全组,选择
EMRSparkAI-Workspace-SG
.
- 在 工作室服务角色 部分,指定以下内容:
- 针对 认证, 选择 AWS身份和访问管理(IAM).
- 针对 AWS IAM 服务角色,选择
EMRSparkAI-StudioServiceRole
.
- 在 工作区存储 部分,浏览并选择用于存储的 S3 存储桶,开头为
emr-sparkai-<account-id>
. - 创建工作室.
- 创建 EMR Studio 后,选择下面的链接 工作室访问网址 访问工作室。
- 当您在 Studio 中时,选择 创建工作区.
- 地址
emr-genai
作为工作区的名称并选择 创建工作区. - 创建工作区后,选择其名称以启动工作区(确保您已禁用任何弹出窗口阻止程序)。
使用 Apache Spark 与 Amazon EMR 和生成式 AI 进行大数据分析
现在我们已经完成了所需的设置,我们可以开始使用 Apache Spark 与 Amazon EMR 和生成式 AI 来执行大数据分析。
第一步,我们加载一个笔记本,其中包含处理用例所需的代码和示例。我们使用纽约出租车数据集,其中包含有关出租车乘坐的详细信息。
- 下载笔记本文件 NYTaxi.ipynb 并通过选择上传图标将其上传到您的工作区。
- 笔记本导入后,打开笔记本并选择
PySpark
作为内核。
PySpark 人工智能 默认情况下使用 OpenAI 的 ChatGPT4.0 作为 LLM 模型,但您也可以插入来自 Amazon Bedrock 的模型, 亚马逊SageMaker JumpStart,以及其他第三方模型。在本文中,我们将展示如何集成 Amazon Bedrock Titan 模型来生成 SQL 查询,并在 Amazon EMR 中与 Apache Spark 一起运行它。
- 要开始使用笔记本,您需要将工作区关联到计算层。为此,请选择 计算 导航窗格中的 图标,然后选择由 CloudFormation 堆栈创建的 EMR 集群。
- 配置 Python 参数以将更新后的 Python 3.9 包与 Amazon EMR 结合使用:
- 导入必要的库:
- 导入库后,您可以从 Amazon Bedrock 定义 LLM 模型。在本例中,我们使用 amazon.titan-text-express-v1。您需要根据 Titan Text G1 – Express 模型的预览访问权限输入区域和 Amazon Bedrock 终端节点 URL。
- 将 Spark AI 连接到 Amazon Bedrock LLM 模型,以便根据自然语言的问题生成 SQL 查询:
在这里,我们用 verbose=False 初始化了 Spark AI;您还可以设置 verbose=True 以查看更多详细信息。
现在,您可以在 Spark DataFrame 中读取 NYC Taxi 数据,并使用 Spark 中生成式 AI 的强大功能。
- 例如,您可以询问数据集中的记录数:
我们得到以下回应:
Spark AI内部使用 浪链 SQL 链,它向最终用户隐藏了在 Spark 中使用查询的复杂性。
该笔记本还提供了一些示例场景,用于探索使用 Apache Spark 和 Amazon EMR 生成 AI 的强大功能。
清理
清空S3存储桶的内容 emr-sparkai-<account-id>
,删除作为本文一部分创建的 EMR Studio 工作区,然后删除您部署的 CloudFormation 堆栈。
结论
本文展示了如何借助 Apache Spark 以及 Amazon EMR 和 Amazon Bedrock 增强您的大数据分析能力。 PySpark AI 包允许您从数据中获得有意义的见解。它有助于减少开发和分析时间,减少编写手动查询的时间,并让您能够专注于业务用例。
作者简介
索拉布·布提亚尼 是 AWS 的首席分析专家解决方案架构师。他对新技术充满热情。他于 2019 年加入 AWS,与客户合作,使用 Amazon Bedrock、Amazon SageMaker、Amazon EMR、Amazon Athena、AWS Glue、AWS Lake Formation、和亚马逊数据区。
苛刻的瓦尔丹 是 AWS 高级解决方案架构师,专门从事分析。他在大数据和数据科学领域拥有超过 8 年的工作经验。他热衷于帮助客户采用最佳实践并从数据中发现见解。
- SEO 支持的内容和 PR 分发。 今天得到放大。
- PlatoData.Network 垂直生成人工智能。 赋予自己力量。 访问这里。
- 柏拉图爱流。 Web3 智能。 知识放大。 访问这里。
- 柏拉图ESG。 碳, 清洁科技, 能源, 环境, 太阳能, 废物管理。 访问这里。
- 柏拉图健康。 生物技术和临床试验情报。 访问这里。
- Sumber: https://aws.amazon.com/blogs/big-data/use-generative-ai-with-amazon-emr-amazon-bedrock-and-english-sdk-for-apache-spark-to-unlock-insights/
- :具有
- :是
- :不是
- $UP
- 1
- 10
- 100
- 107
- 11
- 20
- 200
- 2019
- 320
- 500
- 521
- 7
- 8
- 9
- 990
- a
- 关于
- ACCESS
- 访问管理
- 账号管理
- 承认
- 操作
- 加
- 额外
- 另外
- 采用
- AI
- 人工智能用例
- 所有类型
- 允许
- 允许
- 还
- Amazon
- 亚马逊雅典娜
- 亚马逊电子病历
- 亚马逊SageMaker
- 亚马逊网络服务
- 量
- an
- 分析
- 分析
- 和
- 回答
- 任何
- 阿帕奇
- Apache Spark
- API
- 应用领域
- 约
- 建筑的
- 架构
- 保健
- 艺术
- AS
- 问
- 律师
- At
- 可使用
- 避免
- AWS
- AWS CloudFormation
- AWS胶水
- AWS湖形成
- 背部
- 基于
- 最佳
- 最佳实践
- 超越
- 大
- 大数据运用
- 引导
- 建立
- 商业
- 但是
- 按键
- by
- CAN
- 案件
- 例
- 检索目录
- 链
- 更改
- 收费
- 选择
- 城市
- 云端技术
- 云大数据
- 簇
- 码
- 结合
- 公司
- 完成
- 完成
- 复杂
- 计算
- 已联繫
- 连接方式
- 安慰
- 经常
- 包含
- Contents
- 成本
- 创建信息图
- 创建
- 创建
- 创造力
- 目前
- 合作伙伴
- 前沿
- data
- 数据分析
- 数据处理
- 数据科学
- 数据库
- 数据集
- 日期
- 默认
- 定义
- 演示
- 依赖
- 部署
- 漂移
- 描述
- 设计
- 详情
- 开发
- 研发支持
- 不同
- 禁用
- 通过各种方式找到
- do
- 有效
- 费力
- 结束
- 端点
- 工程师
- 工程师
- 英语
- 确保
- 输入
- 进入
- 环境
- 时代
- 必要
- 醚(ETH)
- 甚至
- 例子
- 例子
- 体验
- 实验
- 探索
- 特快
- 提取
- 高效率
- 特征
- 少数
- 部分
- 文件
- 最后
- (名字)
- 高度灵活
- 专注焦点
- 遵循
- 以下
- 针对
- 训练
- 基金会
- 四
- 框架
- 止
- 充分
- g1
- 加纳
- 网关
- 生成
- 代
- 生成的
- 生成式人工智能
- 得到
- 给予
- Go
- 指导
- 有
- he
- 帮助
- 帮助
- 帮助
- 老旧房屋
- 隐藏
- 创新中心
- How To
- HTTP
- HTTPS
- i
- IAM
- ICON
- ID
- 身分
- 身份和访问管理
- 说明
- 实施
- 进口
- in
- 其他
- 包含
- 行业领先
- 信息
- 创新
- 输入
- 可行的洞见
- 安装
- 实例
- 说明
- 整合
- 集成
- 积分
- 拟
- 相互作用
- 互动
- 内部
- 成
- IT
- 它的
- 加盟
- JPG
- 保持
- 键
- 知道
- 湖泊
- 语言
- 大
- 最新
- 发射
- 层
- 领导
- 学习
- 库
- 自学资料库
- 喜欢
- Line
- 友情链接
- 加载
- 机
- 机器学习
- 使
- 制作
- 管理
- 颠覆性技术
- 手册
- 市场
- 可能..
- 有意义的
- 网格
- 最小
- 分钟
- ML
- 模型
- 模型
- 显示器
- 更多
- 最先进的
- 姓名
- 自然
- 自然语言
- 旅游导航
- 必要
- 需求
- 打印车票
- 工业网络
- 全新
- 新技术
- 笔记本
- 笔记本电脑
- 现在
- 数
- NY
- 纽约市
- 对象
- 观察
- of
- 优惠精选
- on
- 打开
- 开放源码
- or
- 组织
- 其他名称
- 输出
- 超过
- 简介
- 包
- 包
- 面包
- 参数
- 部分
- 多情
- 执行
- 权限
- 地方
- 柏拉图
- 柏拉图数据智能
- 柏拉图数据
- 操场
- 插头
- 政策
- 弹出式
- 帖子
- 潜力
- 功率
- 做法
- 预览
- 校长
- 私立
- 过程
- 处理
- 生产
- 进展
- 提供
- 提供
- 供应商
- 提供
- 国家
- 蟒蛇
- 查询
- 题
- 有疑问吗?
- 很快
- R
- 阅读
- 记录
- 减少
- 减少
- 参考
- 而不管
- 地区
- 地区
- 相应
- 去掉
- 必须
- 资源
- 响应
- 成果
- 游乐设施
- 角色
- 角色
- 路线
- 运行
- 运行
- 运行
- sagemaker
- 斯卡拉
- 可扩展性
- 可扩展性
- 鳞片
- 缩放
- 情景
- 科学
- 科学家
- SDK
- 搜索
- 秘密
- 保安
- 看到
- 选择
- 前辈
- 服务
- 特色服务
- 集
- 格局
- 显示
- 显示
- 简易
- 简化
- 单
- So
- 方案,
- 解决方案
- 来源
- 火花
- 专家
- 专业
- 速度
- SQL
- 堆
- 堆栈
- 开始
- 开始
- 开始
- Status
- 步
- 步骤
- 存储
- 简单的
- 工作室
- 子网
- 这样
- 过份给与
- 肯定
- 系统
- 表
- 拍摄
- 需要
- 技术
- 专业技术
- 模板
- 文本
- 这
- 其
- 他们
- 然后
- 他们
- 第三方
- Free Introduction
- 思想
- 通过
- 次
- 时间表
- 泰坦
- 至
- 工具
- 最佳
- 传统
- ui
- 下
- 开锁
- 更新
- 网址
- 使用
- 用例
- 用过的
- 用户
- 用户
- 使用
- 运用
- 折扣值
- 各种
- 各个
- 广阔
- 想像
- 方法..
- 方法
- we
- 卷筒纸
- Web服务
- 基于网络的
- ,尤其是
- 这
- 而
- 将
- 中
- 也完全不需要
- 工作
- 加工
- 合作
- 全世界
- 写
- 书面
- 年
- 纽约
- 您
- 您一站式解决方案
- 和风网