SSIS挂起中的OData源组件 [英] OData Source Component in SSIS Hanging

查看:187
本文介绍了SSIS挂起中的OData源组件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用SSIS,并希望使用OData连接从此页面提取公共NADAC数​​据:

I'm using SSIS and would like to pull in the public NADAC data from this page using the OData connection: https://data.medicaid.gov/Drug-Pricing-and-Payment/NADAC-National-Average-Drug-Acquisition-Cost-/a4y5-998d.

通过在椭圆上单击并选择通过OData访问数据,可以在其页面上找到OData端点. v4端点为: https://data.medicaid.gov/api/odata /v4/a4y5-998d

You can find the OData endpoint on their page by clicking on the ellipse and selecting Access Data via OData. The v4 endpoint is: https://data.medicaid.gov/api/odata/v4/a4y5-998d

在SSIS(针对SQL Server 2016的Visual Studio 2015,版本14.0.500.272)中,我能够为基本URL创建一个OData源连接管理器:

In SSIS (Visual Studio 2015, Version 14.0.500.272 targeted at SQL Server 2016), I am able to create an OData Source Connection Manager to the base URL: https://data.medicaid.gov/api/odata/v4/

您可以看到测试连接成功. 注意:如果我在此处指定完整的OData端点URL,它确实会成功,但是在下一步中找不到要连接的任何集合,这就是为什么我不这样做. (消息为无法为连接OData Source加载收集,原因:无法打开此连接")

You can see the test connection succeeded. Note: If I specify the full OData End Point URL here, it does succeed, but then doesn't find any collections to connect to in the next step, which I why I'm not doing that. (The message is "Unable to load collection for the connection OData Source, reason: Cannot open this connection")

还要注意,我正在使用"Windows身份验证",但这是公共提要,不需要身份验证.似乎没有匿名身份验证"选项.

Also note, I'm using "Windows Authentication" but this is a public feed and no authentication is required. There doesn't appear to be a "anonymous authentication" option.

下一步是将OData Source拖到我的数据流上,然后单击鼠标右键进行编辑.执行此操作时,首先选择刚创建的OData连接管理器.它会识别连接,并显示我可以连接到的集合的下拉列表.

The next step is to drag the OData Source onto my data flow and right-click to edit it. When I do this, I first select the OData connection manager I just created. It recognizes the connection and displays a drop-down list of collections I can connect to.

很明显,到目前为止,我一直在做一些事情,因为它可以识别可用的收藏夹.

Clearly, I'm doing something right up until this point, since it's recognizing the collections that are available.

但是,我是否:

  1. 在列表中选择任何收藏集
  2. 在列表中选择所需的收藏集(a4y5-998d)
  3. 从集合切换到资源路径并粘贴到我想要的资源路径(a4y5-998d)

,然后单击预览..."或列",甚至单击确定"-Visual Studio变得完全无响应.超过20分钟.我必须使用任务管理器崩溃,然后重试.如果我让它永远坐着,我最终会收到一条黄色警告消息:管道组件已从方法调用中返回HRESULT错误代码0xC020801F.

and then click "Preview..." or "Columns" or even "OK" - Visual Studio becomes entirely non-responsive. For 20+ minutes. I have to use Task Manager to crash out and try again. If I let it sit forever, I eventually get a yellow warning message: Pipeline component has returned HRESULT error code 0xC020801F from a method call.

我对Medicaid提供的v2 OData feed端点也没有任何成功( https://data.medicaid.gov/OData.svc/a4y5-998d ).

I also haven't had any success with the v2 OData feed endpoint that Medicaid provides (https://data.medicaid.gov/OData.svc/a4y5-998d).

我的两个问题:

  1. 我做错了什么吗?也许我使用了错误的URL,或者设置不正确?
  2. 您遇到相同的问题还是可以按照我尝试的步骤使其正常工作?要重新创建,请使用数据流组件创建一个新的SSIS包,然后按照我的步骤进行操作.

注意:例如,我可以使用Power BI引入数据,所以我认为Feed没什么问题.只是我在努力的SSIS.

Note: I am able to bring the data in using Power BI (for example), so I don't think there's anything wrong with the feed. It's just SSIS I'm struggling with.

在此先感谢您的帮助.

推荐答案

这是一个Visual Studio错误.我从SSDT 17.0升级到SSDT 17.4(SSIS版本14.0.1000.169),错误消失了.

This was a visual studio bug. I upgraded from SSDT 17.0 to SSDT 17.4 (SSIS version 14.0.1000.169) and the error went away.

这篇关于SSIS挂起中的OData源组件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