将Presto on Cloud Dataproc与Google Cloud SQL结合使用



我同时使用Hive和MySQL(通过Google Cloud SQL),我想使用Presto轻松连接两者。我已经看到有一个针对Cloud Dataproc的Presto初始化操作,但它不能开箱即用地使用Cloud SQL。如何使初始化操作与Cloud SQL一起使用,以便在Presto中同时使用Hive/Spark和Cloud SQL?

最简单的方法是编辑在Cloud Dataproc集群上安装Presto的初始化操作。

云SQL设置

但是,在执行此操作之前,请确保配置Cloud SQL,以便它能够与Presto一起使用。您需要:

  1. 为Presto创建用户(或准备好用户)
  2. 调整任何必要的防火墙规则,以便您的Cloud Dataproc集群可以连接到Cloud SQL实例

更改初始化操作

在Presto初始化操作中,有一个部分设置Hive配置,如下所示:

cat > presto-server-${PRESTO_VERSION}/etc/catalog/hive.properties <<EOF
connector.name=hive-hadoop2
hive.metastore.uri=thrift://localhost:9083
EOF

您可以添加一个新的部分,如下图所示,用于设置mysql属性。添加如下内容:

cat > presto-server-${PRESTO_VERSION}/etc/catalog/mysql.properties <<EOF
connector.name=mysql
connection-url=jdbc:mysql://<ip_address>:3306
connection-user=<username>
connection-password=<password>
EOF

很明显,您需要将<ip_address><username><password>替换为正确的值。此外,如果您有多个云SQL实例要连接,您可以添加多个部分并为它们提供不同的名称,只要文件名以.properties结尾即可。

最新更新