Subscribe to the Teradata Blog

Get the latest industry news, technology trends, and data science insights each week.

Vantage不只有SQL,还可以应用R和Python语言

Vantage不只有SQL,还可以应用R和Python语言

R和Python是数据科学领域最受欢迎的两种语言。Python经常被誉为是最通用的语言,传统上应用于工程领域;而R最初是针对统计数据开发的。不管你选择的是哪种语言,你可能都会遇到同样的问题:

 

  • 无法处理大量的数据

  • 无法进行拓展

  • 运营操作困难


但你知道吗,Teradata可以帮助你通过你使用的语言来在Vantage系统上直接处理数据。将数据分析的处理流程迁移到Teradata Vantage平台可以为数据的处理和数据结果带来巨大的便利,例如:

 

  • R/Python的代码可以利用Vantage的大规模并行平台(MPP)来提高表现和可拓展性

  • 存放在Vantage平台中的数据不需要被迁移到另一个分析处理平台

  • Vantage可以提供分析运营的平台

 

为什么这很重要?

 
过去,在笔记本电脑或者分析服务器上运行R/Python可能就已经足够了,但在现在的使用案例中,呈指数级增长的数据量会让类似的任务执行得十分地缓慢。为了实现高效的分析,人们对于可拓展MPP平台的需求逐渐上升。可拓展的性能对于分析师的生产力和准确度而言有着深刻的影响。如果运行一个分析需要几分钟的时间,那么专家们会愿意不断迭代各种参数,不断改进并重新提交分析结果。当处理流程需要花费几个小时的时候,他们提高准确度的意愿逐渐消失,同时运用敏捷数据探索和分析建模技术。

Teradata Vantage是为了高效分析而搭建的。在过去的几十年里,我们不断向一直在进化的核心平台添加更多的功能,来帮助用户将分析技术应用于数据。Vantage这种不对外分享的架构能够实现的不仅仅是简单的数据存储和大量详细数据记录的报告。除此之外,Teradata Vantage现在还加入了机器学习引擎,为现有的核心功能提供多元统计、机器学习和图形功能。综合在一起,这些引擎可以直接在数据上执行高级分析任务,而不需要进行数据的迁移,这是Teradata在20世纪90年代末开创的处理能力,并在今天持续发展。


如何在Vantage上实现?

 
基于不同的编译器和程序包和运行的位置,R/Python会在Teradata Vantage平台上以两种截然不同的方式进行处理:

1. 语言会在Teradata Vantage平台的外部运行,而Teradata的开源包和原生语言SQL驱动程序为高级SQL和机器学习引擎中的功能提供接口,实现对接

2. 语言会直接在Teradata Vantage平台上运行

让我们来详细看看这两种不同的方法:

 

客户端语言和Packages


在方法1中,R/Python用户会在下载中加入原生语言SQL驱动器,并搭配Teradata的两个开源函数库中的一个进行使用,即用于R的tdplyr和用于Python的teradataml。Tdplyr和teradataml会提供以下通用的能力:
 
  • 环境、连接和数据库管理的接口
  • R/Python对Vantage机器学习、图表和高级SQL引擎功能的接口

正如其名,tdplyr是在著名的R语言程序包dplyr的基础上搭建的,这可能是最广泛使用的R语言程序包,可用于数据操控和数据准备。R语言的用户可以通过使用dplyr的语句来在数据库内实现数据变换,并在Vantage平台内以R数据框架的方式来处理数据表。在使用Python的情况下,teradataml包也可以提供相似的功能;它以SQLAlchemy程序包为基础,这种构造能够提供和pandas数据框架类似的核心功能。
 

服务器端语言和Packages


对于方法2,理解Vantage无共享MPP架构非常重要。在Vantage系统中,数据会平均分布在所有平行的虚拟单元中,这被称作是存取模块处理器(AMPs)。为了实现R/Python的处理,必须在每一个节点上都下载相应的参数、基本程序包和所有希望添加的程序包。Vantage的数据表运算机制会推动执行,而处理会并发地在每一个AMP中执行,使用所有平行单元中的可用数据。每个节点中能承载的AMP大约为30-45个单元,取决于Intel CPU的版本以及整体节点的性能。因此,一个10节点、每节点配备40个AMP的系统可以同时处理400个R/Python命令。

值得注意的是,每个R/Python的实例都是独立运行的,在跨节点或同节点的AMP中,并不存在跨进程的沟通。所以,数据科学家们必须对它们运行实例中可用的数据进行脚本识别。在此基础上,可以解决这些类型的使用案例:
 

  • 低独立度的处理——仅取决于各数据组自身的输入
  • 部分独立的处理——取决于单一AMP中各数据细分的输入。如针对某个地点、时间区间或产品进行模型适配。
  • 系统内部的处理——取决于平均分布于系统AMP中的整个输入表。在这种情况下,可能需要添加额外的设计或编程。例如计算全球平均数、或者为整个用户群建立一个损耗模型。


跳出框架外思考,Vantage平台可以向前两个处理模式提供支持。对于系统内部的处理,数据科学家们必须搭建一个主处理层级,妥善地处理并结合从每个AMP处理进程中返回的部分结果。

这是我三篇系列博客中的一篇。细节决定成败,针对最复杂的话题,我将在未来的两篇文章中阐述,我们会更加深入地挖掘以上描述的两种方法。


开始优化你的数据科学流程


不管你偏好哪种方式,通过Teradata Vantage平台,你都可以使用R和Python语言,同时利用Vantage的大规模并行平台(MPP),提高表现和可拓展性。如果你使用的是较旧的版本,并且感兴趣升级到使用Vantage平台,欢迎联系我们


 

* In a shared nothing distributed computing architecture, each processing node is independent and self-sufficient.  The nodes share no memory or disk storage, and there is no single point of contention across the system. so that the maximum performance and scalability is achieved.

** Both tdplyr and teradataml make R Data Frames and pandas Data Frames appear locally to the programmer but are virtually pointing to tables or views in Vantage.

*** Vantage, makes the installation process easier by providing bundles of R/Python base and add-on packages that have been tested against the base operating system and vetted for security and
legal constraints.


Portrait of Tim Miller

(Author):
Tim Miller

Tim Miller has been in a wide variety of R&D roles at Teradata over his 30+ year career. He has been involved in all aspects of enterprise systems software development, from software architecture and design; to system test and quality assurance. Tim has developed software in domains ranging from transaction processing to decision support, with the last 20 years dedicated to predictive analytics. He is one of two principals in the development of the first commercial in-database data mining system, Teradata Warehouse Miner. As a member of Teradata's Partner Integration Lab, he consulted with Teradata's advanced analytics ISV partners, including SAS, IBM SPSS, RStudio and Dataiku, to integrate and optimize their products with Teradata's platform family. He spent several years with Teradata’s Data Science Practice, working closely with customers to optimize their analytic environments. Today, Tim is a Sr. Technologist in Teradata’s Technology Innovation Office, focused on the Vantage platform. View all posts by Tim Miller

Turn your complex data and analytics into answers with Teradata Vantage.

联系我们