偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

何時(shí)使用反向ETL以及何時(shí)使用反模式

譯文
運(yùn)維 數(shù)據(jù)庫(kù)運(yùn)維
大多數(shù)企業(yè)如今將大量事務(wù)和分析的數(shù)據(jù)靜態(tài)存儲(chǔ)在數(shù)據(jù)倉(cāng)庫(kù)或數(shù)據(jù)湖中,而企業(yè)的銷(xiāo)售、營(yíng)銷(xiāo)和客戶團(tuán)隊(duì)需要訪問(wèn)這些數(shù)據(jù)集。反向ETL是一個(gè)流行術(shù)語(yǔ),它定義了從現(xiàn)有數(shù)據(jù)平臺(tái)中收集數(shù)據(jù)的概念,以便為業(yè)務(wù)團(tuán)隊(duì)提供方便快捷的服務(wù)。

[[436702]]

【51CTO.com快譯】本文對(duì)軟件供應(yīng)商為什么會(huì)為反向ETL引入新的解決方案,何時(shí)需要反向ETL,以及它如何適合企業(yè)的架構(gòu)進(jìn)行了分析和探討。而使用Apache Kafka等工具來(lái)處理動(dòng)態(tài)數(shù)據(jù)的事件流是實(shí)時(shí)用例反向ETL的關(guān)鍵部分。

什么是ETL和反向ETL?

首先從了解術(shù)語(yǔ)開(kāi)始,ETL和反向ETL是什么?

1.ETL(提取-轉(zhuǎn)換-加載)

ETL(提取-轉(zhuǎn)換-加載)是數(shù)據(jù)集成的常用術(shù)語(yǔ)。Informatica公司或Talend公司等供應(yīng)商提供可視化編碼來(lái)實(shí)現(xiàn)強(qiáng)大的ETL管道。云計(jì)算將新的SaaS參與者和術(shù)語(yǔ)集成平臺(tái)即服務(wù)(iPaaS)帶入ETL市場(chǎng),其供應(yīng)商包括Boomi公司、SnapLogic公司或Mulesoft Anypoint公司。

大多數(shù)ETL工具針對(duì)大數(shù)據(jù)工作負(fù)載以批處理方式運(yùn)行,或者使用SOAP/REST Web服務(wù)和API進(jìn)行不可擴(kuò)展的實(shí)時(shí)通信。ETL管道使用來(lái)自各種數(shù)據(jù)源的數(shù)據(jù),對(duì)其進(jìn)行轉(zhuǎn)換或聚合,并將處理之后的靜態(tài)數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)接收器中,例如數(shù)據(jù)庫(kù)、數(shù)據(jù)倉(cāng)庫(kù)或數(shù)據(jù)湖:

提取-加載-轉(zhuǎn)換(ELT)是一種非常相似的方法。但是,轉(zhuǎn)換和聚合發(fā)生在攝取到數(shù)據(jù)存儲(chǔ)區(qū)域之后:

Databricks和Snowflake等數(shù)據(jù)存儲(chǔ)和分析供應(yīng)商推廣ELT方法也就不足為奇了。例如,Snowflake提出了“內(nèi)部緩沖網(wǎng)格”,其中所有域和數(shù)據(jù)產(chǎn)品都構(gòu)建在其云服務(wù)中。

2.反向ETL

顧名思義,反向ETL是ETL的反轉(zhuǎn)。這意味著將數(shù)據(jù)從數(shù)據(jù)存儲(chǔ)移動(dòng)到第三方系統(tǒng)以“使數(shù)據(jù)可操作”的過(guò)程,正如解決方案的營(yíng)銷(xiāo)人員所說(shuō):

數(shù)據(jù)從長(zhǎng)期存儲(chǔ)系統(tǒng)(數(shù)據(jù)倉(cāng)庫(kù)、數(shù)據(jù)湖)消耗。然后將數(shù)據(jù)推送到業(yè)務(wù)應(yīng)用程序,例如Salesforce(CRM)、Marketo(營(yíng)銷(xiāo))或Service Now(客戶成功),以利用它進(jìn)行管道生成、營(yíng)銷(xiāo)活動(dòng)或客戶溝通。

用于反向ETL的產(chǎn)品和SaaS產(chǎn)品

