iT邦幫忙

DAY 26
0

成為資料工程師最初的 28 堂課系列 第 26

資料工程師第 25/28 課: OLAP, RPC and API

[修讀原因]

雖然說, 以現在的角度來談 Online Analysis and Procesing 已經過氣了, 就像是現在來談 Data Warehouse 一樣, 不只是有點時代已經過去, 且以某種角度這些都是太過於局限了, 也包含這些是被商業模式給局限住, 換句話說以現在的角度應該是用其他更多元的角度來看這些事.

雖然說這個架構現在已經不完全適宜了, 但不代表其觀念已現在的角度是沒有意義的, 甚至在 Big Data 的現在, OLAP 所須要的挑戰更是超過當時的想像, 只是用的方法跟當時提出或規劃的不一樣.

以現在的角度, 已經不是一個巨大的 Data Warehouse 解決一切, 反而更重要的是資料傳遞之間的過程, 其中包含 RPC, API, .... 等等的技術與觀念, 其中有很多實作更是不能忽略的, 包含 OAuth 等等, 這些若沒有把環節打通, 事實上是無法成事的.

設計一個系統若是要花 N 個資源與時間, 但要做到

  • 自動化
  • Cluster
  • 高有效性
  • 高效能
  • 容錯
  • 自動修復
  • 規模化
  • 互動式

這須要的時間與資源須要 2 倍到 5 倍的成本去做到, 這之間所面臨的挑戰更多.

[基本資訊]

[基本介紹]

在提到 OLAP 之前, 不得不先提 OLTP (Online Transaction Processing) 系統, 因為理論上這是達成 OLAP 的架構導引, 其中包括下面的考量點:

這邊就不得不題兩個很重要的觀念:

  1. Batch processing : 不用人介入而能夠讓電腦自動化執行一連串的工作
  2. CLI (Command Line Interface): 指令介面可以讓這一連串的工作更好設計

此時就可以把很多系統透過這方式串起來, 其中兩個重要觀念就是 RPC 與 API

RPC 的步驟:

  1. The client calls the client stub. The call is a local procedure call, with parameters pushed on to the stack in the normal way.
  2. The client stub packs the parameters into a message and makes a system call to send the message. Packing the parameters is called marshalling.
  3. The client's local operating system sends the message from the client machine to the server machine.
  4. The local operating system on the server machine passes the incoming packets to the server stub.
  5. The server stub unpacks the parameters from the message. Unpacking the parameters is called unmarshalling.
  6. Finally, the server stub calls the server procedure. The reply traces the same steps in the reverse direction.

應用程式介面 (API) 種類:

  • 物件導向語言的API
  • 庫與框架的API
  • API與協定
  • API與裝置介面
  • Web API

這樣就告一段落, 接下來就要做總結了.

[修習方式]

電子書:

開放課程:

關鍵字:


上一篇
資料工程師第 24/28 課: 語意網路/文字探勘/語意分析
下一篇
資料工程師第 26/28 課: Engineering Mathematics/Applied Mathematics
系列文
成為資料工程師最初的 28 堂課30

尚未有邦友留言

立即登入留言