开发者社区> 问答> 正文

每次执行sql语句时,都要申请gateway 资源吗?

每次执行sql语句时,都要申请gateway 资源吗?dateworks和gateway  IP资源有什么关联吗?

展开
收起
游客i2i5j3xkpqrwe 2023-12-03 11:11:21 54 0
3 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    在执行SQL语句时,不需要每次都申请gateway资源。一种可行的方式是采用数据库连接池技术,由连接池初始化一定数量的连接,每次程序与连接池交互,而不是直接与数据库交互,这样可以节省资源。客户端发送的SQL语句会由服务端的进程处理。

    2023-12-03 17:39:22
    赞同 展开评论 打赏
  • 在大多数情况下,当您通过 SQL Gateway 提交一个 Flink SQL 任务到 Flink on Kubernetes(K8s)集群时,确实需要申请 gateway 资源。这是因为 SQL Gateway 是用于提交、管理和监控 Flink SQL 作业的入口点。

    SQL Gateway 可能会占用一些计算和网络资源来处理作业的生命周期管理。因此,在运行 Flink SQL 作业时,通常需要为 SQL Gateway 分配一定的资源,例如 CPU 核心数、内存大小等。这些资源可以使用 K8s 的 Resource 描述符来指定,并且在创建或更新 FlinkDeployment CRD(Custom Resource Definition)时提供。

    不过,需要注意的是,具体是否每次执行 SQL 语句都需要重新申请 gateway 资源取决于您的部署模型和 SQL Gateway 的实现方式。某些情况下,您可以配置 SQL Gateway 以复用已存在的服务实例,而不是每次都创建新的 gateway 实例。这可以减少启动新 gateway 实例所需的时间和资源开销。

    对于 Apache Flink 官方提供的 SQL Gateway 实现(即 Flink SQL Client),它是一个轻量级的客户端工具,用于与 Flink 集群进行交互。通常,这个客户端在本地机器上运行,只需要一次设置和连接到 Flink 集群即可。一旦连接建立,就可以反复提交和取消 SQL 作业而无需重新获取资源。

    总结起来,如果您的 SQL Gateway 是一个单独的服务,那么每次执行 SQL 作业可能都会涉及到资源的申请;而如果是基于轻量级客户端的实现,那么主要涉及的是与集群的连接和交互,而不是每次都要重新申请资源。

    2023-12-03 15:59:45
    赞同 展开评论 打赏
  • DataWorks是阿里云提供的数据研发和治理平台,它提供了一站式的开发、测试、上线、运维等数据全生命周期管理。Gateway在不同的上下文中可能有不同的含义,但在这个场景中,你提到的"gateway"很可能是与数据访问相关的服务或组件。

    通常情况下,当DataWorks执行SQL语句时,确实需要通过某种方式连接到实际的数据存储(如数据库)。这个过程可能涉及一个或者多个网关(gateway),这些网关可以作为安全边界来控制对数据源的访问,并且可能还提供了诸如身份验证、授权和审计等功能。

    关于IP资源的关联,具体取决于你的部署环境和配置。如果DataWorks和数据源之间有网络隔离的需求,那么可能需要通过特定的网关来进行通信。在这种情况下,DataWorks会使用经过身份验证的IP地址向网关发送请求,然后网关再转发请求到数据源。这样做的目的是为了确保只有经过授权的服务能够访问敏感数据。

    2023-12-03 14:55:27
    赞同 2 展开评论 打赏
问答分类:
SQL
问答地址:
关联地址:
问答排行榜
最热
最新

相关电子书

更多
SQL Server在电子商务中的应用与实践 立即下载
GeoMesa on Spark SQL 立即下载
原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载