运行保存在 SQL Server 上的 SSIS 包与运行保存为 dtsx (XML) 的包

发布于 2024-11-19 17:01:57 字数 440 浏览 0 评论 0原文

当我在本地运行VS2008并打开一个指向远程数据库的包并运行时,我相信数据从输入文件到数据库服务器是通过我的PC运行的,即使数据文件位于数据库服务器上。

但是,如果 SSIS 包存储在 SQL Server 中,并且我通过 SQL 代理启动作业,则我的 PC 不在画面中,并且数据不会流经我的 PC,因此我应该看到性能显着提升。

是这样吗?我只是想确认一下。目前,我无权在我们的开发服务器上保存包,并且我正在考虑请求能够出于上述原因执行此操作的权限,前提是这是一个有效的原因。

需要什么样的访问权限才能在 SQL Server 上保存 SSIS 包?是否有理由拒绝我这样做的权利,也许是因为授予我这样的访问权限需要提供更高的访问级别,这也允许我做 DBA 可能不希望我做的其他事情?作为一名开发人员,我认为我应该能够将数据从 UAT 或其他非生产环境转移到 DEV 数据库中,而不必要求 DBA 在有时间时执行此操作。

When I run VS2008 locally and open up a package that points to a remote database and run, I believe that the data, from the input file to the db server, is running through my PC, even if the data file is on the database server.

However, if the SSIS package is stored in SQL Server and I start the job through SQL Agent, my PC is out of the picture and that data does not flow through my PC and so I should get see a signatificant performance boost.

Is this the case? I just want to confirm. Currently, I do not have permission to save a Package on our development server and I am considering requesting rights to be able to do for the above reason provided that it is a valid reason.

What kind of access does one have to have to be able to save SSIS Packages on a SQL Server? Might there be a reason to deny me rights to do so perhaps because granting me such access would require giving an elevated access level that would also allow me to do other things that the DBA might not want me to do? As a developer, I think that I should be able to shuffle data from UAT, or so iother non production env into a DEV database without having to request that a DBA do it when he gets around to it.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

天涯沦落人 2024-11-26 17:01:57

您对包执行位置的理解是正确的,并且通过将执行移至服务器肯定会提高性能。至少,如果服务器拥有比工作站更多的系统资源(尤其是 RAM),情况就会如此。当然,避免不必要地使用网络也很有帮助。

msdb 数据库中创建了特定角色用于管理 SSIS 包,因此您的DBA 可以让您部署和运行它们,而无需让您成为系统管理员。但是,正如文档所述,如果从作业运行包,可能会出现权限升级问题,因此建议的解决方案是创建代理帐户。

Your understanding of where the package executes is correct, and performance will certainly be improved by moving execution to the server. At least, it will be if the server has more system resources than your workstation, especially RAM. And avoiding using the network unnecessarily is helpful too, of course.

There are specific roles created in the msdb database for managing SSIS packages so your DBA can let you deploy and run them without making you a sysadmin. However, as the documentation says, there is a possible privilege escalation issue if you run the packages from jobs so the recommended solution is to create a proxy account.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文