人們只需在谷歌搜索引擎中搜索“反向ETL”,即可找到專(zhuān)門(mén)推銷(xiāo)其解決方案的供應(yīng)商。他們還為“正常數(shù)據(jù)集成條款”支付廣告費(fèi)用。因此,即使沒(méi)有搜索這些廠商,也很可能看到它們。這些廠商的大多數(shù)都是初創(chuàng)公司,他們圍繞反向ETL產(chǎn)品開(kāi)展新業(yè)務(wù)。其軟件供應(yīng)商包括Hightouch、Census、Grouparoo、Rudderstack、Omnata和Seekwell。

有趣的事實(shí):如果搜索Snowflake的反向ETL,將搜索不到任何結(jié)果,因?yàn)樗麄兿M麑?shù)據(jù)保存在他們的數(shù)據(jù)倉(cāng)庫(kù)中。

所有ETL工具的一個(gè)關(guān)鍵優(yōu)勢(shì)和賣(mài)點(diǎn)是可視化編碼,因此是ETL管道開(kāi)發(fā)和維護(hù)的上市時(shí)間。一些解決方案針對(duì)公民集成商(這是Gartner公司創(chuàng)造的術(shù)語(yǔ)),即構(gòu)建集成的業(yè)務(wù)人員。

1.反向ETL==銷(xiāo)售、營(yíng)銷(xiāo)、客戶成功的實(shí)時(shí)數(shù)據(jù)

大多數(shù)反向ETL的成功案例都在談?wù)撽P(guān)注銷(xiāo)售、營(yíng)銷(xiāo)或客戶成功。這些用例吸引了業(yè)務(wù)部門(mén)。這些團(tuán)隊(duì)不想購(gòu)買(mǎi)像Informatica或Talend這樣的ETL工具。企業(yè)期望提供簡(jiǎn)單直觀的用戶界面,就像公民集成商一樣。

供應(yīng)商以業(yè)務(wù)人員為目標(biāo),并承諾提供簡(jiǎn)化的技術(shù)基礎(chǔ)設(shè)施。例如,一家供應(yīng)商表示,可以淘汰遺留中間件并減少ETL工作。而這讓人想到了“影子IT”。

盡管如此,了解一下反向ETL的用例:

  • 在發(fā)生之前識(shí)別有風(fēng)險(xiǎn)的客戶和潛在的客戶流失。
  • 通過(guò)關(guān)聯(lián)來(lái)自CRM和其他界面的數(shù)據(jù)來(lái)推動(dòng)新的銷(xiāo)售。
  • 用于向現(xiàn)有客戶進(jìn)行交叉銷(xiāo)售和追加銷(xiāo)售的超個(gè)性化營(yíng)銷(xiāo)。
  • 運(yùn)營(yíng)分析以更快地監(jiān)控業(yè)務(wù)應(yīng)用程序和數(shù)據(jù)的變化。
  • 將數(shù)據(jù)復(fù)制到現(xiàn)代云計(jì)算應(yīng)用程序,以獲得更好的報(bào)告功能和洞察力。

此外,所有供應(yīng)商都討論了上述用例的實(shí)時(shí)數(shù)據(jù)。但不幸的是,反向ETL是構(gòu)建實(shí)時(shí)用例的巨大反模式。以下更詳細(xì)地探討原因。

2.反向ETL+數(shù)據(jù)湖+實(shí)時(shí)==神話

以上描述的一些用例非常好,具有巨大的商業(yè)價(jià)值。這些實(shí)時(shí)用例是使用活動(dòng)中的事件流處理數(shù)據(jù)構(gòu)建的。

如果將數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)倉(cāng)庫(kù)或數(shù)據(jù)湖中,則無(wú)法再實(shí)時(shí)處理它,因?yàn)樗呀?jīng)處于靜止?fàn)顟B(tài)。這些數(shù)據(jù)存儲(chǔ)是為索引、搜索、批處理、報(bào)告、模型訓(xùn)練和其他在存儲(chǔ)系統(tǒng)中有意義的用例而構(gòu)建的。但是不能從靜態(tài)存儲(chǔ)中實(shí)時(shí)消耗動(dòng)態(tài)數(shù)據(jù):

