设为首页 收藏本站
查看: 1114|回复: 0

[经验分享] DW(六):polybase访问Azure Blob Storage

[复制链接]
累计签到:2 天
连续签到:1 天
发表于 2017-6-30 08:54:33 | 显示全部楼层 |阅读模式
  目录:


  • 连接hadoop配置语法
  • 配置hadoop连接
  • Pushdown配置
  • Create external tables for Azure blob storage
  连接hadoop配置语法:   

  global configuration settings for PolyBase Hadoop and Azure blob storage connectivity, Syntax:


  • sp_configure:  List all of the configuration options
  • 配置与hadoop连接语法:



  • sp_configure [ @configname = ] 'hadoop connectivity',  
    [ @configvalue = ] { 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 }  
    [;]  
    RECONFIGURE  
    [;]
        



    • Option 0: Disable Hadoop connectivity
    • Option 1: Hortonworks HDP 1.3 on Windows Server
    • Option 1: Azure blob storage (WASB[S])
    • Option 2: Hortonworks HDP 1.3 on Linux
    • Option 3: Cloudera CDH 4.3 on Linux
    • Option 4: Hortonworks HDP 2.0 on Windows Server
    • Option 4: Azure blob storage (WASB[S])
    • Option 5: Hortonworks HDP 2.0 on Linux
    • Option 6: Cloudera 5.1, 5.2, 5.3, 5.4, and 5.5 on Linux
    • Option 7: Hortonworks 2.1, 2.2, and 2.3 on Linux
    • Option 7: Hortonworks 2.1, 2.2, and 2.3 on Windows Server
    • Option 7: Azure blob storage (WASB[S])      



  • 示例代码:


    • 显示所有可用的配置列表: EXEC sp_configure;
    • 显示某个配置项的配置信息:  EXEC sp_configure @configname='hadoop connectivity';
    • 设置配置项示例语法如下:      



    • sp_configure @configname = 'hadoop connectivity', @configvalue = 7;  
      GO  
      RECONFIGURE  
      GO   

        


  配置hadoop连接



  • 在本节示例中,连接HDInsight3.2集,对应关系如下:
  • DSC0000.png
  • 配置polybase连接配置项信息信息如下:



  • sp_configure @configname = 'hadoop connectivity', @configvalue = 7;  
    GO  
    RECONFIGURE  
    GO

      

  • 命令行:  services.msc, 重启下面的服务

    • SQL Server PolyBase Data Movement Service
    • SQL Server PolyBase Engine

  Pushdown配置:



  • To improve query performance, enable pushdown computation to a Hadoop cluster


  • Find the file yarn-site.xml in the installation path of SQL Server. Typically, the path is: C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Binn\Polybase\Hadoop\conf
  • On the Hadoop machine, find the analogous(类似) file in the Hadoop configuration directory. In the file, find and copy the value of the configuration key yarn.application.classpath
  • On the SQL Server machine, in the yarn-site.xml file, find the yarn.application.classpath property. Paste the value from the Hadoop machine into the value element.



  • $HADOOP_CONF_DIR,/usr/hdp/current/hadoop-client/*,/usr/hdp/current/hadoop-client/lib/*,/usr/hdp/current/hadoop-hdfs-client/*,/usr/hdp/current/hadoop-hdfs-client/lib/*,/usr/hdp/current/hadoop-yarn-client/*,/usr/hdp/current/hadoop-yarn-client/lib/*
      

  Create external tables for Azure blob storage



  • The Elastic(弹性) Database query feature relies on(依靠) the these four DDL statements. Typically, these DDL statements are used once or rarely when the schema of your application changes



    • [CREATE MASTER KEY]    (https://msdn.microsoft.com/library/ms174382.aspx)
    • [CREATE CREDENTIAL]    (https://msdn.microsoft.com/library/ms189522.aspx)
    • [CREATE DATABASE SCOPED CREDENTIAL]   (https://msdn.microsoft.com/library/mt270260.aspx)
    • [CREATE/DROP EXTERNAL DATA SOURCE]    (https://msdn.microsoft.com/library/dn935022.aspx)
    • [CREATE/DROP EXTERNAL TABLE]                (https://msdn.microsoft.com/library/dn935021.aspx)



  • You can use the following syntax to drop the master key and credentials



    • DROP CREDENTIAL <credential_name> ON DATABASE;
    • DROP DATABASE SCOPED CREDENTIAL <credential_name>;
    • DROP MASTER KEY;



  • 模拟简单文本数据,如下:
  •        DSC0001.png
  • 将文本文件上传到 Azure blob storage, 如下图:
  • DSC0002.png
  • 远程连接ploybase1, 打开ssms(注:此版本需单独安装),执行脚本如下:



  • CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'Password01!';
    CREATE DATABASE SCOPED CREDENTIAL JNAzureCredit   
    WITH IDENTITY = 'zhushy', Secret =  XXXX';  /*存储访问Key*/

    CREATE EXTERNAL DATA SOURCE JNAzureStorage with (  
    TYPE = HADOOP,   
    LOCATION ='wasb://<blob_container_name>@<azure_storage_account_name>.blob.core.chinacloudapi.cn',  
    CREDENTIAL = JNAzureCredit  
    );

    CREATE EXTERNAL FILE FORMAT TextFileFormat WITH (  
    FORMAT_TYPE = DELIMITEDTEXT,   
    FORMAT_OPTIONS (FIELD_TERMINATOR =' ', USE_TYPE_DEFAULT = TRUE))
    CREATE EXTERNAL TABLE [dbo].[hospital] (  
    [ID] varchar(128) NULL,
    [name] varchar(128) null
    )  
    WITH (LOCATION='/zhu/data1.txt',   
    DATA_SOURCE = JNAzureStorage,  
    FILE_FORMAT = TextFileFormat  
    );  
      

  • 验证数据,输入如下SQL: select * from [dbo].[hospital] ,如下图,则OK
  • DSC0003.png
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-389597-1-1.html 上篇帖子: Azure SQL Database (19) Stretch Database 概览 下篇帖子: Add Office 365 Azure Directory into Windows Azure
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表