当前位置: 首页 > news >正文

做miui主题网站团员关系没转就作废吗

做miui主题网站,团员关系没转就作废吗,做网站服务器收费吗,简单广告牌制作方法AWS Glue作为一种无服务器产品,其运行环境是“不可预知”的,也就是“一个黑盒”,所以如何能连接一些自有数据源是Glue必须考虑并给予满足的,为此,Glue给出的解决方案就是Connector和Connection,一个connect…

AWS Glue作为一种无服务器产品,其运行环境是“不可预知”的,也就是“一个黑盒”,所以如何能连接一些自有数据源是Glue必须考虑并给予满足的,为此,Glue给出的解决方案就是Connector和Connection,一个connector就是一个用于协助访问数据源的程序包(容器镜像或Jar包),如果你要使用一个connector,必须先创建一个针对该connector的connection。一个connection包含了连接一个特定数据源的属性。connector和connections联合起来为目标数据源提供访问通路。本文地址:https://laurence.blog.csdn.net/article/details/129139176,转载请注明出处!

1. 关系与区别

下面是一些明确切且重要的结论:

  • 先创建Connector,再创建Connection,后者依附于前者,Connector与Connection是一对多的映射关系
  • Connector与Connection非常类似于数据库客户端工具(例如DataGrip)中的Driver和DataSource之间的关系,Connector类似Driver,主要包含JAR包和基础属性(如JDBC类型的Connector需要配置Base的JDBC URL),DataSource类似于DataSource,主要包含身份认证信息和网络配置
  • 能在Glue控制台上编辑的主要是Custom Connector & Connection,以及Marketplace Connector关联的Connection
  • Marketplace Connector是只读的,不可配置,对应Connection可由用户创建和编辑
  • Marketplace Connector在架构上有更大的“运作空间”,一般以容器形式运行于EKS/ECS上
  • Custom Connector只能是一个Jar包,所以它只有Spark、Athena、JDBC三种类型(对应Glue提供的三种集成API)
  • Custom Connection可以独立于Connector存在,依赖Jar包可通过Job Dependent Jar配置给Job,故不一定非要依赖Connector
  • 再进一步,如果配置了VPC Connection,再通过Job Dependent Jar配置Jar包,则Connection也可以省去(未必所有的Connection都可以,但测试过部分,确实是可行的)
  • 尽管上述两点都已证明可行,还是建议始终使用Custom Connector + Custom Connection的标准方式配置数据源连接。跳过Connector直接创建Custom Connection会丢失一个优势:由于在Glue图形化编辑器上,只有Connector是可以直接拖放的Source/Sink组件,所以如果跳过Custom Connector直接创建Custom Connection,在Glue图形化编辑器上就没有这个数据源对应的连接器可以拖放了。

下图对以上要点进行了总结:

请添加图片描述

来自于marketplace的connector显然拥有“特权”,它们拥有更加复杂的架构,这些connector往往都有自己docker镜像,并使用ECS/EKS部署和运行镜像,独立的镜像给了connector最大化的定制空间。而自定义connector的“运作空间”远远没有marketplace上的connector大,它不能拥有自定义镜像,只能以jar包形式存在,并依附于Glue的运行环境(通过三套API接口集成),所以,自定义的connector只有三种类型,只能以Jar包形式存在:

  • Spark DataSource API -> connectionType=custom.spark
  • Amazon Athena Data Source API -> connectionType=custom.athena
  • Java JDBC API -> connectionType=custom.jdbc

2. Connection的加载时机

此外,我们一直想找出:Glue的Connection与Spark原生数据加载方式(例如:spark.read.format(“jdbc”))之间到底有什么差异,我们以JDBC类型的Connection做了如下一些测试:

测试场景测试结果
Custom JDBC Connection + Glue Context with Connection成功
Custom VPC Connection + Job Dependent Jar + Glue Context with Connection成功
Custom JDBC Connection + Spark原生数据加载方式 ( spark.read.format(“jdbc”) )失败

上述三个测试用例可有力地证明:在Glue中,对于一个数据源的连接配置只能通过Glue专属的GlueContext加载才能生效。关于这一点,我们没有办法从源代码上获得验证,但是一种合理的解释是:我们知道,Glue作为Serverless产品,其工作节点(Worker)的网络环境是不可见的“黑盒”,为了能和目标数据源打通,Glue会根据Connction中的网络配置给它的工作节点创建临时的ENI(虚拟网卡),用于连接到Connection配置的子网中,这些工作节点也因此获得了指定子网内的私有IP地址,从上面的测试结果来看,真正触发Glue去完成这一系列操作的“开关”是在代码中通过GlueContext加载Connection时(根据Spark Lazy Loading的一贯特性,触发的时机可能会更晚,有可能是在初次读取DynamicFrame时),而不是只要在Job属性中关联了一个Connection,在Job启动时就会被自动激活。

3. 重要细节