這就是事件流發(fā)揮重要作用的地方。Apache Kafka等平臺(tái)支持實(shí)時(shí)處理事務(wù)和分析工作負(fù)載的動(dòng)態(tài)數(shù)據(jù)。因此了解現(xiàn)代企業(yè)架構(gòu),它利用事件流進(jìn)行動(dòng)態(tài)數(shù)據(jù)處理,利用數(shù)據(jù)倉(cāng)庫(kù)或數(shù)據(jù)湖進(jìn)行靜態(tài)數(shù)據(jù)處理。

企業(yè)架構(gòu)中的反向ETL

以下探討反向ETL如何適應(yīng)企業(yè)架構(gòu),以及何時(shí)需要一個(gè)單獨(dú)的工具。為此先了解反向ETL有什么作用?它從存儲(chǔ)中提取數(shù)據(jù),轉(zhuǎn)換或聚合數(shù)據(jù),然后將其攝取到業(yè)務(wù)應(yīng)用程序中。

反向ETL有兩個(gè)選項(xiàng):SQL查詢和變更數(shù)據(jù)捕獲(CDC)。

1.反向ETL==SQL查詢與變更數(shù)據(jù)捕獲

如果反向ETL工具使用SQL,那么它通常是對(duì)靜態(tài)數(shù)據(jù)的查詢。這一用例使業(yè)務(wù)人員能夠在直觀的用戶界面中創(chuàng)建查詢。其用例包括創(chuàng)建新的營(yíng)銷(xiāo)活動(dòng)或分析客戶成功之旅?;赟QL的反向ETL需要易于使用的直觀工具。

如果反向ETL工具提供實(shí)時(shí)數(shù)據(jù)關(guān)聯(lián)并推送通知,則它使用變更數(shù)據(jù)捕獲(CDC)。CDC是自動(dòng)化的,可以實(shí)時(shí)處理數(shù)據(jù)存儲(chǔ)中的變化。管道包括來(lái)自不同數(shù)據(jù)源的數(shù)據(jù)關(guān)聯(lián)以及向業(yè)務(wù)應(yīng)用程序發(fā)送實(shí)時(shí)推送消息?;贑DC的反向ETL需要可擴(kuò)展、可靠的事件流基礎(chǔ)設(shè)施。

眾所周知,SQL和CDC方法都有自己的用例,有時(shí)在工具和基礎(chǔ)設(shè)施方面有重疊?;谧兏罩镜腃DC通常是首選的技術(shù)方法,而不是在重復(fù)計(jì)劃中與SQL同步數(shù)據(jù)或在通過(guò)調(diào)用API觸發(fā)時(shí)同步數(shù)據(jù),無(wú)論是只使用事件流平臺(tái)還是特定的Revere ETL產(chǎn)品。

然而,更重要的問(wèn)題是如何設(shè)計(jì)企業(yè)架構(gòu)來(lái)避免對(duì)反向ETL的需求。

2.事件驅(qū)動(dòng)架構(gòu)+流式ETL==內(nèi)置反向ETL

實(shí)時(shí)數(shù)據(jù)勝過(guò)處理過(guò)程較慢的數(shù)據(jù)。對(duì)于大多數(shù)用例來(lái)說(shuō)都是如此。因此,事件驅(qū)動(dòng)架構(gòu)的興起勢(shì)不可擋:

現(xiàn)代事件驅(qū)動(dòng)架構(gòu)不需要反向ETL。它“內(nèi)置”在開(kāi)箱即用的架構(gòu)中。如果合適且技術(shù)上可行,每個(gè)消費(fèi)者都會(huì)直接實(shí)時(shí)消費(fèi)數(shù)據(jù)。數(shù)據(jù)倉(cāng)庫(kù)或數(shù)據(jù)湖仍然以近乎實(shí)時(shí)或批量的方式按自己的節(jié)奏使用它:

Kafka原生的流式SQL引擎ksqlDB提供了CDC功能和連續(xù)流處理。因此,如果營(yíng)銷(xiāo)需要的急,甚至可以將ksqlDB稱(chēng)為反向ETL工具。

如果想了解有關(guān)構(gòu)建實(shí)時(shí)數(shù)據(jù)平臺(tái)的更多信息,人們可以查看一篇名為“Kappa架構(gòu)是替代Lambda的主流”的文章。這篇文章探討了Uber、Shopify和Disney等公司如何為任何用例構(gòu)建事件驅(qū)動(dòng)的Kappa架構(gòu),其中包括實(shí)時(shí)、近實(shí)時(shí)、批處理和請(qǐng)求響應(yīng)。

