天天看點

資料挖掘之R與SQL

一直以來,我們在提到使用R進行資料分析、資料挖掘都會使用RODBC、RJDBC、DBI等相關的包來調用資料庫,比如我前面羅嗦的一片文章資料挖掘之R與SQL,但實際基本上各大資料庫廠商已有相應的R語言企業級應用産品,這些廠商包括Oracle、IBM、Teradata、Sybase、SAP。

Oracle R Enterprise

Oracle R Enterprise是針對于大資料市場下,用于處理日益豐富的資料。這款産品有以下優勢:

企業級的R應用

  • 允許DBA将R語言模型産品化
  • 可以将R模型整合到BI儀表盤(BIEE)
  • 統計學家可以直接使用資料庫,而不需去了解具體SQL
  • 減少Oracle資料庫外的資料管理成本

減少高昂SA$的使用費用

  • 可完全替代SA$ base,節省SA$的使用年費
  • 分析人員可以直接面對資料庫進行個性化分析,而不需要資料導出
  • 超過100内置的統計函數可以同Base SA$相容

大資料分析的in-database支援

  • 高性能的代數運算(在R中整合Intel’s Math Kernel Library)
  • R語句的執行的使用并行化運算方式(包括擴充包)
  • 高度整合了R語言快速開發、資料庫并行計算的優勢

衆所周知,R語言将資料置于記憶體,資料處理能力有限,Oracle R Enterprise将此瓶頸完全打開,并将性能提升到更進階别。

資料挖掘之R與SQL

IBM Netezza®

Netezza 并不隸屬于IBM原有産品線,而是針對于“一體機”市場,于2010年17億美元的價格收購獲得,用以擴張其用于銷售、市場營銷和産品開發的商務分析産品。Netezza對R語言的支援,主要通過Revolution合作,通過調用R Enterprise from Revolution® Analytics平台來實作。Netezza的特點可以總結為:可擴充的、高性能的、大規模内置并行分析平台。

資料挖掘之R與SQL

注:除了R語言外,Netezza還支援SAS、PASW等分析軟體

IBM® InfoSphere® BigInsights

IBM BigInsights 同樣也整合了R語言資源,提供了Map-Reduce架構的R語言并行化計算環境,包括了大資料集的文本挖掘和機器學習算法。BigInsights可以将建構的R語言模型釋出在Hadoop平台上(同IBM Netezza一樣,通過調用R Enterprise from Revolution® Analytics),極大的滿足企業級資料需求。

資料挖掘之R與SQL

注:為IBM提供R語言商業化應用的公司是Revolution,關于這家公司可以參考這裡。

SAP HANA

借助SAP BusinessObjects Predictive Analysis平台,分析師們既可以使用内置的預測性算法來構模組化型,也可以整合并使用流行的開源資料統計分析語言——R語言。并且,依托SAP HAHA平台可以提供in-database分析。

資料挖掘之R與SQL

Teradata

Teradata提供了免費的 teradataR 包,用于在R環境下連接配接Teradata資料庫、建立資料、條用in-database分析函數。

  • 避免了從Tetadata到R之間的資料移動,有效提高了資料運算性能;
  • 針對于大資料的分析任務,使用Teradata的強大并行計算的能力 ;
  • 允許在R控制台操作;
  • 将常用的執行任務嵌入到資料庫中執行;
  • R和TetadataR都是免費的;

Sybase RAP

Sybase RAP主要是針對于金融市場的實時分析,其中RAPStore元件提供了内置分析函數,包括時間序列分析函數、OLAP函數、R語言整合函數以及使用者自定義函數,适用于大資料環境。

其調用R函數的機理如下:

資料挖掘之R與SQL

同時,還可以在R語言環境下通過RJDBC通路Sybase RAP,進行資料預處理,避免在R中資料清洗占用大量記憶體。

資料挖掘之R與SQL

<全文完,請期待R + Hadoop>