【Elastic Engineering】使用 Elastic Stack 来分析奥运数据(三)

简介: 在我们的数据中,虽然我们没有经纬度数据,但是我们发现有一个叫做 NOC 的字段。它代表运动员来自那个国家。在我之前的文章 “Kibana:通过 Elastic Maps 中的全局行政区层为 IP 分析带来新见解”,我展示了如何使用行政区来展示数据。针对我们的奥运情况,我们可以展示一下奥运运动员分别在哪些国家。


这是继上一篇文章 “使用 Elastic Stack 来分析奥运数据(二)” 的续篇。这是一个连续三篇文章的系列文章:




在之前的文章中,我详细地介绍了如何摄入奥运数据,并且可视化数据。在今天的练习中,我将使用 Maps 来可视化数据。


在我们的数据中,虽然我们没有经纬度数据,但是我们发现有一个叫做 NOC 的字段。它代表运动员来自那个国家。在我之前的文章 “Kibana:通过 Elastic Maps 中的全局行政区层为 IP 分析带来新见解”,我展示了如何使用行政区来展示数据。针对我们的奥运情况,我们可以展示一下奥运运动员分别在哪些国家。


参赛运动员分布


我们接上次的练习。在 Dashboard 中点击 Create visualization:








从上面我们可以看出来美国的颜色比较深,显示参加比赛的人员比较多。相反,在地球的有些地方,我们看到没有运动员或者较少的运动员参加奥运会。


点击上面的 Save & return:



从上面,我们可以看出来共有18853个美国人参加奥运会。这确实是一个比较大的数据。


金牌分别在哪些国家


有时,我们更关心这些金牌分布在哪些国家。由于 Maps 只能作用于索引上,而且它没有 filter 可以使用。那么我们该怎么办呢?一种办法是把 olympic 这个索引 reindex 成为另外一个索引,把所有金牌的文档放到另外一个索引中。


POST _reindex
{
  "source": {
    "index": "olympic",
    "query": {
      "match": {
        "medal": "Gold"
      }
    }
  },
  "dest": {
    "index": "olympic_gold_medals"
  }
}


在上面,我们把数据 reindex 到一个叫做 olympic_gold_medals 里去。我们需要创建一个 view data。这样做的话,如果我们的数据发生改变,我们需要每次都要这么做。

我们另外一种方法是创建一个 alias:


POST _aliases
{
  "actions": [
    {
      "add": {
        "index": "olympic",
        "alias": "medals",
        "filter": {
          "bool": {
            "filter" : [
              {
                "term": {
                  "medal": "Gold"
                }
              }
            ]
          }
        }
      }
    }
  ]
}


那么这个 alias medals 将含有所有金牌的文档,比如我们查询:


GET medals/_count


它显示:


{
  "count" : 13372,
  "_shards" : {
    "total" : 1,
    "successful" : 1,
    "skipped" : 0,
    "failed" : 0
  }
}


这个和我们使用 Discover 查看到的金牌数是一模一样的:



我们接下来需要为这个 alias 创建一个 data view:




这样我们就创建了一个叫做 medals 的 data view。


和之前一样,我们选择 Maps 来可视化数据:








从上面,我们可以看出来美国已经得了315块金牌。在世界的很多其它地方有的还没有金牌呢。



其实从地图上的数字我们就可以看到每个国家得了多少块金牌。 点击上面的 Save & return 按钮:



好了,今天的展示就到这里。希望大家对 Elastic Maps 有更多的认识和了解。


相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
相关文章
|
数据建模 C++ 芯片
栅极驱动 IC 自举电路的设计与应用指南
硬件工程师应该都用过buck,一些buck芯片会有类似下面的自举电容,有时还会串联一个电阻。 那么你是否对这个自举电路有深入的了解呢?比如,这个电容的容值大小该怎么选?大了或者小了会影响什么?耐压要求是怎么样的? 最近呢,正好看到ON Semiconductor的一个文档AN-6076,对于自举电路讲得相当的详细了,想深入了解的兄弟可以自己的仔细的读读,源文档可以自己去网上搜,也可以去我的网盘下载(文末会提供下载链接)。 1. 介绍 本文讲述了一种运用功率型MOSFET和IGBT设计高性能自举式栅极驱动电路的系统方法,适用于高频率,大功率及高效率的开关应用场合。不同经验的电力电子工程师
758 2
|
前端开发 JavaScript 数据可视化
推荐! 使用react-cropper-pro实现图片裁切压缩上传
推荐! 使用react-cropper-pro实现图片裁切压缩上传
669 0
|
数据安全/隐私保护 Docker 容器
ElasticStack----使用Docker方式安装单节点的8.1.3版本的ElasticSearch
ElasticStack----使用Docker方式安装单节点的8.1.3版本的ElasticSearch
2115 0
ElasticStack----使用Docker方式安装单节点的8.1.3版本的ElasticSearch
|
人工智能 数据可视化 UED
DragAnything:视频PS来了!开源AI控制器让视频「指哪动哪」:拖拽任意物体轨迹,多对象独立运动一键生成
DragAnything 是快手联合浙江大学和新加坡国立大学推出的基于实体表示的可控视频生成方法,支持多实体独立运动控制、高质量视频生成,并在 FID、FVD 和用户研究等评估指标上达到最佳性能。
653 10
DragAnything:视频PS来了!开源AI控制器让视频「指哪动哪」:拖拽任意物体轨迹,多对象独立运动一键生成
|
Nacos 微服务
项目实战3——feign调用404
项目实战3——feign调用404
586 0
|
存储 JSON Java
如何对 Apache JMeter 测试脚本进行 Debug?(下)
如何对 Apache JMeter 测试脚本进行 Debug?
如何对 Apache JMeter 测试脚本进行 Debug?(下)
|
前端开发
CSS动画变形宝典:Transform属性,打造动态视觉盛宴!
CSS动画变形宝典:Transform属性,打造动态视觉盛宴!
|
机器学习/深度学习 数据采集 算法
探索机器学习在金融风控中的应用
本文深入探讨了机器学习技术在金融风险控制领域的应用与挑战。通过分析当前金融市场的风险类型及传统风控方法的局限性,本文详细阐述了如何利用机器学习算法提升风控效率和准确性。文中不仅分享了机器学习模型在实际风控场景中的成功案例,还讨论了实施过程中可能遇到的技术挑战和策略选择问题。最后,本文对机器学习在金融风控领域的未来发展趋势进行了展望,旨在为金融科技从业者提供有价值的参考。
555 2
|
iOS开发
iOS App Store 上传项目报错 缺少隐私政策网址 (URL) 解决方法
iOS App Store 上传项目报错 缺少隐私政策网址 (URL) 解决方法
iOS App Store 上传项目报错 缺少隐私政策网址 (URL) 解决方法

热门文章

最新文章