什么時(shí)候需要反向ETL?

從頭開(kāi)始構(gòu)建的以事件流平臺(tái)為核心的全新架構(gòu)不需要反向ETL來(lái)消費(fèi)來(lái)自數(shù)據(jù)倉(cāng)庫(kù)或數(shù)據(jù)湖的數(shù)據(jù),因?yàn)槊總€(gè)消費(fèi)者已經(jīng)可以實(shí)時(shí)消費(fèi)數(shù)據(jù)。

然而,為業(yè)務(wù)用戶提供接口并不能通過(guò)像Apache Kafka這樣的事件流平臺(tái)開(kāi)箱即用地解決。而需要添加其他工具,例如Kafka CDC連接器或具有直觀用戶界面的第三方工具。因此,反向ETL可以在兩種情況下提供幫助:棕地架構(gòu)和面向業(yè)務(wù)用戶的簡(jiǎn)單工具。

在棕地架構(gòu)中的數(shù)據(jù)可以靜態(tài)存儲(chǔ),業(yè)務(wù)人員需要在業(yè)務(wù)應(yīng)用程序中使用它。對(duì)于銷(xiāo)售、營(yíng)銷(xiāo)或客戶成功用例,需要將數(shù)據(jù)從數(shù)據(jù)存儲(chǔ)中推出:

與傳統(tǒng)的ETL和iPaaS解決方案相比,面向業(yè)務(wù)人員的簡(jiǎn)單集成工具更加直觀且易于使用。即使采用全新的方法,反向ETL工具可能仍然是最簡(jiǎn)單的解決方案,并提供最佳的上市時(shí)間。

此外,需要記住的是,Salesforce或SAP等現(xiàn)代工具已經(jīng)提供了基于事件的界面。Elastic、Splunk或Snowflake等數(shù)據(jù)存儲(chǔ)供應(yīng)商也在流媒體層上進(jìn)行了大量投資,以與Apache Kafka等工具進(jìn)行本地集成。與業(yè)務(wù)應(yīng)用程序的集成可以通過(guò)實(shí)時(shí)事件流而不是通過(guò)來(lái)自數(shù)據(jù)存儲(chǔ)的反向ETL進(jìn)行集成。出于這些原因需要評(píng)估的業(yè)務(wù)問(wèn)題,以及是否需要事件流平臺(tái)、反向ETL工具或兩者的組合。

反向ETL的Kafka示例

以下來(lái)看兩個(gè)具體的例子。

1.Apache Kafka+Salesforce+Oracle CDC+Snowflake

以下架構(gòu)結(jié)合了實(shí)時(shí)數(shù)據(jù)流、變更數(shù)據(jù)捕獲、數(shù)據(jù)湖和反向ETL云服務(wù):

關(guān)于這個(gè)架構(gòu)的一些注意事項(xiàng):

  • 中樞神經(jīng)系統(tǒng)是一個(gè)事件流平臺(tái)(Confluent Cloud),提供可擴(kuò)展的實(shí)時(shí)數(shù)據(jù)流和任何數(shù)據(jù)源和接收器之間的真正解耦。
  • SaaS云服務(wù)(Salesforce)為基于事件的實(shí)時(shí)集成提供了本地的異步API。
  • 使用Confluent的Oracle CDC連接器用于Kafka Connect,通過(guò)更改數(shù)據(jù)捕獲將傳統(tǒng)關(guān)系數(shù)據(jù)庫(kù)(Oracle)與反向ETL集成。
  • 使用Kafka Streams和ksqlDB等流處理工具連續(xù)處理來(lái)自所有數(shù)據(jù)源的數(shù)據(jù)。
  • 將數(shù)據(jù)攝取到數(shù)據(jù)倉(cāng)庫(kù)(Snowflake)中,該數(shù)據(jù)倉(cāng)庫(kù)配置為Confluent Cloud完全托管的Kafka Connect連接器的一部分。
  • 業(yè)務(wù)用戶利用專(zhuān)用的反向ETL解決方案(Seekwell)將數(shù)據(jù)從數(shù)據(jù)倉(cāng)庫(kù)(Snowflake)獲取到業(yè)務(wù)應(yīng)用程序(Google Sheets)中。

