数据引入和处理
数据分析涉及到获取数据并从中查找有意义的信息和推理。 分析的范围很广,可能是为某个零售商选择理想的产品范围,或者为某家生物技术公司选择最佳候选疫苗。
例如,在一个公司中,数据分析可能涉及到获取组织生成的数据,并使用数据了解组织的表现情况以及维持业务绩效所能执行的操作。 数据分析有助于确定组织中的优势和劣势,使你能够做出适当的业务决策。
公司使用的数据可能来自许多源。 可能会有大量历史数据需要梳理,并且全新的数据一直在不断到达。 这些数据可能来自客户购买、银行交易、股票价格变动、实时天气数据、监视设备或照相机。 在数据分析解决方案中,会合并这些数据并构造一个数据仓库,可以使用它来提出(并回答)有关业务运营的问题。 构建数据仓库要求可以捕获所需的数据,并将数据整理为适当的格式。 随后便可以使用分析工具和可视化效果来检查信息以及确定趋势及其原因。
什么是数据引入?
数据引入是在数据库中获取和导入数据以便立即使用或存储的过程。 数据可以作为连续流到达,也可以分批到达,具体取决于源。 引入过程的目的是捕获和存储此数据。 此原始数据可以保存在存储库中,如数据库管理系统、文件集或是某种其他类型的快速、易于访问的存储。
引入过程也可能执行筛选。 例如,引入可能会拒绝可疑、损坏或重复的数据。 可疑数据可能是来自意外源的数据。 损坏或重复的数据可能是由于设备错误、传输失败或篡改所导致的。
在此阶段,还可以执行一些转换,将数据转换为标准形式以便以后处理。 例如,你可能希望重新设置所有日期和时间数据的格式以使用相同的日期和时间表示形式,并将所有测量数据转换为使用相同单位。 不过,这些转换必须快速执行。 请勿尝试在此阶段对数据运行任何复杂计算或聚合。
什么是数据处理?
数据处理阶段在引入和收集数据之后进行。 数据处理采用原始形式的数据,进行清理,然后将数据转换为更有意义的格式(表、图、文档等)。 结果可得到包含数据的数据库,可以用于执行查询并生成可视化效果,从而为其提供必要的形式和上下文,以便在整个组织内供计算机进行解释以及供员工进行使用。
备注
数据清理是一种通用化术语,其中涵盖一系列操作,如删除异常以及应用在引入阶段运行时耗费时间太长的筛选器和转换。
数据处理的目标是将原始数据转换为一个或多个业务模型。 业务模型按照有意义的业务实体描述数据,可以将各个项聚合在一起并汇总信息。 数据处理阶段还可以通过数据生成预测或其他分析模型。 数据处理可能十分复杂,并且可能涉及自动脚本和工具(如 Azure Databricks、Azure Functions 和 Azure 认知服务),用于对数据进行检查和重新设置格式以及生成模型。 数据分析师可以使用机器学习来帮助基于这些模型确定未来趋势。
什么是 ELT 和 ETL?
数据处理机制可以采用两种方法来检索引入的数据,处理这些数据以进行转换和生成模型,然后保存转换的数据和模型。 这些方法称为 ETL 和 ELT。
ETL 表示提取、转换和加载。 原始数据会在保存之前进行检索和转换。 提取、转换和加载步骤可以作为持续操作管道来执行。 它适用于只需要简单模型的系统,项目之间几乎不存在依赖关系。 例如,此类型的过程通常用于基本数据清理任务、删除重复数据以及对单个字段的内容重新设置格式。
另一种方法为 ELT。 ELT 是提取、加载和转换的缩写。 此过程与 ETL 的不同之处在于,数据在转换数据之前进行存储。 将转换的数据和模型写回到存储之前,数据处理引擎可以采用迭代方法,从存储中检索和处理数据。 ELT 更适合于构建依赖于数据库中多个项目的复杂模型,通常使用定期批处理。
ELT 是适用于云的可伸缩方法,因为它可以利用所提供的广泛处理能力。 ETL 更加面向流的方法更侧重于吞吐量。 但是,ETL 可以在存储数据前对它进行筛选。 通过这种方式,ETL 可帮助实现数据隐私和合规性,在数据到达分析数据模型之前消除敏感数据。
Azure 提供了多个可用于实现 ELT 和 ETL 方法的选项。 例如,如果将数据存储在 Azure SQL 数据库中,则可以使用 SQL Server Integration Services。 Integration Services 可以提取和转换来自多种源(如 XML 数据文件、平面文件和关系数据源)的数据,然后将这些数据加载到一个或多个目标。
这是一个简单的表格,显示了 ETL 和 ELT 在大多数情况下的优势。
另一种更通用的方法是使用 Azure 数据工厂。 Azure 数据工厂是基于云的数据集成服务,使你可以创建数据驱动型工作流,以便大规模协调和转换数据。 可以使用 Azure 数据工厂创建和计划数据驱动型工作流(称为管道),以便从不同的数据存储引入数据。 可以构建复杂的 ETL 过程,以通过数据流或使用计算服务(例如 Azure HDInsight Hadoop、Azure Databricks 和 Azure SQL Database)直观地转换数据。