51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1273|回复: 2
打印 上一主题 下一主题

[原创] 2个小工具帮助你解决大数据/数据库测试!

[复制链接]
  • TA的每日心情
    擦汗
    昨天 09:02
  • 签到天数: 1042 天

    连续签到: 4 天

    [LV.10]测试总司令

    跳转到指定楼层
    1#
    发表于 2022-11-10 11:25:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    研究背景
      对于大数据测试数据库测试,经常会同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更多工具—>扩展程序—>加载已解压的扩展程序即可。

    使用方法
      点击chrome浏览器扩展程序即可使用。
      支持功能
      1)ES集群概览
      如下图3所示,支持集群按照“地址排序”、“名称排序”、“类型排序”,支持索引升、降排序,支持索引搜索等。
      此外还可点击索引的信息查看索引状态、索引信息,以及关闭、删除、刷新索引等操作。

    2)索引
      如下图所示,支持索引概览、新建索引。

    3)数据预览
      如下图所示,支持数据预览,点击索引名即可预览该索引数据。

    4)基本查询
      如下图所示,支持单个索引的单字段值或多字段值联合查询,支持算子term、range、fuzzy、query_string、missing,返回格式支持json、csv以及table。

    5)复合查询
      如下图所示,支持POST、GET、PUT、HEAD等REST请求,结果显示支持原始json、图形视图和表格视图。

    elasticsearch-sql
      elasticsearch-sql的优点在于可以将MySQL的基本语法转换成ES语法直接查询,降低了ES语法的学习成本。
      安装方式(推荐chrome插件方式)
      同elasticsearch-head一样,可以通过源码地址下载(https://github.com/shi-yuan/elasticsearch-sql-site-chrome)插件压缩包,解压后,导入浏览器扩展程序即可。
      支持功能
      1)基本SQL操作

    2)地理位置查询

    3)拓展ES查询功能

    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语法展示索引细节:

    使用join查询:

    2)翻译SQL语法为ES语法
    在文本框输入SQL语句,点击“Explain”即可翻译为ES语句,Results会显示翻译结果,例如:

    3)其他功能
    elasticsearch-sql的界面功能还支持查询结果下载(ExportCSV)、查询结果搜索(Search)以及其他设置(Show Settings)等。
      总结
    elasticsearch-head和elasticsearch-sql是两款小巧方便的工具,可以作为chrome插件使用,可视化的特点能够满足大部分人对ES的简单操作,此外elasticsearch-sql可以降低测试人员的学习成本,只需要简单的SQL语法即可完成ES数据库操作。
      但是,它们自身也存在一定的局限性。例如:elasticsearch-sql针对复杂的SQL语句,尤其是嵌套语句或包含子查询的语句,就显得捉襟见肘。
      希望本文的介绍能帮助你简单认识这两个小工具~










    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

    x
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-8 17:12 , Processed in 0.060507 second(s), 23 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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