51Testing软件测试论坛

标题: 2个小工具帮助你解决大数据/数据库测试! [打印本页]

作者: lsekfe    时间: 2022-11-10 11:25
标题: 2个小工具帮助你解决大数据/数据库测试!
研究背景
  对于大数据测试数据库测试,经常会同MySQL、ES等数据库“打交道”。对于测试人员来说,MySQLMySQL语法简单易懂、上手方便,但是ES语法相比之下第一眼就会让人觉得“抓脑壳”(那么多字,键盘都得敲坏)。
  那有没有什么工具,安装方便、使用简单、具有一定可视化效果,且能够直接使用MySQL语法查询的呢?那当然有了,安排!
  这里给大家介绍两款操作ES的chrome插件工具:elasticsearch-head和elasticsearch-sql。可以满足大部分测试人员的测试工作需求,且安装方便、使用简单。
  工具
  elasticsearch-head
  elasticsearch-head的最大优点在于可视化操作,操作简单,结果一目了然。
  安装方式(推荐chrome插件方式)
  1)通过chrome应用商店一键安装Elasticsearch-head插件(中文官网地址:https://chrome.google.com/webstore?hl=zh-CN,英文官网地址:https://chrome.google.com/)。
  2)当存在无法访问chrome应用商店的时候,我们可以选择下载插件包的,植入chrome拓展程序文件的形式。
  首先,从https://github.com/mobz/elasticsearch-head下载zip包(如下图所示);
  其次,解压下载的压缩包;
  最后,打开chrome更多工具—>扩展程序—>加载已解压的扩展程序即可。
[attach]144725[/attach]
使用方法
  点击chrome浏览器扩展程序即可使用。
  支持功能
  1)ES集群概览
  如下图3所示,支持集群按照“地址排序”、“名称排序”、“类型排序”,支持索引升、降排序,支持索引搜索等。
  此外还可点击索引的信息查看索引状态、索引信息,以及关闭、删除、刷新索引等操作。
[attach]144726[/attach]
2)索引
  如下图所示,支持索引概览、新建索引。
[attach]144727[/attach]
3)数据预览
  如下图所示,支持数据预览,点击索引名即可预览该索引数据。
[attach]144728[/attach]
4)基本查询
  如下图所示,支持单个索引的单字段值或多字段值联合查询,支持算子term、range、fuzzy、query_string、missing,返回格式支持json、csv以及table。
[attach]144729[/attach]
5)复合查询
  如下图所示,支持POST、GET、PUT、HEAD等REST请求,结果显示支持原始json、图形视图和表格视图。
[attach]144730[/attach]
elasticsearch-sql
  elasticsearch-sql的优点在于可以将MySQL的基本语法转换成ES语法直接查询,降低了ES语法的学习成本。
  安装方式(推荐chrome插件方式)
  同elasticsearch-head一样,可以通过源码地址下载(https://github.com/shi-yuan/elasticsearch-sql-site-chrome)插件压缩包,解压后,导入浏览器扩展程序即可。
  支持功能
  1)基本SQL操作
[attach]144731[/attach]
2)地理位置查询
[attach]144732[/attach]
3)拓展ES查询功能
[attach]144733[/attach]
4)有限的join查询支持
 ES不支持join查询,但elasticsearch-sql提供了部分join操作,包括JOIN和LEFT_JOIN。但值得注意的是:
  只有支持2 个表(索引/类型)加入join;
  在“ON”上,您能使用“AND”连接;
  您必须为表使用别名(acounts a )。
  在 Where 上,不要组合两个表的决策树。
  例如,这将起作用:WHERE (a.key1>3 OR a.key1<0) AND (b.key2 > 4 OR b.key2<-1),但我们不支持:WHERE (a.key1>3 OR b.key2<0) AND (a.key1 > 4 OR b.key2<-1)。
  5)show功能
show可以展示集群和索引的细节,例如:show *可以显示所有索引,show index可以展示索引的类型等信息。
  使用方法
  点击chrome扩展程序elasticsearch-sql打开ui页面,在文本框输入SQL语句即可。如:
  1)直接SQL语法查询
使用show语法展示索引细节:
[attach]144734[/attach]
使用join查询:
[attach]144735[/attach]
2)翻译SQL语法为ES语法
在文本框输入SQL语句,点击“Explain”即可翻译为ES语句,Results会显示翻译结果,例如:
[attach]144736[/attach]
3)其他功能
elasticsearch-sql的界面功能还支持查询结果下载(ExportCSV)、查询结果搜索(Search)以及其他设置(Show Settings)等。
  总结
elasticsearch-head和elasticsearch-sql是两款小巧方便的工具,可以作为chrome插件使用,可视化的特点能够满足大部分人对ES的简单操作,此外elasticsearch-sql可以降低测试人员的学习成本,只需要简单的SQL语法即可完成ES数据库操作。
  但是,它们自身也存在一定的局限性。例如:elasticsearch-sql针对复杂的SQL语句,尤其是嵌套语句或包含子查询的语句,就显得捉襟见肘。
  希望本文的介绍能帮助你简单认识这两个小工具~











作者: bellas    时间: 2022-11-25 16:18

作者: oliver.tang    时间: 2023-3-17 11:23
感谢分享




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2