Azure SQL作为HDInsight的外部Sqoop Metastore

时间:2017-08-01 19:49:50

标签: azure sqoop hdinsight azure-sql-database

美好的一天!

是否有任何文档如何将Azure SQL配置为HDInsight的外部Sqoop Metastore?

通常,HDInsight群集作为计算资源动态生成,然后在工作完成后关闭。

这就是为什么Sqoop作业定义需要在群集重新启动或附加新群集后才能生存。

理想情况下,外部sqoop Metastore应在动态创建过程中附加到新集群。

此致

-Yuriy

1 个答案:

答案 0 :(得分:0)

事实证明,如果您可以在Azure SQL或Azure MySQL中创建以下表格,然后使用Sqoop的--meta-connect子句连接到新的Metastore 但是有这个限制Sqoop on HDInsight does not close JDBC connection properly?

CREATE TABLE SQOOP_ROOT (
version INT,
propname VARCHAR(128) NOT NULL, 
propval VARCHAR(256), 
CONSTRAINT SQOOP_ROOT_unq UNIQUE (version, propname))
INSERT INTO SQOOP_ROOT
        VALUES(
          NULL,
          'sqoop.hsqldb.job.storage.version',
          '0');

           INSERT INTO SQOOP_ROOT
VALUES(
    0,
    'sqoop.hsqldb.job.info.table',
    'SQOOP_SESSIONS'
          );

  CREATE TABLE SQOOP_SESSIONS(
         JOB_NAME VARCHAR(64) ,
         PROPNAME VARCHAR(128) ,
         PROPVAL VARCHAR(1024) ,
         PROPCLASS VARCHAR(32) ,
        CONSTRAINT SQOOP_SESSIONS_unq UNIQUE
(JOB_NAME ,
PROPNAME ,
PROPCLASS)
          );