国内最专业的IT技术学习网

UI设计

当前位置:主页 > UI设计 >

云数据仓库Snowflake、Panoply和Repods的全面大比拼

发布时间:2019/09/12标签:   数据    点击量:

原标题:云数据仓库Snowflake、Panoply和Repods的全面大比拼
【51CTO.com快译】先容Snowflake、Panoply和Repods是三种同意您在托管云架构中提取、处置、存储和拜访数据的云端效劳。差别于其余只能供给数据浮现与处置的云效劳,这些平台可能为海量的数据供给盘算与存储资本,因而咱们常称之为云数据堆栈平台。以存储和处置数据为中心功效的数据堆栈效劳,为数据的团体性治理与剖析供给了坚固的云平台基本。因为这三个平台的受众并非完整雷同,因而咱们能够无奈间接对它们的全部方面停止片面比拟。特殊关于Panoply和Snowflake,咱们只是从它们在网上公然的材料来停止剖析。架构Panoply综合应用到了Amazon Redshift数据效劳、Elasticsearch数据库、Amazon S3存储、以及Spark盘算架构。Amazon Redshift是一个可扩大的数据库,它源自Postgres数据库架构、并增添了集群的功效。不外,它仅能作为Amazon Web Service来运转。该系统架构可能经过向聚集里增加更多的节点,以完成在线扩大。因为差别的Panoply客户端都可能同享雷同的基本架构,因而在某个客户端上呈现的高流量的查问负载时,其余客户真个查问机能能够会遭到影响。经过Panoply,您可能创立多个Amazon Redshift范例的数据库。因而从某种意思上说,此类数据库固然存在独自的存储地区,然而它们仍同享雷同的查问引擎(即DBMS体系)。Snowflake固然并未具体地表露其底层架构,但整体而言,它可能经过一个在线扩大的平台,来清楚地分别出存储和盘算资本。Snowflake同意您在统一个帐户中创立和治理多个数据堆栈。您既能够具体地设置每个堆栈的盘算聚集尺寸,又能够为每个堆栈设置好主动在线缩放的规矩,即:在不中止效劳的情形下完成纵向扩大(在一台盘算机上应用更多的资本)、以及横向扩大(引入更多的盘算资本)。固然,为了确保每个堆栈存在稳固的机能,Snowflake的数据堆栈并不同享盘算资本,并且会应用内部东西来间接拜访数据库。Repods的基本架构包含原生的PostgreSQL(版本在10以上)、以及TimescaleDB。该数据库可被用于大时光跨度的分区数据,存储集群治理、扩大存储、以及很多与数据堆栈相干的效劳。现在,固然Repods可能供给牢靠的I/O速率和PB级的在线扩大,然而其扩大盘算资本的进程仍须要几秒钟的数据堆栈停机时光,并且并不存在容量弹性。您能够为每个帐户创立、治理和同享多个数据堆栈。不外,该平台中的差别数据堆栈实例,重要依靠于那些尚未与聚集中的任何其余实例同享的公用资本,并籍此完成稳固的查问机能。导入接口咱们将导入接口分为以下四个局部:云数据仓库Snowflake、Panoply和Repods的全面大比拼 文件 - 依然是最罕见的数据情势。 Web效劳 - 网上有大批相干的数据。 数据库 – 平日,各种数据存储在差别构造的传统数据库中,而构造对这些数据库的拜访,个别不会裸露到互联网上,因而它们无奈间接用到云数据平台。那末Web效劳能够被安排在外部安排的数据库、以及云效劳之间,从而处置拜访操纵等保险相干成绩。固然,另一种方式则是在保险跳转的主机上应用ssh-tunneling。 及时流 - 及时数据流是由种种新闻路由器来通报的。跟着物联网的崛起,它们将会变得越来越主要。Panoply在上述四个方面都供给了大批的导当选项。不外,据咱们所控制的信息,Panoply既不能依据主动化打算,从云存储桶(bucket)或SFTP中提取文件;又不能依据打算去恳求RESTful URL。Snowflake固然只专一于加载文件(如cat.II),然而它同意您从云存储处加载包含Amazon S3或Microsoft Azure之类的文件。Snowflake能够让您监控新的文件达到,并实时加载它们。在Repods中,您能够上载文件,从S3 Buckets处加载文件、或从内部SFTP效劳器处加载数据。Repods并不为全部能够的Web效劳供给独自的接口,不外它供给了一个可用于为任何范例的效劳(比方Socrata)接收Web恳求的通用API。固然用户无奈在各个数据库之间导入/出数据,然而他们能够经过Repods,定阅和接受新闻路由器(现在为WAMPonly)上的差别主题,以便以微批次(micro-batches)的方法提取数据。数据转换ETL平日,被导入数据平台的数据必需经由范例转换,才干在数据流中被予以剖析。该进程平日被称为ETL(提取、转换、加载),包含:为原始数据创立表格,调配数据范例,过滤数值,衔接现有的数据,创立派生列/行,以及将种种自界说的逻辑利用到原始数据上。业界常把创立和治理ETL的进程称为数据工程。此进程岂但耗时,并且消耗治理职员的精神。一些较大的数据堆栈每每会包括数千个存在差别阶段、依靠关联、以及处置次序的ETL进程。在Panoply中,您能够应用代码来创立数据转换。针对每一次数据拜访,有的转换可能供给从新盘算的虚构成果(“视图”);有的则可能保留从新盘算的任务量。据咱们所知,在Panoply中,假如数据曾经完成,则必需手动革新数据以猎取更新。比方:在呈现新的数据时,用户必需点击革新以履行转换。依据源的巨细和转换的庞杂性,咱们能够制止将旁边性的成果,存储到特地的治理性成果表中。而罕见的做法是:将新数据的增量加载到表中已有的数据里。固然, Panoply并不供给关于汗青记载的详细支撑。Snowflake在处置数据转换方面,采纳了与Panoply相似的方式。您能够应用Snowflake的SQL语句在表单式SQL查问中完成数据转换,而后按需在新的表中予当前期处置。在Snowflake中,您能够对数据工具停止初级其余操纵,就像应用Postgres、MySQL、Oracle或DB2之类的传统数据库体系一样,您能够去创立表、索引、视图、查问、以及分区等。别的,Snowflake还同意您查问在某个特准时间点(最多90天前)的表格状况。不外,Snowflake并不支撑“开箱即用”式的数据主动化汗青记载。在Repods中,您能够创立所谓的“管道(Pipe)”,将原始数据转换为特定的数据堆栈表(如Evo表)。在这些查问中,因为现实拔出的目的表会依附诸如:删除反复数据、出产密钥、记载汗青日记、以及操纵版本等技巧,来完成集成式的前期处置,因而您不用为每一个转换都从新制订数据的拔出战略。监控平日,大型数据堆栈体系能够轻松地包容并包括数百个数据表,以及数百个治理数据流的主动ETL进程。不外,它们在运转进程中未免会呈现过错,并且此中的一些过错须要野生停止干涉。针对此类庞杂性,咱们须要经过监控来得悉平台的状态。在Panoply中,您能够检查到已履行的种种查问、以及功课的汗青记载。经过警报视图,您能够得悉效劳和其余资产的成绩、及其起源。种种查问日记会依据每隔几秒的轮询效劳,予以更新(并非及时革新)。Snowflake经过监​​控讲演,为您供给在特准时间范畴内,运动查问的数目、及其资本耗费的汇总信息。在Snowflake中,您能够应用SQL语句来拜访种种外部元数据表(metadata table),并提取体系中查问运动的相干信息范例。同时,Snowflake还能在Web界面中表现已经履行过的汗青查问操纵。Repods经过供给及时更新的图形概览,以表现以后和汗青履行过的管道具体信息。Repods还同意您应用SQL语句来剖析体系的日记,并提取无关管道履行的信息范例。有用性在关于用户、数据堆栈、表格、转换、讲演等工具的创立与治理方面,云端东西平日会依据目的用户均衡操纵级别与易用程度。此处的三个平台因为实质上都属于云端情况,因而用户能够应用基于扫瞄器的Web利用,来间接停止拜访与管控。详细而言:Snowflake为用户供给了相似数据库体系的高等可控功效。用户能够在代码面板中编写、导入、制表、视图、索引之类的处置代码;而且经过Web表单,来处置诸如创立和删除全部数据堆栈及其用户等义务。不外,其Web界面并不能主动呼应平台上的各项运动,用户须要经过按期革新其视图(每10秒革新一次),来完成更新。在Panoply中,用户经过Web表单来处置工具的创立、以及无关数据导入的设置,而进一步的数据变更与剖析,则须要经过代码面板才干完成。别的,Panoply仅可能供给英文版的界面。在Repods中,用户可能经过Web表单来处置工具的创立,而且在代码面板中处置种种自界说的转换逻辑。就Repods的数据剖析而言,用户既能够应用任务簿款式(workbook-style)方式,来创立自界说的剖析查问,也能够应用内置的OLAP东西,经过点击来疾速得悉数据模子。多用户任务流程此处重要比拟的是:用户交互、以及数据与任务内容的同享支撑。总的说来,这三个平台都同意多个用户在统一个数据情况中发展协同任务。固然,它们都无奈供给在线探讨或谈天的功效。Panoply为全部用户供给了一个基本架构式的情况,用户能够在此架构上创立多个Amazon Redshift数据库。您能够在Panoply上治理“Admin”和“Editor”两类脚色。不外,Panoply平台的用户之间并无通讯功效,并且对于该平台中的数据工具和转换的文档也比拟匮乏。在Snowflake中,您能够细粒度地管控每一个账户,该怎样拜访多个数据堆栈。与在传统数据库系统上所应用的拜访操纵相似,您能够在这些数据堆栈中,自界说全部工具的权限,并创立差别的脚色。在Repods中,您能够让每个用户去治理多个数据堆栈(即Data Pods),并为其余用户供给相似于GitHub平台的拜访权限。平台预设的拜访脚色包含:“检查者”、“讲演者”、“开辟者”、“治理员”和“全部者”。每个用户都能够在种种pod中被调配到一个脚色,而差别的数据表则会依照“标签”停止分组。固然,每个用户也能够依据“标签”被独自受权。因为该平台存在及时性,因而用户间的交互,会马上被全部其余用户所发觉。数据汗青化(Data Historization)跟着时光的推移,重生产的数据须要被增加到现有的数据库存当中,因而数据堆栈每每须要可能治理存在较长汗青的数据,并且它们须要可能将独自的数据块兼并为同质性的数据汗青。同时,为了连续治理和利用数据汗青化,咱们能够应用专有的时光区间列(time range column),来跟踪差别表格中的时光区间。Repods支撑开箱即用式的数据汗青化。汗青化个别会产生在数据转换以后、以及拔出库表之前。关于迟缓变更的数据而言,该算法存在最大的空间效力。而这类最小化汗青记载的方式,则可能大幅增加表的体积,同时对数据查问的团体性,发生有益的影响。其余两个平台的数据汗青化时光范畴,是由用户所供给的转换逻辑来治理的。此中Panoply供给了一种被称为“汗青表”的功效,咱们上面会做进一步探讨。数据版本操纵经过数据版本化,您能够跟踪一段时光内数据的修正情形,以便按需规复到旧的版本状况,或对现有的数据采用非损坏性的修正。在比拟云数据堆栈的版本操纵才能时,您必需斟酌创立版本的难易水平,以及规复或查问版本的难易水平。版本操纵能够在差别的体系级别长进行处置: 在存储子体系上创立版本的快照,就像备份一样。 底层数据库体系可能支撑版本的跟踪。 版本操纵能够交由数据堆栈体系来处置。 版本操纵能够作为用户空间中的一种自界说转换逻辑来完成。Panoply经过持续备份,来完成内置的版本操纵。您能够在已备份时光范畴内,规复到快照的恣意时光点上,不外您无奈应用此方式来查问运动体系中的某个版本。在Panoply中,您还能够经过创立“汗青表”,将随同表(companion table)拔出到原始表中。当原始表上产生更新时,体系会主动将雷同的记载拔出到,配有表现变动时光区间的随同表中。这些汗青表同意您应用SQL语句,查问雷同数据的差别版本。应用Snowflake,您能够轻松地创立全部数据的快照,并取得数据库体系供给的“时光游览”功效,即:同意您应用SQL语句机动地查问某个时光点的数据。不外,此功效仅向企业版凋谢,并只包括有90天的汗青记载。也就是说,用户必需自行完成更长时光段的版本操纵逻辑。现在,Repods尚未供给持续备份,以及为每个数据堆栈用例计划的版本跟踪效劳。您能够经过指定“解冻”时光戳,来确保数据的可规复性。您能够应用简略的SQL语句,机动地查问种种解冻时光(无穷天数)的数据。剖析/讲演数据平台的一项最基础的义务是以种种差别的方法,对大批的原始数据予以剖析,进而将数据存储为更长的汗青记载。

版权信息Copyright © 银河官网 版权所有    ICP备案编号:鲁ICP备09013610号