Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

一个优秀的大数据查询平台,提供hive异步任务查询、LDAP用户、数据权限控制、历史查询任务与结果存储、邮件通知、excel下载等功能。

Notifications You must be signed in to change notification settings

funny2014/prophet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

17 Commits

Repository files navigation

Prophet是什么?

  • 一个优秀的大数据查询平台,提供hive异步任务查询、LDAP用户、表级查询权限控制、历史查询任务与结果存储、邮件通知、excel下载等功能。
  • 具有查询性能快、查询方便的特点

开发环境

  • java 8
  • springboot
  • VUE + iview

准备工作

  • 搭建hadoop集群、hive集群(强烈推荐hive-server2-2.x版本)、metastore
  • 搭建prophet会用到的mysql,推荐mysql 5.6及以上版本

安装步骤

  • 1.安装jdk,强烈推荐使用jdk 1.8
    • 安装jdk
    • 修改PATH
  • 2.下载文件(非编译安装)
    • 二进制文件下载地址:https://pan.baidu.com/s/1eSgx4fo
    • 或者下载ZIP包并解压,解压后会看到prophet_server、prophet_fe、prophet_sql三个目录
  • 3.后端服务部署
    • prophet_sql目录:连接到prophet会用到的mysql里source prophet.sql这个文件将库表建好
    • prophet_server目录:后端服务,请部署在后端服务器适当目录下
      • 修改主配置文件:prophet_server/conf/application.properties
      • 启动服务:./bin/startup.sh
      • 检查日志:./logs/prophet.log
  • 4.前端服务部署
    • prophet_fe目录:前端页面,请部署在nginx服务器或某个web服务器目录下例如/static/prophet_fe/,并参照下一步nginx配置
  • 5.前端服务nginx配置
upstream prophet{
 ip_hash;
 server 192.168.1.11:8090;
 #server 192.168.1.12:8090;
}
server {
 listen 80;
 server_name prophet.xxx.com;
 gzip on;
 gzip_min_length 1k;
 gzip_proxied expired no-cache no-store private auth;
 gzip_types text/plain text/css application/xml application/json application/javascript application/xhtml+xml;
 
 client_max_body_size 300M;
 index index.php index.html index.htm;
 access_log /log/nginx/prophet.access.log main;
 error_log /log/nginx/prophet.error.log;
 
 location ~ \.json$ {
 proxy_pass http://prophet;
 proxy_set_header Host $host;
 proxy_set_header X-Real-IP $remote_addr;
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 client_max_body_size 200m;
 client_body_buffer_size 128k;
 proxy_connect_timeout 86400;
 #因为后端hive任务执行时间较长,因此该项应该设置无限大,单位秒
 proxy_read_timeout 259200; 
 proxy_buffer_size 4k;
 }
 location / {
 root "/static/prophet_fe/";
 }
}

配置完重启nginx即可

  • 6.配置域名解析prophet.xxx.com到该nginx所在ip
  • 7.打开浏览器,访问http://prophet.xxx.com/,输入用户名和密码进行登录。
    • 如果配置了LDAP:则填写LDAP账号,prophet内置用户系统不生效。
    • 如果配置了prophet内置用户系统:则默认初始化管理账号为admin1,密码为admin1
  • 8.开始使用吧!

系统截图

  • 1.登录页面
  • 2.主查询界面
  • 3.所有机密表展示
  • 4.标记哪些表成为机密表
  • 5.内置用户系统管理

性能调优

  • prophet JVM能容纳的最大并发线程数NThreads = CPU核心数 * 总CPU利用率 * (1 + CPU等待时间/CPU处理时间)
    • 如果一个任务CPU处理时间为100ms,99ms是IO等待时间,系统8核心,CPU利用率50%,则NThreads = 8 * 50% * (1 + 99/100) = 7.96 ~ 8
    • 该指标可用于估算单进程prophet最大可运行的并发任务数
    • 如果指标不够则需要扩容

联系方式:

QQ群:669833720

加群请注明来历

About

一个优秀的大数据查询平台,提供hive异步任务查询、LDAP用户、数据权限控制、历史查询任务与结果存储、邮件通知、excel下载等功能。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 97.7%
  • Shell 2.3%

AltStyle によって変換されたページ (->オリジナル) /