最后,补充一些测试中的细节:

  • Trino JDBC Driver的URL中user参数不得为空

  • Trino JDBC Driver的URL中user和passoword,只能通过secret manager配置方可生效

  • 通过Glue专属的GlueContext加载Connection指的是类似下面的代码:

    # author: https://laurence.blog.csdn.net/
    Trino_node1676884948138 = glueContext.create_dynamic_frame.from_options(connection_type="custom.jdbc",connection_options={"tableName": "orders","dbTable": "orders","jobBookmarkKeys": ["orderkey"],"jobBookmarkKeysSortOrder": "asc","connectionName": "my-trino-connection",},transformation_ctx="Trino_node1676884948138",
    )
    
  • 通过Spark原生数据加载方式读取数据源指的是类似下面的代码:

    # author: https://laurence.blog.csdn.net/
    spark.read.format("jdbc").option("url", "jdbc:trino://localhost:8889/hive/default").option("driver", "io.trino.jdbc.TrinoDriver").option("user", "hadoop").option("dbtable", "orders").load().show()
    
  • Glue的官方文档对于创建ENI有专门的解释:

    AWS Glue sets up elastic network interfaces that enable your jobs to connect securely to other resources within your VPC. Each elastic network interface is assigned a private IP address from the IP address range within the subnet you specified.

4. 相关资源

4.1. 内置Connectors

connectionTypeConnects To
custom.*Spark, Athena, or JDBC data stores (see Custom and AWS Marketplace connectionType values
documentdbAmazon DocumentDB (with MongoDB compatibility) database
dynamodbAmazon DynamoDB database
kafkaKafka or Amazon Managed Streaming for Apache Kafka
kinesisAmazon Kinesis Data Streams
marketplace.*Spark, Athena, or JDBC data stores (see Custom and AWS Marketplace connectionType values)
mongodbMongoDB database
mysqlMySQL database (see JDBC connectionType Values)
oracleOracle database (see JDBC connectionType Values)
orcFiles stored in Amazon Simple Storage Service (Amazon S3) in the Apache Hive Optimized Row Columnar (ORC) file format
parquetFiles stored in Amazon S3 in the Apache Parquet file format
postgresqlPostgreSQL database (see JDBC connectionType Values)
redshiftAmazon Redshift database (see JDBC connectionType Values)
s3Amazon S3
sqlserverMicrosoft SQL Server database (see JDBC connectionType Values)

4.2. Marketplace Connectors

通过下面的链接可以查找到Marketplace上所有的连接器:

https://aws.amazon.com/marketplace/search/results?searchTerms=glue+connector

4.3. Custom Connectors

这里有一篇整体介绍,建议先阅读此文:

Developing, testing, and deploying custom connectors for your data stores with AWS Glue

4.3.1. 基于Spark DataSource API的自定义连接器

文档:

https://github.com/aws-samples/aws-glue-samples/tree/master/GlueCustomConnectors/development/Spark/glue-3.0

示例:

MinimalSpark3Connector.scala

4.3.2. 基Java JDBC API的自定义连接器

文档:

https://docs.aws.amazon.com/glue/latest/ug/connectors-chapter.html#code-jdbc-connector

示例:

https://github.com/aws-samples/aws-glue-samples/blob/master/GlueCustomConnectors/development/Spark/SparkConnectorMySQL.scala

4.3.3. 基Java JDBC API的自定义连接器

文档:

https://github.com/aws-samples/aws-glue-samples/tree/master/GlueCustomConnectors/development/Athena

示例:

https://github.com/aws-samples/aws-glue-samples/tree/master/GlueCustomConnectors/development/Athena

本文地址:https://laurence.blog.csdn.net/article/details/129139176,转载请注明出处!

http://www.yayakq.cn/news/53252/

相关文章:

  • 企业快速建站的公司对于协会的新年祝贺语网站模板
  • 网站建设公司广东手机网站建设的第一个问题
  • 券多多是谁做的网站wordpress图片站模板
  • 汕头企业网站建设设计工程公司起名大全字库
  • 网站建设费的摊销如何在百度打广告
  • wordpress 企业网站制作通辽做网站制作
  • 未明潮网站建设保密协议百度权重4网站值多少钱
  • 天猫网站建设目的软件开发外包服务公司
  • 做网站gzip压缩公司网站域名注册费用
  • 随州网站seo多少钱企业主页怎么写
  • ppt做书模板下载网站有哪些内容政协系统网站建设
  • 网站备案 收费wordpress 编辑插件下载
  • 解聘 人力资源网站上怎么做网站制作要花多少钱
  • 企业网站的建立步骤接收外国电视卫星天线
  • 漯河小学网站建设网站推广方案策划书
  • 诚信网站费用福建seo排名
  • 公司禁用网站怎么做学校网站建设情况汇报
  • 广州网站建设哪家比较好个人视频网站注册平台
  • 嘉兴网站建设多少时间东莞工程
  • wordpress 常用函数酒泉网站建设优化
  • 购物网站建设详细教程科技创业创新心得
  • 网站软件下载无锡建设机械网站制作
  • 重庆承越网站建设地址wordpress电脑
  • 网站外链查询宿迁网站建设sq918
  • 做新闻微网站有哪些方面石家庄旅游景点
  • 上传到服务器的网站打开是空白江苏省住房和建设厅网站
  • 青岛网站建设企业建站wordpress实现视频播放
  • 胶南网站制作作品怎么推广
  • 律师网站模板服装网站建设前期规划方案
  • 广西建设学院官方网站广告推广媒体