【问题标题】:SQL Server Integration Services - programmatically choose what files to importSQL Server Integration Services - 以编程方式选择要导入的文件
【发布时间】:2020-01-20 19:22:31
【问题描述】:

我不是 SQL Server 的新手,但 是集成服务的新手,所以我想了解以下要求是否在 SSIS 中完全可以实现,或者我是否需要考虑某种程度的C#开发补充:

我们有 25 个 Azure VM 运行 Windows Server 2016 Datacenter - 在每个 VM 上,我们在不同文件夹中都有数千个日志文件。我们需要监控所有这些文件夹,并在创建名称中存在特定字符串的任何新文件时,我们希望将文件的内容导出到 Azure SQL Server 2017 数据库中的表中。

这种自定义逻辑是否可在 SSIS 项目中配置,还是 SSIS 更适合静态定义文件夹/文件名?

【问题讨论】:

    标签: sql-server ssis etl filesystemwatcher sql-server-2017


    【解决方案1】:

    我认为您不能在 SSIS 包中实现文件夹监视程序。但是您可以通过不同的方式实现这一点:

    (1) - 使用文件夹观察器

    你必须开发你需要导入数据的SSIS包,然后你必须develop a folder watcher using C#读取文件夹中的变化,如果文件名符合要求你应该运行dtexec utility(使用shell)运行相关SSIS 包。

    (2) - 使用 SQL 代理作业

    您可以配置 SQL Server 代理作业以定期检查文件更改并在需要时运行 SSIS 包。

    【讨论】:

    • 哈迪,感谢您提供的信息。不幸的是,Azure SQL Server 不支持 SQL 代理,因此排除了 #2。关于另一个选项 - 除了文件夹监视之外,SSIS 是否可以配置自定义文件名要求?我在您的回答中看到您提到了它,但我不知道这是否也是必须写入 C# 部分的内容。我问是因为如果我可以消除文件夹监视器的要求,我想知道 SSIS 是否可以解决仅拾取具有某种名称的文件的唯一剩余要求。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-16
    • 1970-01-01
    • 1970-01-01
    • 2023-03-16
    • 1970-01-01
    相关资源
    最近更新 更多