惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - 聂微东
C
CXSECURITY Database RSS Feed - CXSecurity.com
H
Help Net Security
P
Proofpoint News Feed
V
Visual Studio Blog
WordPress大学
WordPress大学
Recent Announcements
Recent Announcements
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
T
Tailwind CSS Blog
Hugging Face - Blog
Hugging Face - Blog
GbyAI
GbyAI
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
MyScale Blog
MyScale Blog
美团技术团队
Stack Overflow Blog
Stack Overflow Blog
Recorded Future
Recorded Future
Blog — PlanetScale
Blog — PlanetScale
宝玉的分享
宝玉的分享
H
Hackread – Cybersecurity News, Data Breaches, AI and More
I
InfoQ
Microsoft Security Blog
Microsoft Security Blog
The Register - Security
The Register - Security
Y
Y Combinator Blog
Last Week in AI
Last Week in AI
F
Full Disclosure
Jina AI
Jina AI
博客园 - 司徒正美
小众软件
小众软件
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
S
SegmentFault 最新的问题
量子位
aimingoo的专栏
aimingoo的专栏
Apple Machine Learning Research
Apple Machine Learning Research
U
Unit 42
Vercel News
Vercel News
L
LangChain Blog
云风的 BLOG
云风的 BLOG
The GitHub Blog
The GitHub Blog
B
Blog RSS Feed
有赞技术团队
有赞技术团队
腾讯CDC
Martin Fowler
Martin Fowler
博客园 - 叶小钗
博客园 - 三生石上(FineUI控件)
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
D
DataBreaches.Net
Engineering at Meta
Engineering at Meta
F
Fortinet All Blogs
M
MIT News - Artificial intelligence

博客园 - 小潘

GreenPlum tidb 性能比较 hbase master 无法启动 hbase 集群写入能力优化-预分区、TTL的应用 TiSpark 初级应用 ETL-kettle 核心执行逻辑 HBase 写入优化 HBase ttl 验证 大数据多维分析平台的实践 TiDB在特来电的探索 Druid 基础使用-操作篇(Imply ) Druid安装-单机 phoenix 索引修复-基本流程 Phoenix -修复表索引 oracle sql跟踪及‘相关问题 数据交换平台 reportview 实践学习 linq 排序 学习一 开始学习LINQ
Druid 基础使用-操作篇(Pivot、plyql)
小潘 · 2016-11-25 · via 博客园 - 小潘

一、Pivot  --9095 端口
 

二、基本sql 使用

 。plysql--   http://plywood.imply.io/plyql  (下面的端口应该是8082,我这个地方做了端口转换) 

执行sql脚本(bin/plyql -h *.*.195.60:8085 -q 'SHOW TABLES')
[teld@Druid imply-1.3.1]$ bin/plyql -h *.*.195.60:8085 -q 'SHOW TABLES'

  显示表结构( bin/plyql -h *.*.*.60:8085 -q 'DESCRIBE pageviews')

 简单查询(bin/plyql -h *.*.195.60:8085 -q 'SELECT user as us,count() as cnt FROM pageviews   GROUP BY user ORDER BY cnt DESC;')

 聚合汇总( bin/plyql -h *::8085 -q 'SELECT user as us,count() as cnt FROM pageviews   GROUP BY user ORDER BY cnt DESC;')

   

    时间过滤(bin/plyql -h *:8085 -q 'SELECT user as us,count() as cnt FROM pageviews where "2015-09-12T00:00:00" <= __time AND __time < "2019-09-13T00:00:00"GROUP BY user ORDER BY cnt DESC;')

httppost
启动监听[teld@Druid imply-1.3.1]$ bin/plyql -h *:8085 -i P2Y --json-server 8096

PlyQL server listening on port: 8096

Got SQL: SELECT user as us,count() as cnt FROM pageviews

Got SQL: SELECT user as us,count() as cnt FROM pageviews GROUP BY user ORDER BY cnt DESC

查询:

[root@Druid imply-1.3.1]# curl -X POST 'http://*:8096/plyql' -H 'content-type: application/json' -d '{"sql": "SELECT user as us,count() as cnt FROM pageviews GROUP BY user ORDER BY cnt DESC"}'

c# 调用http进行数据查询

public void QueryData()
        {
            string sql = "{\"sql\": \"SELECT user as us,count() as cnt FROM pageviews GROUP BY user ORDER BY cnt DESC\"}";
            string url = "http://*:8096/plyql";
            string data = PostHttp(url, sql);
            DruiQueryResult result = JsonConvert.DeserializeObject<DruiQueryResult>(data);
            DataTable dt = new DataTable();
            foreach(var item in result.result)
            {
                foreach(var childItme in item.Keys)
                {
                    dt.Columns.Add(childItme,typeof(string));
                }
                break;
            }
            DataRow dr = null;
            foreach (var item in result.result)
            {
                dr = dt.NewRow();
                foreach (var childItme in item)
                {
                    dr[childItme.Key] = childItme.Value;
                }
                dt.Rows.Add(dr.ItemArray);
            }
            Assert.IsTrue(dt.Rows.Count>100);

        }

View Code