2 系统开发技术
2.1 PYTHON 简介
Python 不仅可以取代 NCL,还可以实现 NCL 不具备的许多功能,极大地改善
了用户体验,这已成为未来的趋势。与 Highcharts 和 eCharts 等 Web 前端可视化
工具相比,Python 在数据可视化领域更为专业。
Python 目前支持使用第三方库,如 netCDF4、Numpy、Matplotlib、Canopy
和 Xarry,以解析和可视化 NetCDF 格式的数据,从而使 Pythone 易于处理数据。
2.2 Hadoop 介绍
Hadoop 实现了一个分布式文件系统(Hadoop Distributed File System),简称
HDFS。HDFS 有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;
而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超
大数据集(large data set)的应用程序。HDFS 放宽了(relax)POSIX 的要求,可
以以流的形式访问(streaming access)文件系统中的数据。
Hadoop 的框架最核心的设计就是:HDFS 和 MapReduce。HDFS 为海量的数
据提供了存储,而 MapReduce 则为海量的数据提供了计算。主要有以下优点:
(1)高可靠性。Hadoop 按位存储和处理数据的能力值得人们信赖。
(2)高扩展性。Hadoop 是在可用的计算机集簇间分配数据并完成计算任务的,
这些集簇可以方便地扩展到数以千计的节点中。
(3)高效性。Hadoop 能够在节点之间动态地移动数据,并保证各个节点的动
态平衡,因此处理速度非常快。高容错性。Hadoop 能够自动保存数据的多个副本,
并且能够自动将失败的任务重新分配。
(4)低成本。与一体机、商用数据仓库以及 QlikView、Yonghong Z-Suite 等
数据集市相比,hadoop 是开源的,项目的软件成本因此会大大降低。
2.3 Scrapy 介绍
Scrapy 是一个抓取系统数据和提取结构化数据的框架,它可以应用在广泛的
应用中:Scrapy 通常用于一系列应用,包括数据挖掘、信息处理或存储历史数据。
使用 Scrapy 框架实现一个爬虫程序通常非常简单,抓取给定系统的内容或图像。
虽然 Scrapy 是为屏幕抓取(或者更准确地说是网页抓取)而设计的,但它也可
以用于访问 api 以提取数据。