蓝盟IT外包,云数据仓库雪花,全景图和记录区

发布者:上海IT外包 发布时间:2019/9/23 9:14:43来源:www.linemore.com

      Snowflake,Panoply和Repods是三个云服务,可让您提取,处理,存储和访问托管的云基础架构中的数据。与只能提供数据处理和处理的其他云服务不同,这些平台可以为大量数据提供计算和存储资源,这就是为什么我们经常称其为云数据存储平台。
  以数据存储和处理为主要功能的数据存储服务为管理和常规数据分析提供了坚实的云平台基础。由于这三个平台的受众并不相同,因此我们可能无法直接直接比较它们的所有方面。特别是对于Panoply和Snowflake,我们仅分析他们在线披露的信息。
  架构
  Panoply使用Amazon Redshift数据服务,Elasticsearch数据库,Amazon S3存储和Spark计算架构。 Amazon Redshift是一个可扩展数据库,该数据库派生自Postgres数据库体系结构并添加了集群功能。但是,它只能作为Amazon Web服务运行。
  该架构允许通过向群集添加更多节点来进行在线扩展。由于不同的Panoply客户可以共享同一基础结构,因此当在客户端上生成高流量查询时,其他客户查询的性能可能会受到影响。使用Panoply,您可以创建多个Amazon Redshift数据库。因此,从某种意义上说,尽管这些数据库具有独立的存储区域,但它们仍共享相同的查询引擎(DBMS系统)。
  尽管Snowflake没有详细披露其底层体系结构,但它通常可以通过可伸缩的在线平台清楚地分离存储和计算资源。 Snowflake允许您在同一帐户中创建和管理多个数据存储。您可以为每个商店详细配置计算集群的大小,并为每个商店配置自动在线扩展的规则,即在不中断服务的情况下进行扩展(在计算机上使用更多资源)以及水平扩展(引入更多的计算资源)。当然,为了确保每个仓库的性能稳定,Snowflake数据仓库不共享计算资源,并且使用外部工具直接访问数据库。
  Repods基础结构包括本地PostgreSQL(10之前的版本)和TimescaleDB。该数据库可用于长时间的分区数据,存储集群管理,扩展存储以及许多与数据仓库相关的服务。当前,尽管Repods可以在PB级提供可靠的I/O速度和在线扩展,但是其扩展计算机资源的过程仍然需要几秒钟的数据仓库停机时间,并且没有弹性。您可以为每个帐户创建,管理和共享多个数据存储。但是,平台上数据存储的不同实例主要取决于尚未与集群中任何其他实例共享的专用资源,因此可实现稳定的查询性能。导入界面
  我们将导入接口分为以下四个部分:
  云数据仓库雪花,全景图和记录区
  文件:仍然是最常见的数据形式。
  网络服务:网络上有许多相关数据。
  数据库:通常,所有类型的数据都存储在不同组织的传统数据库中,并且组织通常无法访问组织对这些数据库的访问,因此无法使用它们直接在云数据平台上。可以将Web服务放在本地数据库和云服务之间,以处理与安全相关的问题,例如访问控制。当然,另一种方法是在重定向主机上安全地使用ssh-tunneling。
  实时传输:实时传输是由多个消息传递路由器传递的。随着物联网的出现,它们将变得越来越重要。
  Panoply在所有四个区域中提供了许多导入选项。但是,根据我们掌握的信息,Panoply无法根据自动化计划从云或SFTP中的多维数据集中提取文件;也无法根据计划请求RESTful URL。
  尽管Snowflake仅专注于上传文件(例如cat.II),但是它允许您从云存储中上传文件(例如Amazon S3或Microsoft Azure)。 Snowflake使您可以控制新文件的到达并按时上载它们。
  在Repods中,您可以上传文件,从S3存储桶上传文件或从外部SFTP服务器上传数据。 Repods并未为所有可能的Web服务提供单独的接口,但确实提供了可用于接受任何类型的服务(例如Socrata)的Web请求的通用API。尽管用户无法在数据库之间导入/导出数据,但是他们可以通过Repod在消息路由器上订阅和接收不同的主题(当前仅WAMP),以提取微型批次的数据。
  ETL数据转换
  通常,必须先转换导入到数据平台的数据,然后才能在数据流中对其进行分析。此过程通常称为ETL(提取,转换,加载),包括为原始数据创建表,分配数据类型,过滤值,联接现有数据,创建派生的列/行以及各种自定义逻辑。适用于原始数据。
  创建和管理ETL的过程通常称为数据工程。这个过程需要很多时间和工作。一些百货商店通常包含数千个具有不同阶段,依赖关系和处理顺序的ETL流程。在Panoply中,您可以使用代码来创建数据转换。对于每个数据访问,某些转换可以提供重新计算的虚拟结果(“视图”);其他可能包含重新计算的工作负载。据我们所知,在Panoply中,如果数据已经实现,则必须手动对其进行更新以获取更新。例如,当出现新数据时,用户必须单击“更新”以执行转换。
  根据字体大小和转换的复杂程度,我们可以禁止将中间结果存储在专用的管理结果表中。通常的做法是将增量数据加载到表中的新数据中。当然,Panoply不提供对历史记录的特定支持。
  Snowflake在处理数据转换时使用类似于Panoply的方法。您可以使用Snowflake的SQL语句在正式的SQL查询中实现数据转换,然后根据需要在新表中进行处理。在Snowflake中,您可以控制较低级别的数据对象。与传统数据库系统(如Postgres,MySQL,Oracle或DB2)一样,您可以创建表,索引,视图,查询,分区等。
  此外,Snowflake允许您在特定时间(最多90天前)检查表的状态。但是,Snowflake不支持“即用型”数据自动化历史记录类型。
  在Repods中,您可以创建一个所谓的“管道”,将原始数据转换为特定的数据存储表(例如Evo表)。在这些查询中,由于实际插入的目标表基于重复数据删除,生产密钥,记录历史记录和用于集成后处理的控制版本等技术,因此您不必再次执行每次转换。为数据制定插入策略。
  监控
  通常,大型数据存储系统可以轻松容纳并包含数百个数据表,以及数百个管理数据流的自动化ETL流程。但是,它们在操作过程中不可避免地会出现错误,并且其中一些需要手动干预。对于这种复杂性,我们需要监视平台的状态。
  在Panoply中,您可以查看已进行的各种查询以及工作历史。警报视图使您对问题及其服务和其他资产的来源有一个了解。每隔几秒钟(不是实时)基于轮询服务更新几个查询记录。
  Snowflake为您提供活动查询数量及其在特定时间内的资源消耗的摘要。在Snowflake中,您可以使用SQL指令访问几个内部元数据表,并提取与系统中查询活动有关的信息类型。同时,Snowflake还可以显示已在Web界面上执行的历史查询操作。Repods通过提供实时更新的图形描述来提供当前和历史管道的详细图形描述。 Repods还允许您使用SQL语句分析系统日志并提取有关管道执行的信息类型。
  实际性
  就创建和管理对象(如用户,数据存储,表,转换,报告等)而言,云中的工具通常根据目标用户在控制级别和易用性之间取得平衡。这里的三个平台本质上是基于云的,因此用户可以使用基于浏览器的Web应用程序进行直接访问和控制。具体做法是:
  Snowflake为用户提供了高级可控制的功能,例如数据库系统。用户可以在代码面板中编写,导入,制表,查看,索引和其他处理代码;并通过Web表单执行诸如创建和删除整个数据仓库及其用户之类的任务。但是,其Web界面不会自动响应平台上的活动,用户需要通过定期(每10秒)更新其视图来更新其视图。
  在Panoply中,用户使用Web表单来处理与数据导入相关的对象和配置的创建,并且有必要通过代码面板实施进一步的数据转换和分析。此外,Panoply仅提供英语。
  在Repods中,用户可以通过Web表单管理对象的创建,并可以在代码面板中处理各种自定义转换逻辑。对于Repods数据分析,用户可以使用工作簿样式方法来创建自定义分析查询,也可以使用内置的OLAP工具通过单击来快速学习数据模型。
  多用户工作流程
  这里的主要比较是:用户交互以及共享数据和工作内容支持。通常,所有三个平台都允许多个用户在同一数据环境中一起工作。当然,他们都没有提供在线讨论或聊天的可能性。
  Panoply为所有用户提供了一个基于基础架构的环境,以便在该架构中创建多个Amazon Redshift数据库。您可以在Panoply中管理“管理员”和“编辑者”功能。但是,Panoply平台的用户之间没有通信,并且缺少有关平台中数据对象和转换的文档。
  在Snowflake中,您可以调整每个帐户以及如何访问多个数据存储。与传统数据库系统中使用的访问控制类似,您可以自定义所有对象的权限并在这些数据存储中创建不同的角色。
  在Repods中,您可以允许每个用户管理多个数据存储(Data Pods),并提供对其他用户(如GitHub平台)的访问权限。该平台的默认访问角色包括:查看者,报告者,开发人员,管理员和所有者。每个用户可以在多个窗格中分配一个角色,并且不同的数据表按“标签”分组。当然,每个用户也可以基于“标签”获得单独的许可证。由于平台是实时的,因此所有其他用户都会立即发现用户之间的交互。数据历史化
  随着时间的流逝,必须将新的生产数据添加到现有数据清单中,因此数据存储区通常需要能够管理历史悠久的数据,并且它们必须能够将单个数据块合并为同质的。资料记录同时,为了持续管理和应用数据历史化,我们可以使用获得专利的时间范围列来跟踪不同表中的时间间隔。
  储存库支持即用型数据记录。历史记录通常发生在数据转换之后和插入库表之前。对于缓慢变化的数据,该算法具有最高的空间效率。这种最小化历史记录的方法可以极大地减少表的大小,并且对数据查询的完整性具有有利的影响。
  其他两个平台的数据历史化时间间隔由用户提供的转换逻辑来管理。其中,Panoply提供了一个称为“历史表”的功能,我们将在后面讨论。
  数据版本控制
  使用数据版本控制,您可以跟踪数据随时间的变化,以根据需要返回到先前版本的状态,或对现有数据进行无损修改。在比较云数据仓库的版本控制功能时,应考虑创建版本的难易程度以及还原或查询的难易程度。可以在系统的不同级别上管理版本控制:
  在存储子系统中创建该版本的快照作为备份。
  基础数据库系统能够支持版本跟踪。
  数据仓库系统可以处理版本控制。
  可以将版本控制实现为用户空间中的自定义转换逻辑。
  Panoply通过连续备份实现内置的版本控制。您可以在支持的时间间隔内返回快照中的任何点,但是不能使用此方法查询活动的系统版本。在Panoply中,还可以通过创建“历史表”在原始表中插入一个补充表。
  当原始表中发生更新时,系统会自动将同一条记录插入其中,并使用补充表指示更改的时间间隔。这些历史记录表允许您使用SQL指令查询同一数据的不同版本。
  使用Snowflake,您可以轻松创建所有数据的快照,并获得数据库系统提供的“时间旅行”功能,该功能允许您使用SQL语句在给定的时间灵活地查询数据。但是,此功能仅适用于企业版,并且仅包含90天的历史记录。换句话说,用户必须在更长的时间内实施版本控制逻辑。
  目前,Repods尚未提供针对每个数据仓库用例设计的连续备份和版本跟踪服务。您可以通过指定“冻结”时间戳来保证数据恢复能力。您可以使用简单的SQL语句在几个冻结时间(无限天)内灵活地查询数据。分析/报告
  数据平台的最基本任务之一就是以各种方式分析大量原始数据,以将数据存储为更长的历史记录。
  云数据仓库雪花,全景图和记录区
  Panoply和Snowflake都可以为您提供SQL代码编辑器,以创建数据转换,分析和聚合。这两种平台都允许您通过ODBC工具(和类似工具)访问用户名和密码。因此,您可以使用专门的分析工具(例如Jupyter或PowerBI工作簿)分析自己的数据。但是,您不能使用平台上的资源来运行Python或训练机器学习模型。同时,您无法将这些工作簿的结果集成到平台内的数据工作流中。

 

上海IT外包服务网 链接:http://www.linemore.com

>
400-635-8089
立即
咨询
电话咨询
服务热线
400-635-8089
微信咨询
微信咨询
微信咨询
公众号
公众号
公众号
返回顶部