绝佳的充电时间:自我隔离时何不探索这些数据

2020-04-28 07:02 佚名

疫情肆虐,许多国家都发布了居家隔离令,强制要求群众待在家里。居家令何时解除尚未可知,该如何打发独自在家的时间呢?除了时常遛狗外,笔者还准备了许多流媒体服务、乐高玩具、拼图、电子游戏和很多新技术来学习。

笔者的待学技术列表榜首是一些项目中未曾用到的技术,但在工作场合中会用到,包括Docker、Airflow 和Elasticsearch。

这些技术生态系统中的每一个都拥有稳定的社区,如果你对数据科学和机器学习感兴趣,那么每一个都值得研究。本文将对每种技术进行简要概述,以便你决定从哪个开始研究。

笔者曾在文章和视频中时常见到Docker,但因为它看起来很复杂,就没花时间深入研究。但由于这项技术广泛应用于办公室场合,导致笔者最终不得不使用它,并深陷其中无法自拔。

Docker是可通过容器化概念和实践来简化并加快从开发到部署全部过程的一项技术。2013年Docker作为开源软件发布,现已成为一个非常受欢迎的工具。据统计,约50%的全球组织在使用容器化应用程序。这让笔者意识到,它是一项急需技能,也是笔者头脑“工具箱”的一大补充。

Docker接受能力、功能如此强大的原因是,它可以将一个应用程序及其依赖项打包到一个容器中,容器的内容可以在 Docker Hub上共享,并可以在任一Linux服务器上运行。这极大地简化了部署!

Docker Hub与GitHub的相似之处在于,它们都是存储库。但DockerHub并不重新发布代码文件,而是重新发布Docker的文件和容器。

容器是Docker的关键组成部分之一,也是笔者在进入技术领域后学到的第一件事:容器是一个标准的软件单元,它能打包代码及其所有依赖项,使应用程序从一个计算环境快速安全地运行到另一个计算环境。

与虚拟机(VM)不同,Docker容器不消耗虚拟化硬件所需的资源,这使其更加轻巧和灵活。为使用主机操作系统内核而设计的容器,都有独立的用户空间,因此多个容器可以在一台主机上运行,如下图所示:

还有很多待做事项,Docker也在继续发展,一个优秀的团队支撑着它。尽管只使用了几天,但笔者喜欢它的易操作性。

虽然用Windows使用Docker越来越容易,但Docker是为Linux设计的,所以笔者一直在Ubuntu和CentOS上使用它。你很容易就能找到便宜的在线Linux虚拟机。

作为一个在Airbnb上创建的开源数据工作流程管理平台,Airflow允许用户通过 有向无环图(DAGs),用Python编程方式定义和调度途径和工作流程。它帮助定义和创新了工作流程,即代码行业。

工作流程可以通过用户界面(UI)进行监控。它可以轻易调出记录并查看DAG失败的地方,这使得用户界面非常有用。

让Airflow如此吸引人并被数据科学界所接受的原因是,一个单一的Python脚本能被用于定义任务和依赖关系,且Airflow能管理DAGs的实际调度和执行。可以使用触发器来运行DAGs,或者按照定义的计划运行。因为它是Python,所以它能与其他库和其他Python功能的使用很好地结合在一起。

为使ApacheAirflow正常运行,文档推荐使用Pip来安装。如在一台Linux机器上使用,请确保使用python3-dev 软件包正确安装Airflow。例如,Ubuntu将是这样的:

Airflow有一个坚实的开发社区,也是数据科学和数据工程领域的工具。如果熟悉Python并执行大量数据工程或ETL的话,它绝对值得研究。

其核心是一个全文搜索引擎,它使用Java和ApacheLucene库开发。它以JSON格式存储非结构化数据(如NoSQL),是一个高度可扩展的解决方案,允许高效存储、搜索和分析大数据。

根据数据库引擎排名,Elasticsearch是最受欢迎的搜索引擎技术之一,这表明它是一个值得了解并能满足需求的有价值的技能!

如寻找一个可以消磨时间的科技堆栈,弹性生态系统不只限于搜索功能。弹性堆栈由名为Kibana的数据分析平台和名为Logstash的数据收集器和记录引擎以及名为Beats的数据运送者集合组成。 它们通常被称为弹性堆栈,有许多功能和工具,包括用于无监督学习的内置机器学习算法!

另一研究弹性堆栈的原因是,它可以轻松地与Python进行交互。弹性搜索提供了RESTAPI,你可以使用PythonRequests 库与Elasticsearch集群进行交互。此外,API 包装器可以使用pip进行安装:

这三种都是受欢迎的生态系统,有稳定的社区,是满足数据科学技术堆栈中特定需求的工具。

对开发操作(Dev Ops)感兴趣的话,Docker是一个非常棒的学习工具;如果关注ETL工作流程或数据工程途径的话,Airflow是一个很好的学习工具;Elastic Stack 是一个搜索非结构化数据的强大平台,是记录和分析大数据的工具。对有一些Python和Linux经验的人来说,每种技术都很容易设定。

关键在于你需要选择一种,并坚持学习下去,要知道,掌握其中任何一项技术所需要的时间都不在少数。

厦门珍夏餐饮管理有限公司

地址:厦门市海沧街道沧林二路561号603室

售前热线:0592-6080427

邮箱:4839658@qq.com