基礎(chǔ)設(shè)施提供了一個(gè)基于事件的、可擴(kuò)展的、可靠的實(shí)時(shí)神經(jīng)系統(tǒng)。每個(gè)應(yīng)用程序都可以實(shí)時(shí)使用和處理動(dòng)態(tài)數(shù)據(jù)(如果需要)。靜態(tài)數(shù)據(jù)存儲(chǔ)是批處理用例的補(bǔ)充,并與基于事件的平臺(tái)集成。

這種架構(gòu)真正解耦了應(yīng)用程序,避免了點(diǎn)對(duì)點(diǎn)的“意大利面條式”通信,并支持所有技術(shù)、云計(jì)算服務(wù)和通信模式。

2.使用Kafka在動(dòng)態(tài)中利用Splunk攝取層

避免存儲(chǔ)系統(tǒng)需要反向ETL的另一個(gè)選擇是利用現(xiàn)有的存儲(chǔ)攝取層。

Confluent的Splunk S2S連接器就是一個(gè)很好的例子。假設(shè)企業(yè)已經(jīng)擁有數(shù)百或數(shù)千個(gè)通用轉(zhuǎn)發(fā)器(UF)和重型轉(zhuǎn)發(fā)器(HF)。在這種情況下,這種方法允許用戶經(jīng)濟(jì)高效且可靠地將數(shù)據(jù)從Splunk Forwarders讀取到Kafka。它使用戶能夠?qū)?shù)據(jù)從通用轉(zhuǎn)發(fā)器轉(zhuǎn)發(fā)到Kafka主題中,以解鎖數(shù)據(jù)的分析能力:

不要設(shè)計(jì)靜態(tài)數(shù)據(jù)來(lái)反轉(zhuǎn)

良好的企業(yè)架構(gòu)不應(yīng)該一開(kāi)始就以規(guī)劃反向ETL為目標(biāo)。只有在數(shù)據(jù)靜態(tài)存儲(chǔ)的棕地架構(gòu)中才需要它,而不是為實(shí)時(shí)和批量數(shù)據(jù)接收器構(gòu)建基于事件的架構(gòu)。反向ETL支持影子IT和意大利面條式架構(gòu)。事件流本質(zhì)上支持實(shí)時(shí)數(shù)據(jù)集成。

然而,反向ETL工具適用于棕地方法(在理想情況下通過(guò)持續(xù)更改數(shù)據(jù)捕獲,而不是重復(fù)的SQL)或如果業(yè)務(wù)用戶需要簡(jiǎn)單、直觀的用戶界面。因此,事件流和反向ETL是互補(bǔ)的。同樣,事件流和數(shù)據(jù)倉(cāng)庫(kù)/數(shù)據(jù)湖是互補(bǔ)的。

原文標(biāo)題:When to Use Reverse ETL and When It Is an Anti-pattern,作者:Kai Wähner

【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文譯者和出處為51CTO.com】

 

責(zé)任編輯:華軒 來(lái)源: 51CTO
相關(guān)推薦

2021-12-09 09:52:36

云原生安全工具云安全

2020-10-21 14:54:02

RustGolang開(kāi)發(fā)

2021-04-12 07:34:03

Java集合框架

2011-08-08 15:43:01

MySQL索引

2025-08-11 08:05:58

MCP服務(wù)工具

2019-11-29 07:53:07

DNSTCP網(wǎng)絡(luò)協(xié)議

2019-08-12 16:30:24

Windows 10Windows安全模式

2021-04-25 15:06:16

微軟虛擬桌面IT

2020-12-13 14:32:22

5GWi-Fi 6

2013-08-21 15:06:31

iOSself.

2012-02-08 11:01:53

HibernateJava

2024-08-01 10:10:24

MySQL場(chǎng)景搜索

2025-07-29 10:00:00

指針開(kāi)發(fā)Go

2024-04-16 12:00:14

API系統(tǒng)

2025-05-19 08:13:45

2020-10-10 10:20:11

云計(jì)算云安全技術(shù)

2021-06-01 11:11:26

物聯(lián)網(wǎng)互聯(lián)網(wǎng)IoT

2024-06-28 07:59:34

C#編程字段

2018-12-12 09:59:47

微服務(wù)架構(gòu)分布式系統(tǒng)

2024-10-07 08:49:25

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)