SAS 宏的 REST 端点?

REST endpoints for SAS macros?

假设我们有一组自定义编写的 SAS 宏,每个宏都有几个参数。让我们进一步假设这些输入参数主要是标量(即单个数字)或小的 tables。 我现在正试图弄清楚如何使用最简单的架构为这些宏构建 REST 端点。我目前有一个用于外部世界的 nginx 网络服务器,以及一个安全的 SAS 服务器区。我所追求的是 Python Flask for SAS。有人试过了吗?

输入数据足够简洁,可以使用 POST 或 GET 推送到 Web 服务器,宏的结果通常是一个简单的 table,可以转换为 JSON , 所以这应该不是问题。

PS: 我在这里问,因为我发现我可能使用了错误的搜索词。

参考资料

我认为最接近您所追求的可能是 SAS 存储过程 Web 应用程序:

https://documentation.sas.com/?docsetId=stpug&docsetTarget=n1gt44n8wc0la0n18s9kajwq0o2q.htm&docsetVersion=9.4&locale=en#p1h7zy9iqb8wzzn14nyflilmeafw

这是否大致符合您的想法?

好的,最简单的架构就是我的处理方式。 SAS Web 服务架构非常复杂。据我所知,Viya 更好,但您可能没有。请在此处查看我关于轻量级 SAS Web 服务的论文 (https://www.sas.com/content/dam/SAS/support/en/sas-global-forum-proceedings/2019/3604-2019.pdf)。我的方法是使用 ASP.NET Core、Web API 和 SAS Integration Technologies。 .NET Core 在所有主要 O/Ss 上运行,但 SAS Int Tech 在 Windows 上使用 DCOM,在 Linux 上使用 CORBA(我相信)。 SAS 可能在 Linux 上也有一个 Java 接口。

设置 IntTech 调用并让它工作,然后用 Web 服务代码包装它。注意日志记录和结果。

这个非常非常可行。我已经用 SOAP、REST 和现在的 gRPC 做了很多。将 SAS 提交移开,然后将其包装。

您的选择是:

  • BIWS -> 您可以使用 BI Web 服务定义 REST 端点
  • https://sas9api.io -> SAS 9a 的实际 REST api,虽然不是开源的
  • https://sasjs.io -> 不是 REST,但可以让您使用 Javascript
  • 非常轻松地构建 Web 应用程序