搭建即席查询平台

1.环境介绍
  三台机器分布式查询
  hadoop2.6.4+hive1.2.2+presto0.173+yanagishima5.0+jdk1.8.0_121
2.安装
  hadoop和hive的安装部署略过。
  2.1presto安装
  下载prestoy和discovery安装文件并解压到相应路径
  mkdir -p /data/hadoop/presto
  cd /data/hadoop/presto
  tar -zxvf ~/install_package/presto-server-0.173.tar.gz
  tar -zxvf ~/install_package/discovrey_server-1.16.tar.gz
  配置discovery
  cd discovery-server-1.16
  创建etc目录和data目录
  mkdir etc data
  cd etc
  创建相应的配置文件
  echo "http-server.http.port=8412" >config.properties
  echo "-server
      -Xmx8G
      -XX:+UseConcMarkSweepGC
      -XX:+ExplicitGCInvokesConcurrent
      -XX:+AggressiveOpts
      -XX:+HeapDumpOnOutOfMemoryError
      -XX:OnOutOfMemoryError=kill -9 %p">jvm.config
  echo "node.environment=presto
        node.id=dddddddd-dddd-dddd-dddd-dddddddddddd
        node.data-dir=/data/hadoop/presto/discovery-server-1.16/data">node.properties
  至此discovery部署完成


  进入presto0.173的安装目录并创建etc目录和data目录
  cd presto-server-0.173
  mkdir etc data
  cd etc
  创建相应的配置文件
  echo "coordinator=true
        datasources=jmx,hive
        node-scheduler.include-coordinator=false
        http-server.http.port=8411
        query.max-memory=12GB
        discovery-server.enabled=true
        discovery.uri=http://namenode:8412">config.properties
  echo "-server
        -Xmx16G
        -XX:+UseConcMarkSweepGC
        -XX:+ExplicitGCInvokesConcurrent
        -XX:+CMSClassUnloadingEnabled
        -XX:+AggressiveOpts
        -XX:+HeapDumpOnOutOfMemoryError
        -XX:OnOutOfMemoryError=kill -9 %p
        -XX:PermSize=150M
        -XX:MaxPermSize=150M
        -XX:ReservedCodeCacheSize=150M">jvm.config
  echo "com.facebook.presto=DEBUG">log.properties
  echo "node.environment=presto
        node.id=11111111-1111-1111-1111-111111111111
        node.data-dir=/data/hadoop/presto/presto-server-0.173/data">node.properties
  创建catalog目录
  mkdir catalog
  cd catalog
  echo "connector.name=hive-hadoop2
        hive.metastore.uri=thrift://namenode:9083
        hive.config.resources=/data/hadoop/hadoop-2.6.4/etc/hadoop/core-site.xml,/data/hadoop/hadoop-2.6.4/etc/hadoop/hdfs-site.xml">hive.properties
  echo "connector.name=jmx">jmx.properties
  将presto-server-0.173分发到两个子节点的相应目录,并修改node.properties文件里的node_id。node_id为节点的唯一标识。不可重复。
  修改两个子节点的config.properties
  echo "coordinator=false
        datasources=jmx,hive
        http-server.http.port=8411
        query.max-memory=12GB
        discovery.uri=http://namenode:8412">config.properties
  回到主节点启动persto服务
  bin/launcher start
  观察日志是否正常启动。此处遇到一个坑,提示no factory to create hive-hadoop2
  我的解决方案是重新下了hive-hadoop2里的jar然后覆盖plugins里的相应目录
  下载地址:https://repo1.maven.org/maven2/com/facebook/presto/presto-hive-hadoop1/0.173/presto-hive-hadoop1-0.173.zip
  此时presto安装完毕
  下载presto-cli-0.170-executable.jar到presto-server-0.173目录
  cp presto-cli-0.170-executable.jar presto
  启动客户端
  ./presto --server localhost:8411 --catalog hive --schema default
  2.2 yanagishima安装
  在github下载相应的文件
  git clone https://github.com/wyukawa/yanagishima
  修改相应的配置文件yanagishima.properties
  cp yanagishima.properties yanagishima.properties.bak
  echo "jetty.port=8888
        presto.query.max-run-time-seconds=1800
        presto.max-result-file-byte-size=1073741824
        presto.datasources=hive
        presto.coordinator.server.hive=http://${namenode:ip}:8411
        presto.redirect.server.hive=http://${namenode:ip}:8411
        catalog.hive=hive
        schema.hive=ods
        select.limit=500
        audit.http.header.name=some.auth.header
        to.values.query.limit=500
        check.datasource=false">yanagishima.properties
  注:无论是参数还是值有hive的地方均是变量,需根据自己环境情况填写。
  启动服务
  bin/yanagishima-start.sh

猜你喜欢

转载自blog.csdn.net/Gospelanswer/article/details/75403225