在先前的 发表,我们讨论了使用 Amazon AI 服务和 Veeva Vault 平台的 API 分析和标记 Veeva Vault PromoMats 中存储的资产。 在这篇文章中,我们将探讨如何使用 亚马逊AppFlow,一种完全托管的集成服务,使您能够安全地将数据从 Veeva Vault 等软件即服务 (SaaS) 应用程序传输到 AWS。 这 Amazon AppFlow Veeva 连接器 允许您快速、可靠且经济高效地将 AWS 环境连接到 Veeva 生态系统,以便大规模分析存储在 Veeva Vault 中的丰富内容。
Amazon AppFlow Veeva 连接器是第一个支持自动传输的 Amazon AppFlow 连接器 Veeva 文件. 它允许您在最新版本( 稳定状态 Veeva 条款中的版本)和所有版本的文件。 此外,您可以导入文档元数据。
只需单击几下,您就可以轻松设置托管连接并选择要导入的 Veeva Vault 文档和元数据。 您可以通过将源字段映射到目标字段来进一步调整导入行为。 您还可以根据文档类型和子类型、分类、产品、国家/地区、站点等添加过滤器。 最后,您可以添加验证并管理按需和计划的流触发器。
您可以将 Amazon AppFlow Veeva 连接器用于各种使用案例,从 Veeva Vault PromoMats 到其他 Veeva Vault 解决方案,例如 QualityDocs、eTMF 或法规信息管理 (RIM)。 以下是您可以使用连接器的一些用例:
- 数据同步 – 随着时间的推移,您可以使用连接器在源 Veeva Vault 和任何下游系统的数据之间建立一致性和协调性。 例如,您可以将 Veeva PromoMats 营销资产共享给 Salesforce。 您还可以使用连接器将标准操作程序 (SOP) 或规范等 Veeva QualityDocs 共享到缓存网站,这些网站可从制造车间的平板电脑中搜索。
- 异常检测 – 您可以将 Veeva PromoMats 文件分享到 亚马逊监视指标 用于异常检测。 您还可以在艺术品、商业标签、模板或患者传单中使用带有 Vault RIM 的连接器,然后再将它们导入 Loftware 等企业标签解决方案进行打印。
- 数据湖水化 – 连接器可以成为将结构化或非结构化数据复制到数据湖中的有效工具,以支持数据湖的创建和水合。 例如,您可以使用连接器从存储在 Vault RIM 中的协议中提取标准化研究信息,并将其公开给下游的医学分析洞察团队。
- 中英口译 笔译 – 该连接器可用于向包装、临床试验或监管提交等部门发送艺术品、临床文件、营销材料或研究协议以翻译成母语。
这篇文章重点介绍如何使用 亚马逊AI服务 结合 Amazon AppFlow 分析存储在 Veeva Vault PromoMats 中的内容,自动提取标签信息,并最终将这些信息反馈回 Veeva Vault 系统。 这篇文章讨论了整体架构、部署解决方案和仪表板的步骤,以及资产元数据标记的用例。 有关此用例的概念验证代码库的更多信息,请参阅 GitHub存储库.
解决方案概述
下图说明了更新的解决方案架构。
以前,为了从 Veeva Vault 导入资产,您必须使用 Veeva Vault API 轮询更改并将数据导入 亚马逊简单存储服务 (亚马逊 S3)。 这可能是一个手动的、耗时的过程,在这个过程中,您必须考虑 API 限制、失败和重试,以及可扩展性以适应无限量的资产。 更新后的解决方案使用 Amazon AppFlow 来抽象出维护自定义 Veeva 到 Amazon S3 数据导入管道的复杂性。
如简介中所述,Amazon AppFlow 是一种易于使用的无代码自助服务工具,它使用点击式配置在各种 SaaS 应用程序和 AWS 服务之间轻松安全地移动数据。 AppFlow 允许您从支持的源中提取数据(对象和文档)并将该数据写入各种支持的目标。 源或目标可以是 SaaS 应用程序或 AWS 服务,例如 Amazon S3, 亚马逊Redshift,或 Lookout for Metrics。 除了无代码接口,Amazon AppFlow 还支持通过 API、AWS CLI 和 AWS CloudFormation 接口。
Amazon AppFlow 中的流描述了如何移动数据,包括源详细信息、目标详细信息、流触发条件(按需、事件或计划)以及数据处理任务,例如检查点、字段验证或屏蔽。 触发后,Amazon AppFlow 会运行一个流来获取源数据(通常通过源应用程序的公共 API)、运行数据处理任务并将处理后的数据传输到目标。
在此示例中,您使用 CloudFormation 模板部署预配置的流。 以下屏幕截图显示了预配置的 veeva-aws-connector
由 Amazon AppFlow 控制台上的解决方案模板自动创建的流程。
该流程使用 Veeva 作为源并配置为导入 Veeva Vault 组件对象。 为了跟踪已处理的资产并将标签推回源系统中正确的相应资产上,元数据和源文件都是必需的。 在这种情况下,只会导入最新版本,并且不包括演绎版。
流的目的地也需要配置。 在以下屏幕截图中,我们为作为 CloudFormation 模板的一部分创建的 S3 存储桶定义了文件格式和文件夹结构。
最后,出于演示目的,按需触发流程。 这可以修改,以便流按计划运行,最大粒度为 1 分钟。 当按计划触发时,传输模式会自动从完全传输更改为增量传输模式。 您指定一个源时间戳字段来跟踪更改。 对于标记用例,我们发现 最后修改日期 设置是最合适的。
然后将 Amazon AppFlow 与 亚马逊EventBridge 在流程运行完成时发布事件。
为了更好的弹性, AVAIAppFlowListener
AWS Lambda 函数连接到 EventBridge。 当触发 Amazon AppFlow 事件时,它会验证特定流程运行是否已成功完成,从该特定流程运行中读取所有导入资产的元数据信息,并将单个文档元数据推送到 Amazon Simple Queue服务 (Amazon SQS) 队列。 使用 Amazon SQS 可在架构的生产者和处理器部分之间提供松散耦合,还允许您将更改部署到处理器部分,而无需停止传入的更新。
第二个轮询功能(AVAIQueuePoller
) 以频繁的时间间隔(每分钟)读取 SQS 队列并处理传入的资产。 为了使 Lambda 函数的反应时间更短,您可以通过将 Amazon SQS 配置为函数的触发器来替换 CloudWatch 规则。
根据传入的消息类型,该解决方案使用各种 AWS AI 服务从您的数据中获取见解。 一些例子包括:
- 文本文件 –该功能使用 检测实体 操作 亚马逊领悟医疗,一种自然语言处理 (NLP) 服务,可以轻松使用 ML 从非结构化文本中提取相关医学信息。 此操作检测类别中的实体,例如
Anatomy
,Medical_Condition
,Medication
,Protected_Health_Information
及Test_Treatment_Procedure
。 产生的输出经过过滤Protected_Health_Information
,剩下的信息以及置信度得分将被展平并插入到 Amazon DynamoDB 桌子。 此信息绘制在 OpenSearch Kibana 集群上。 在实际应用中,您还可以使用 Amazon Comprehend Medical ICD-10-CM或RxNorm 该功能可将检测到的信息链接到医学本体,以便下游医疗保健应用程序可以将其用于进一步的分析。 - 图片 –该功能使用 检测标签 的方法 亚马逊重新认识 检测传入图像中的标签。 这些标签可以作为标签来识别隐藏在图像中的丰富信息,例如有关商业艺术品和临床标签的信息。 如果标签喜欢
Human
orPerson
检测到置信度分数超过 80%,代码使用 检测人脸 查找关键脸部特征(如眼睛,鼻子和嘴巴)的方法,以检测输入图像中的脸部。 Amazon Rekognition会提供所有这些信息以及相关的置信度分数,该分数将被展平并存储在DynamoDB表中。 - 录音 –对于音频资产,代码使用 开始转录作业 异步方法 亚马逊转录 将输入的音频转录为文本,并传递唯一的标识符作为
TranscriptionJobName
。 该代码假定音频语言为英语(US),但您可以对其进行修改以与来自Veeva Vault的信息绑定。 该代码调用 获取转录工作 方法,传入与相同的唯一标识符TranscriptionJobName
循环执行,直到作业完成。 Amazon Transcribe将输出文件交付到S3存储桶,该存储文件由代码读取并删除。 该代码调用文本处理工作流(如前所述)以从转录的音频中提取实体。 - 扫描文件(PDF) –生命科学资产的很大一部分以PDF表示-从科学期刊,研究论文到药物标签,不一而足。 亚马逊Textract 是一项自动从扫描的文档中提取文本和数据的服务。 该代码使用 开始文档文本检测 启动异步作业以检测文档中文本的方法。 该代码使用
JobId
在回应呼叫中返回 获取文档文本检测 循环执行,直到作业完成。 输出的JSON结构包含检测到的文本的行和单词,以及它标识的每个元素的置信度得分,因此您可以就如何使用结果做出明智的决定。 该代码处理JSON结构以重新创建文本Blur,并调用文本处理工作流以从文本中提取实体。
DynamoDB表存储所有已处理的数据。 解决方案使用 DynamoDB 流和 Lambda 触发器 (AVAIPopulateES
) 将数据填充到 OpenSearch Kibana 集群中。 AVAIPopulateES 函数针对 DynamoDB 表中发生的每个更新、插入和删除操作运行,并在 OpenSearch 索引中插入一条相应的记录。 您可以使用 Kibana 可视化这些记录。
为了关闭反馈回路, AVAICustomFieldPopulator
Lambda 函数已创建。 它由元数据 DynamoDB 表的 DynamoDB 流中的事件触发。 对于每一个 DocumentID
在 DynamoDB 记录中,该函数尝试使用 Veeva API 将标签信息插入到具有 Veeva 中相应 ID 的资产的预定义自定义字段属性中。 为避免在自定义字段中插入噪音,Lambda 函数会过滤所有已识别的置信度分数低于 0.9 的标签。 失败的请求被转发到死信队列 (DLQ) 以进行手动检查或自动重试。
该解决方案提供了一种无服务器,按需购买的方式来处理,标记和启用对数字资产的全面搜索。 此外,每个受管组件都具有通过跨多个可用区自动部署而内置的高可用性。 对于 亚马逊开放搜索服务 (Amazon Elasticsearch Service 的继任者),您可以选择 三可用区选项 为您的域提供更好的可用性。
先决条件
对于本演练,您应该具有以下先决条件:
- An AWS账户 适当地 AWS身份和访问管理 (IAM) 启动 CloudFormation 模板的权限
- Veeva Vault PromoMats 域的适当访问凭据(域 URL、用户名和密码)
- 在 Veeva 中为您想要标记的数字资产定义的自定义内容标签(例如,我们创建了
AutoTags
自定义内容标签) - PromoMats Vault中的数字资产可通过之前的凭据访问
部署您的解决方案
您使用CloudFormation堆栈来部署解决方案。 堆栈创建所有必要的资源,包括:
- 一个S3存储桶,用于存储传入的资产。
- 用于将资产自动导入 S3 存储桶的 Amazon AppFlow 流。
- 一个 EventBridge 规则和 Lambda 函数,用于对 Amazon AppFlow 生成的事件做出反应(
AVAIAppFlowListener
). - 一个 SQS FIFO 队列充当侦听器函数之间的松散耦合(
AVAIAppFlowListener
)和轮询功能(AVAIQueuePoller
). - 一个DynamoDB表,用于存储Amazon AI服务的输出。
- 一个 Amazon OpenSearch Kibana (ELK) 集群,用于可视化分析的标签。
- 一个 Lambda 函数,用于将已识别的标签推回 Veeva (
AVAICustomFieldPopulator
),带有相应的 DLQ。 - 必需的Lambda函数:
- AVAIAppFlow监听器 – 由 Amazon AppFlow 推送到 EventBridge 的事件触发。 用于流运行验证并将消息推送到 SQS 队列。
- AVAI队列轮询器 –每1分钟触发一次。 用于轮询SQS队列,使用Amazon AI服务处理资产以及填充DynamoDB表。
- 可用人群 –在DynamoDB表上有更新,插入或删除时触发。 用于捕获来自DynamoDB的更改并填充ELK集群。
- AVAI自定义字段填充器 – 当 DynamoDB 表有更新、插入或删除时触发。 用于将标签信息反馈到 Veeva。
- Amazon CloudWatch活动 触发的规则
AVAIQueuePoller
功能。 这些触发器位于DISABLED
默认状态。 - 以缩小范围的方式与 EventBridge 和 AI 服务交互所需的 IAM 角色和策略。
首先,请完成以下步骤:
- 登录 AWS管理控制台 使用具有必备 IAM 权限的账户。
- 启动堆栈 并在新标签上打开它:
- 点击 创建堆栈 页面,选择 下一页.
- 点击 指定堆栈详细信息 页面,输入堆栈的名称。
- 输入参数值。
- 下一页.
- 点击 配置堆栈选项 页面上,将所有内容保留为默认值,然后选择 下一页.
- 点击 评论 页面,在 能力与转型 部分中,选中三个复选框。
- 创建堆栈.
- 等待堆栈完成。 您可以检查堆栈创建过程中的各种事件 展会活动 标签。
- 堆栈创建完成后,您可以查看 资源 标签以查看CloudFormation模板创建的所有资源。
- 点击 输出 选项卡,复制的值
ESDomainAccessPrincipal
.
这是IAM角色的ARN, AVAIPopulateES
函数假设。 您稍后使用它来配置对 Amazon OpenSearch Service 域的访问。
设置 Amazon OpenSearch 服务和 Kibana
本部分将指导您保护您的 Amazon OpenSearch Service 集群并安装本地代理以安全地访问 Kibana。
- 在 Amazon OpenSearch Service 控制台上,选择由模板创建的域。
- 点击 行动 菜单中选择 修改访问策略.
- 针对 域访问策略,选择 自定义访问策略.
- 在 访问政策将被清除 弹出窗口,选择 清除并继续.
- 在下一页上,配置以下语句以锁定对 Amazon OpenSearch Service 域的访问:
- 允许IPv4地址 –您的IP地址。
- 允许IAM ARN - 的价值
ESDomainAccessPrincipal
您之前复制的。
- 提交.
这将创建一个访问策略,授予对 AVAIPopulateES 函数的访问权限以及从您的 IP 地址访问 Kibana 的权限。 有关缩小访问策略范围的更多信息,请参阅 配置访问策略.
- 等待域状态显示为
Active
. - 在 Amazon EventBridge 控制台上,在 展会活动,选择 规则. 您可以看到 CloudFormation 模板创建的两条规则。
- 点击
AVAIQueuePollerSchedule
规则并通过单击启用它 启用.
在 5-8 分钟内,数据应该开始流入并在 Amazon OpenSearch Service 集群中创建实体。 您现在可以在 Kibana 中可视化这些实体。 为此,您使用一个名为的开源代理 Aws-es-Kibana。 要在计算机上安装代理,请输入以下代码:
aws-es-kibana your_OpenSearch_domain_endpoint
您可以在 输出 下的CloudFormation堆栈的选项卡 ESDomainEndPoint
。 您应该看到以下输出:
创建可视化并分析标记的内容
请参考原文 博文.
清理
为避免将来产生费用,请在不使用时删除资源。 您可以通过删除关联的 CloudFormation 堆栈轻松删除所有资源。 请注意,您需要清空已创建的 S3 内容存储桶才能成功删除堆栈。
结论
在这篇博文中,我们演示了如何将 Amazon AI 服务与 Amazon AppFlow 结合使用,以扩展 Veeva Vault PromoMats 的功能并快速轻松地提取有价值的信息。 内置的环回机制允许您将标签更新回 Veeva Vault 并启用资产的自动标记。 这使您的团队更容易快速查找和定位资产。
尽管没有 ML 输出是完美的,但它可以非常接近人类的表现,并有助于抵消您团队的大部分努力。 您可以将这一额外容量用于增值任务,同时将一小部分容量用于检查 ML 解决方案的输出。 该解决方案还可以帮助优化成本、实现标签一致性并能够快速发现现有资产。
最后,您可以维护数据所有权,并选择可以处理,存储和托管内容的AWS服务。 未经您的同意,AWS不会出于任何目的访问或使用您的内容,也绝不会使用客户数据来获取营销或广告信息。 有关更多信息,请参见 数据隐私常见问题解答.
您还可以通过其他增强功能进一步扩展此解决方案的功能。 例如,除了本文中的 AI 和 ML 服务之外,您还可以轻松添加任何使用构建的自定义 ML 模型 亚马逊SageMaker 到架构。
如果您有兴趣探索 Veeva 和 AWS 的其他使用案例,请联系您的 AWS 客户团队。
Veeva Systems 已审核并批准此内容。 有关其他 Veeva Vault 相关问题,请联系 Veeva 支持.
关于作者
玛扬克·塔卡 是 AWS 的 AI/ML 业务开发、全球医疗保健和生命科学负责人。 他在医疗保健、生命科学、保险和零售等多个行业拥有超过 18 年的经验,专注于构建无服务器、人工智能和基于机器学习的解决方案来解决现实世界的行业问题。 在 AWS,他与世界各地的大型制药公司密切合作,构建尖端解决方案并帮助他们完成云之旅。 工作之余,Mayank 和他的妻子正忙着抚养两个精力充沛、淘气的男孩 Aaryan(6 岁)和 Kiaan(4 岁),同时努力防止房子被烧毁或被淹!
安娜玛丽亚·托多尔 是丹麦哥本哈根的一名高级解决方案架构师。 她在 4 岁时看到了自己的第一台计算机,从那以后就再也没有放过计算机科学和工程。 她曾在多家丹麦公司担任过各种技术职务,从全栈开发人员到数据工程师、技术主管和 CTO。 Anamaria 拥有应用工程和计算机科学学士学位、计算机科学硕士学位以及 10 多年的 AWS 实践经验。 在 AWS,她与企业领域的医疗保健和生命科学公司密切合作。 当她不工作或不玩电子游戏时,她会指导女孩和女性专业人士了解并通过技术找到她们的道路。
- "
- 10
- 100
- 7
- 9
- a
- 关于
- 摘要
- ACCESS
- 无障碍
- 容纳
- 账号管理
- 横过
- 法案
- 增加
- 额外
- 地址
- 广告
- AI
- 人工智能服务
- 所有类型
- 允许
- Amazon
- 量
- 分析
- 分析
- 分析
- 除了
- API
- APIs
- 应用领域
- 应用领域
- 应用的
- 的途径
- 适当
- 架构
- 围绕
- 人造的
- 人工智能
- 艺术品
- 财富
- 办公室文员:
- 相关
- 音频
- 自动表
- 自动
- 可用性
- AWS
- before
- 作为
- 更好
- 之间
- 边界
- 建立
- 建筑物
- 内建的
- 商业
- 呼叫
- 能力
- 容量
- 案件
- 例
- 收费
- 分类
- 临床试验
- 云端技术
- 教练
- 码
- 组合
- 如何
- 未来
- 商业的
- 公司
- 完成
- 元件
- 全面
- 一台
- 计算机科学
- 概念
- 条件
- 信心
- 配置
- 分享链接
- 地都
- 同意
- 安慰
- CONTACT
- 包含
- 内容
- 相应
- 成本
- 可以
- 国家
- 创建信息图
- 创建
- 创建
- 创建
- 资历
- 首席技术官
- 习俗
- 顾客
- 前沿
- XNUMX月XNUMX日
- data
- 数据处理
- 决定
- 提供
- 需求
- 证明
- 丹麦
- 部署
- 部署
- 目的地
- 旅游目的地
- 详情
- 检测
- 检测
- 开发商
- 研发支持
- 数字
- 数字资产
- 发现
- 文件
- 不会
- 域
- 域名
- 向下
- 药物
- 每
- 容易
- 易于使用
- 生态系统
- 有效
- 工作的影响。
- enable
- 使
- 端点
- 工程师
- 工程师
- 英语
- 输入
- 企业
- 实体
- 环境
- 活动
- 事件
- 一切
- 例子
- 例子
- 现有
- 体验
- 探索
- 延长
- 提取物
- 面孔
- 专栏
- 特征
- 反馈
- 女
- 字段
- 过滤器
- 寻找
- 姓氏:
- 流
- 重点
- 以下
- 格式
- 发现
- 止
- ,
- 功能
- 功能
- 功能
- 进一步
- 未来
- Games
- 通常
- 产生
- 越来越
- 女孩
- 全球
- 补助金
- 动手
- 头
- 医疗保健
- 帮助
- 高
- 别墅
- 创新中心
- How To
- HTTPS
- 人
- 识别码
- 鉴定
- 身分
- 图片
- 图片
- 输入
- 包括
- 包括
- 包含
- 指数
- 个人
- 行业
- 行业中的应用:
- 信息
- 通知
- 输入
- 刀片
- 洞察
- 可行的洞见
- 安装
- 保险
- 集成
- 积分
- 房源搜索
- 互动
- 有兴趣
- 接口
- IP
- IP地址
- IT
- 工作
- 旅程
- 保持
- 键
- 标签
- 标签
- 语言
- 语言
- 大
- 最新
- 发射
- 铅
- 离开
- 生命科学
- 线
- 友情链接
- 本地
- 看
- 机
- 保持
- 使
- 制作
- 管理
- 管理
- 颠覆性技术
- 方式
- 手册
- 制造业
- 制图
- 营销
- 硕士
- 物料
- 机制
- 医生
- 提到
- 指标
- ML
- 模型
- 更多
- 最先进的
- 移动
- 多
- 自然
- 必要
- 需要
- 下页
- 噪声
- 优惠精选
- 抵消
- 打开
- 操作
- 操作
- 优化
- 附加选项
- 秩序
- 原版的
- 其他名称
- 最划算
- 己
- 所有权
- 部分
- 通过
- 密码
- 病人
- 百分比
- 性能
- 制药
- 播放
- 请
- 政策
- 政策
- 英寸
- 弹出式
- 当下
- 以前
- 隐私
- 问题
- 过程
- 过程
- 处理
- 处理器
- 制片人
- 热销产品
- 专业人士
- 证明
- 概念验证
- 财产
- 协议
- 提供
- 提供
- 代理
- 国家
- 发布
- 目的
- 目的
- 快速
- 很快
- 提高
- 范围
- 达到
- 应对
- 反应
- 记录
- 记录
- 监管
- 相应
- 其余
- 代表
- 要求
- 研究
- 资源
- 响应
- 导致
- 成果
- 零售
- 角色
- 定位、竞价/采购和分析/优化数字媒体采购,但算法只不过是解决问题的操作和规则。
- 运行
- 同
- 可扩展性
- 鳞片
- 预定
- 科学
- 科学
- 安全
- 段
- 无服务器
- 服务
- 特色服务
- 集
- 设置
- Share
- 显示
- 简易
- 自
- 网站
- 情况
- 小
- So
- 软件
- 软件作为一种服务
- 固体
- 方案,
- 解决方案
- 解决
- 一些
- 专业
- 具体的
- 规格
- 堆
- 标准
- 开始
- 开始
- 州/领地
- 声明
- Status
- 存储
- 商店
- 商店
- 流
- 结构化
- 学习
- 大量
- 成功
- 顺利
- SUPPORT
- 支持
- 支持
- 支持
- 系统
- 产品
- 任务
- 团队
- 队
- 文案
- 专业技术
- 模板
- 条款
- 世界
- 三
- 通过
- 领带
- 次
- 耗时的
- 工具
- 向
- 跟踪时
- 跟踪
- 转让
- 转让
- 翻译
- 引发
- 下
- 理解
- 独特
- 无限
- 更新
- 最新动态
- us
- 使用
- 验证
- 折扣值
- 各个
- 拱顶
- 版本
- 视频
- 视频游戏
- 网站
- 而
- 也完全不需要
- 话
- 工作
- 工作
- 加工
- 合作
- 世界
- 年
- 您一站式解决方案