物聯網總覽

物聯網 (IoT) 所涵蓋的技術與應用案例與時俱進,沒有明確的單一定義。一個可行的界定標準是將物聯網定義為使用嵌入實體環境的網路互連裝置,目的在改善一些既有的流程,或是實現過去做不到的事情。

這些裝置或「物件」可連線至網路,提供本身透過感應器從環境收集到的資訊,或讓其他系統透過致動器連接世界並進行互動。這些物件可能是您原本就很熟悉、很常見的物品,只加入了連網功能,或專門為了提供某種新的功能而特意打造的裝置;也可能是您個人所有並隨身攜帶或放在家中的裝置,或是嵌入工廠設備中的裝置,亦或是您所居住的城市建築物中的一部分。這些裝置能將真實世界中的有價值資訊轉換為數位資料,讓您更清楚瞭解使用者如何與您的產品、服務或應用程式進行互動。

各行各業的應用案例和商機不勝枚舉,並呈現多元發展樣貌,因為物聯網的時代才剛剛開始。但物聯網的發展也面臨了一些常見的挑戰與模式。與其他雲端中心技術應用程式相比,物聯網專案涉及的範疇較廣,因此複雜度較高,包括:

  • 多元的硬體
  • 多元的裝置作業系統和軟體
  • 不同的網路閘道要求

本指南說明您可以將哪些元素與 Google Cloud Platform 結合在一起,在 Cloud Platform 上建構一個強大且可維護的端對端物聯網解決方案。

頂層元件總覽

我們在此將系統分為三種基本元件:裝置、閘道和雲端。

三個元件

「裝置」包括與世界直接進行互動的硬體和軟體。裝置透過網路連線相互通訊,或與集中式應用程式通訊。裝置可直接或間接連線至網際網路。

閘道可讓未直接與網際網路連線的裝置能夠連至雲端服務。雖然「閘道」一詞可指網路上的具體功能,但也可用於描述一類裝置,這類裝置可代替一組或一群裝置處理資料。每個裝置提供的資料會傳送至 Cloud Platform,在那裡進行處理並與來自其他裝置的資料合併,並可望與其他商業交易資料結合。

資訊類型

裝置提供或消耗的資訊五花八門。每一種形式的資訊最好由不同的後端系統處理,並且每個系統在資料速率、容量及適合的 API 上都應有其專擅之處。以下列出並介紹物聯網應用情境中常見的資訊類別。

裝置中繼資料

中繼資料包含裝置的相關資訊。大多數的中繼資料都是不可變更或很少變更的。中繼資料的範例包括:

  • 識別碼 (ID) - 用於區辨裝置的獨有識別碼。裝置 ID 在部署裝置的效期內絕不能變更。
  • 類別或類型
  • 模型
  • 修訂版本
  • 製造日期
  • 硬體序號

狀態資訊

狀態資訊描述裝置 (而不是環境) 的目前狀態。這類資訊可以讀取/寫入。狀態資訊可以更新,但不會常常更新。

遙測資料

裝置收集的資料稱為「遙測資料」。這是物聯網裝置提供給應用程式的耳目資料。遙測資料是與環境有關的唯讀資料,通常透過感應器進行收集。

每一種遙測來源都會形成一個「頻道」。遙測資料可做為有狀態變數保存在裝置上或雲端中。

雖然每個裝置每分鐘可能只會傳送單個資料點,但如果將此數據乘以大量的裝置,很快就必須採用大數據策略或模式來處理這些資料。

指令

「指令」是裝置執行的動作。指令通常具有限制實作時可用選項的特徵,這些特徵包括:

  • 指令不容易表示為狀態資料。

  • 指令通常不是冪等的,也就是說每個重複的訊息通常會產生不同的結果。與訊息傳遞系統類似,指令函式的實作方法決定了遞送語意 (例如「至少一次」或「僅有一次」)。指令的運作機制可能包含回傳值,或需要透過另外回傳的訊息或反映狀態資料的預期變更來確認狀態。

  • 指令可能具備有限的時間相關性,所以應該包含存留時間 (TTL) 或其他到期時間值。

指令的範例包括:

  • 向右旋轉 360 度。
  • 執行自我清潔循環。
  • 提高速率 10%。

作業資訊

對比業務應用程式,作業資訊是與裝置運作息息相關的資料。包括 CPU 作業溫度和電池狀態等都可能屬於這類資訊。這類資料可能沒有長期的分析價值,但卻有維持運作狀態的短期價值,例如因應運作中斷情況,或在軟體升級後修正效能降低的情況。

作業資訊可當做遙測或狀態資料傳送。

裝置

裝置的定義往往也不是很明確。許多實物都是模組化的東西,這表示您很難斷定整台機器是否為裝置,或個別模組是否為分離式的裝置。這個問題沒有一個明確的答案。在設計物聯網專案時,您需要考慮到各種不同的抽象層次,然後再決定要如何表示實物,以及實物彼此之間的關係。應用程式的特定需求可幫助您瞭解某個產生資訊的東西是否應被視為裝置,並且需要有自己的 ID,或是應該將它視為另一個裝置的頻道或狀態詳細資料。

以一個目的為監控飯店客房溫度的專案為例。在每間客房中可能設有三個感應器:一個設在房門旁的地板上、一個設在天花板上,一個設在床旁邊。在建構此種設置的模型時,您可以將每個感應器都當做一個裝置:

{deviceID: "dh28dslkja", "location": "floor", "room": 128, "temp": 22 }
{deviceID: "8d3kiuhs8a", "location": "ceiling", "room": 128, "temp": 24 }
{deviceID: "kd8s8hh3o", "location": "bedside", "room": 128, "temp": 23 }

您還可以將整個房間當做一個裝置來建立模型。雖然您通常不會將整個房間當做一個裝置,但在物聯網的世界中,裝置抽象化其實就是從「單元」的角度管理及記錄資料;它並不見得一定是您可以握在手中的小東西。從這個角度來說,您就可以將飯店客房當做一個包含三個感應器的裝置,並以此建立模型:

{deviceID: "dh28dslkja", "room": 128, "temp_floor": 22, "temp_ceiling": 24, "temp_bedside": 23, "average_temp":  23 }

依目的而定,其中某一種資料表示方式可能會比另一種方式更正確。請注意看第二個範例中的平均溫度欄位,這可能就是飯店想要的資訊。每個感應器的中繼資料是單獨使用價值最高,還是將個別的中繼資料片段結合在一起應用到房間更適合呢?如果房間是套房,而設置感應器的位置分別在浴室、起居室和臥室時,又該怎麼辦?在決定如何替資料建立模型時,這些都是您需要問的問題。連網應用程式的領域模型定義了裝置的明確界線。

裝置硬體

選擇硬體時的一般注意事項

在選擇硬體時,請考慮以下因素,這些因素會受到硬體部署方式的影響:

  • 費用。根據提供資料的價值,考慮每個裝置的可負擔費用。
  • I/O 角色。裝置的主要角色可能是感應器、致動器或兼具兩種角色。
  • 電費預算。裝置可能接電很方便,或電源難尋。思考裝置是否需要用到電池或太陽能。
  • 網路環境。考慮裝置是否能做為 TCP/IP 可轉送位址直接連線至網際網路。某些連線類型 (例如手機連線) 在高流量時可能產生昂貴的費用。您必須考慮網路的可靠度與其對延遲及總處理量的影響。如果使用無線網路,請考慮訊號的涵蓋範圍,及附加的能源費用。

功能性輸入和輸出

用來與實體世界進行互動的裝置含有能夠讓感應器輸入資料或致動器輸出資料的元件,或是連接了相關的週邊設備。您在為這些硬體 I/O 元件選擇特定硬體時,應以功能需求為出發點。例如,您需要的偵測靈敏度或運動複雜度將會決定您需要選擇哪一種加速計,或者您是否需要陀螺儀。如果要進行氣體偵測,就必須考慮感應器能夠準確偵測的氣體類型。使用裝置產生輸出時,您必須考慮像是蜂鳴器的響度、馬達轉速或繼電器安培數等需求。

除了環境效能上的需求之外,選擇這些 I/O 元件或週邊設備時,您可能還需要考慮相關的資訊類型。例如,步進馬達可以按照裝置狀態資料表示的方向進行設置,而麥克風可做為穩定取樣頻率資料 (最好做為遙測資料傳輸) 的元件。這些元件可透過硬體介面與裝置的邏輯系統連接。

裝置平台

在建構物聯網應用程式時,您會發現可以使用的硬體種類繁多到令人眼花撩亂。這種多樣性從硬體平台的選擇開始。常見的平台範例包括單板電腦,如 BeagleboneRaspberry Pi,以及微控制器平台,如 Arduino 系列Particle 開發板和 Adafruit Feather

上述每一種平台都能讓您透過硬體介面連接多種類型的感應器和致動器模組。

這些平台使用類似於通用運算中的分層架構與模組連接。從日常生活中常見的電腦滑鼠著手,思考週邊設備、介面、驅動程式和應用程式各層。在一般作業系統 (如 Linux 或 Windows) 上,硬體輸入會由驅動程式進行解譯,而這個解譯工作又必須依賴 OS 服務,並且可能是核心的一部分。為簡單起見,下圖省略了作業系統。

三個元件

硬體介面

大多數的硬體介面均屬序列介面。序列介面一般使用多條線來控制主數據線沿線二進位資訊的流程和時序。每種類型的硬體介面都定義了一套讓週邊設備能夠與中央處理器通訊的方法。

物聯網硬體平台使用許多常見的介面。感應器和致動器模組可支援其中一或多種介面:

  • USB:通用序列匯流排是一種常見於各種隨插即用裝置的介面。
  • GPIO:通用輸入/輸出接腳可直接與處理器進行連接。顧名思義,這些接腳是由製造商為了設計用途以外的自訂應用情境而提供的介面。GPIO 接腳有攜帶數位訊號或類比訊號的兩種設計,數位接腳只有兩種狀態:高或低。

    數位 GPIO 可支援脈衝寬度調變 (PWM)。脈衝寬度調變可讓您迅速切換開關電源,每個「On」相位都是特定期間的脈衝 (或「寬度」)。在裝置中可以造成較低或較高功率位準的效果。例如,您可以使用脈衝寬度調變來變更 LED 的亮度;「On」脈衝越寬,LED 亮度越亮。

    類比接腳可能連接內建數位類比轉換器 (ADC) 線路。數位類比轉換器定期對連續的類比波形 (如類比音訊訊號) 進行取樣,並給予每個樣本一個相對於系統電壓且介於 0 和 1 之間的數位值。

    當您在編碼中讀取數位 I/O 接腳的值時,該值必須是「高」或「低」,而類比輸入接腳在任何時候的值可能是某個範圍內的任何值。範圍取決於數位類比轉換器的解析度。例如,8 位元類比數位轉換器可以產生從 0 到 255 的數位值,而 10 位元類比數位轉換器可以產生從 0 到 1024 的更寬廣的範圍值。值越多表示解析度越高,因此能更忠實地以數位形式呈現任何類比訊號。

    數位類比轉換器的「取樣率」決定了數位類比轉換器可重現的頻率範圍。取樣率越高,數位資料中的最大頻率越高。例如,如果忽略典型的濾波和其他處理,取樣率為 44,100 Hz 的音訊訊號可產生頻率響應高達 22,050 Hz 的數位音訊檔。「位元精確度」決定了訊號振幅的解析度。

  • I2C:內部整合電路序列匯流排使用一種可為多個模組指派匯流排上獨立位址的通訊協定。I2C 可發音為「I two C」、「I-I-C」或「I squared C」。

  • SPI:序列週邊介面匯流排裝置採用主從式架構,支援單主控和全雙工通訊模式。SPI 指定了四種邏輯訊號:

    • SCLK:序列時脈,主機的訊號輸出
    • MOSI:主出從入,主機的訊號輸出
    • MISO:主入從出,從機的訊號輸出
    • SS:從選擇,主機的低態有效訊號輸出
  • UART:通用異步收發器裝置會在處理器對資料採取動作的當下,將要傳輸的資料在序列通訊與並行通訊之間進行轉換。UART 是序列資料必須在記憶體中以並行方式佈局時的必要裝置。

軟體中的硬體抽象化

作業系統會將常見的運算資源 (如記憶體和檔案 I/O) 抽象化。作業系統還會為不同的硬體介面提供非常低層級的支援。這些抽象化資源通常不容易直接使用,並且作業系統通常不會為您在建構物聯網解決方案時可能遇到的各種感應器和致動器模組提供抽象化功能。

您可以善用程式庫進行跨平台硬體介面的抽象化。這些程式庫可讓您以更直接的方式使用如動作偵測器等裝置。使用程式庫可讓您專心收集模組提供給應用程式的資訊,而不必處理直接使用硬體的低層細節。

有些程式庫提供週邊設備抽象化的功能,將其表示為硬體介面頂層的輕量級驅動程式。這些程式庫的範例包括:Johnny-Five JavaScript 架構、支援多種語言的 MRAA、Go 程式庫 EMBDArduino-wiringFirmata

運算環境

平台的運算環境會執行軟體。處理器的功能會因硬體的能力和成本限制而有差異。有些運算環境包含一個可支援嵌入式 Linux 作業系統的完整系統單晶片 (SOC)。以微控制器為基礎的裝置可能有更多限制,但您的應用程式程式碼可直接在處理器上執行,無需作業系統的支援。

這些運算環境是應用程式程式碼的邏輯與平台的實體硬體之間的橋樑。運算環境執行的軟體可能會在開機時從唯讀記憶體 (ROM) 整個載入。或者,環境可能是分階段開機程序的結果。此程序會從 ROM 載入一個稱為「系統啟動載入程式」的小程式,然後由該程式從內建快閃或 SD 網路卡載入完整的作業系統。

在裝置上處理

從感應器收集資料後,在將資料傳送至雲端之前,裝置可以提供資料處理功能。許多裝置都會先對資料執行一些處理作業,才將資料傳送到雲端。

這些處理作業包括:

  • 將資料轉換為其他格式
  • 以安全的方式封裝資料,並將資料整合成實用的批次
  • 驗證資料,確保資料符合一系列規格
  • 按照優先順序排序資料
  • 充實資料,用更多相關資訊修飾核心值
  • 匯總資料,以減少資料數量並刪除不必要或不需要的細節
  • 合併資料,以得出累計值

裝置上分析可合併多個處理工作,提供適中的合成解譯,使更多資訊能夠以更小的資料足跡完成傳輸程序。

三個元件

裝置管理

裝置管理與其他 IT 資產管理類似,工作重點集中於裝置的佈建、運作及更新作業。這些重點適用於所有裝置,包括閘道。

佈建

佈建是設定新裝置使它準備就緒的程序。佈建程序包括:

  • 使用基本裝置資訊進行自我啟動。裝置至少需要 ID 和基本中繼資料才能進行自我啟動。
  • 為確保通訊安全而執行的憑證驗證步驟。例如,可以為裝置提供憑證或金鑰,做為後續通訊的依據。這類憑證可能有到期時間。
  • 授權裝置。授權是指根據上述驗證憑證,建立允許裝置與應用程式或其他服務互動的權限。授權是裝置 ID 和憑證對於特定資源的具體使用權限。
  • 設定網路連線。裝置需要網路連線才能與其他服務進行通訊及傳輸資料。
  • 註冊裝置。應用程式需要知道有哪些裝置可用。裝置註冊資料庫會追蹤使用中的裝置,管理雲端方的驗證工作,並建立裝置與特定資料和資源 (例如遙測主題和狀態儲存) 的關聯。

作業

物聯網系統的日常作業需要收集目前現況的正確資訊。與任何 IT 硬體部署類似,透過資訊主頁和快訊機制提供的各種事件記錄及關鍵狀態指標監控,將可幫助您維持事情的順利運作。Cloud Platform 提供各種方便您執行日常作業的功能:

  • Stackdriver Logging 會收集和儲存記錄,並記錄關鍵裝置生命週期事件以供稽核之用。您也可以將一部分的遙測事件轉發到 Stackdriver Logging 中進行分析及報告。與建構自訂記錄解決方案相比,使用 Stackdriver Logging 可幫您省下大量的時間和工作。

無線下載更新

一般的物聯網部署規模龐大,使得現場更新個別裝置成為一件不切實際的事。由於裝置在設計上都有網路連線功能,因此透過在網路上推送更新的方式進行裝置更新會是一件比較容易的事。以手機用語來說,這是一種無線下載 (OTA) 更新的概念,而同樣的概念也適用於物聯網。無線下載更新的選項包括:

  • Android Things。如果您使用的是以 Android-Things 為基礎的硬體,該硬體將會內建 OTA 更新功能。
  • 在 Cloud Platform 上設定您自己的 Debian 套件存放區 (APT)。
  • Balena.io。以 Yocto Project 為基礎的 balena.io 可讓您使用熟悉的工具 (如 Docker 和 git) 來推送容器映像檔更新。

閘道

「閘道」透過不同的通訊協定管理網路間的流量。閘道負責通訊協定的轉譯及其他互通性工作。物聯網閘道裝置有時可用於提供裝置與雲端間的連線和轉譯功能。由於某些裝置未包含網際網路連線所需的網路堆疊,閘道裝置可發揮 Proxy 的作用,接收來自裝置的資料,並加以封裝後透過 TCP/IP 進行傳輸。

如果部署中的裝置有以下情況,則可能必須使用專用的閘道裝置:

  • 不具備可路由轉送的連網技術,例如藍牙裝置。
  • 不具備傳輸層安全標準 (TLS) 所需的處理能力,因而無法與 Google API 進行通訊。
  • 不具備執行必要網路傳輸作業所需的電力。

閘道裝置即使在參與裝置有自主通訊能力時也可以使用。在此情況下,閘道將具有更多的附加價值,因為它能夠在資料傳送到雲端之前,為跨裝置的資料提供處理服務。此時,直接輸入的會是其他裝置,而不是個別感應器。下列工作可能會轉移給閘道裝置:

  • 壓縮資料,以將透過單一連結傳送到雲端的資料量最大化
  • 將資料儲存在本機資料庫中,然後在與雲端的連線不穩定時將其轉發
  • 提供有備用電池的即時時鐘,用於為無法妥善管理時間戳記或無法使其保持同步的裝置提供一致的時間戳記
  • 執行 IPV6 到 IPV4 的轉譯
  • 從本機網路擷取並上傳與 IoT 資料有關的其他一般檔案資料。
  • 當做韌體更新的本機快取

雲端平台

在您的物聯網專案開始運作後,許多裝置將會產生大量的資料。您需要用一個有效率、可擴充且經濟實惠的方法來管理這些裝置,以及處理全部的資訊,使這些資訊能夠為您所用。說到儲存、處理及分析資料的能力,尤其是大數據,沒有什麼能比得上雲端。

下圖顯示在 Cloud Platform 中執行物聯網資料管理作業的各個階段:

在雲端建構及訓練機器學習模型

裝置管理

IoT Core 裝置管理員

Google Cloud IoT Core 提供裝置全代管服務,包括 Cloud Platform 資源階層內和儲存於雲端的裝置中繼資料的註冊、驗證與授權,以及將裝置設定從服務傳送到裝置的功能。

擷取

「擷取」是將資訊從裝置匯入 Cloud Platform 服務的程序。Cloud Platform 會根據資料的屬性,例如屬於裝置和物聯網基礎架構的遙測或作業資訊,提供不同的擷取服務。

IoT Core MQTT

Google Cloud IoT Core 為 IoT Core 代管的裝置提供安全的 MQTT (Message Queue Telemetry Transport) 代理程式。這個高效率的二進位業界標準讓受到限制的裝置使用設定管理功能,傳送即時遙測資料,以及立即接收從雲端傳送到裝置的訊息。IoT Core MQTT 代理程式可直接連線至 Cloud Pub/Sub。

Cloud Pub/Sub

Google Cloud Pub/Sub 提供全球可靠的訊息擷取服務。透過建立串流或頻道的「主題」,您可以讓應用程式的不同元件「訂閱」特定的資料串流,而無需在每個裝置上建立訂閱者專屬的頻道。Cloud Pub/Sub 還能從本機連線至其他 Cloud Platform 服務,協助您連接擷取、資料管道和儲存系統。

Cloud Pub/Sub 對於傳入的資料流和應用程式架構變更,可發揮類似緩衝器及速率調平器的功能。許多裝置都只有有限的資料儲存及重發遙測資料能力。Cloud Pub/Sub 具有擴充能力,可處理大批裝置回應現實世界的活動時遽增的資料量,並藉由應用程式資料監控緩衝及隔離遽增資料。

Stackdriver Monitoring 和 Stackdriver Logging

如同前面幾節所說的,Cloud Monitoring 和 Stackdriver Logging 可提供許多作業上的優勢。從這些服務提供的介面可擷取作業資訊。

管道處理工作

資料送抵 Cloud Platform 後就由管道接手管理,有點類似工廠生產線上各個零件的管理方式。接手的工作包括:

  • 資料轉換: 您可以將資料轉換成其他格式,比如將擷取到的裝置訊號電壓轉換成溫度值校準單位。
  • 資料匯總及運算: 透過合併資料,您可以增加檢核機制,例如將多個裝置的資料加以平均,避免針對單一假性裝置進行行動;亦或者可確保在單一裝置離線時仍能得到可用資料。透過增加管道的運算能力,您可以對正在管道中處理的資料進行串流分析。
  • 充實資料: 您可以將裝置本身產生的資料與裝置的其他中繼資料或其他資料集整併,比如天氣資料或交通資訊等,以供後續分析使用。
  • 轉移資料: 您可以將處理後的資料儲存在一或多個最終存放位置。

Cloud Dataflow

Google Cloud Dataflow 提供開放式 Apache Beam 程式設計模型做為多元資料處理的代管服務,包括資料批次作業、擷取轉換載入 (ETL) 模式及連續串流運算。Cloud Dataflow 在管理物聯網應用情境不可或缺的大容量資料處理管道時,特別有用。Cloud Dataflow 還能與您為管道選擇的其他 Cloud Platform 服務進行無縫整合。

資料儲存

來自於現實世界的資料型態不一,資料量也有所多寡。Cloud Platform 提供一系列儲存解決方案,從非結構化的 Blob 資料 (如圖片和影片串流) 到裝置或交易的結構化儲存實體,以及儲存事件及遙測資料專用的高效能鍵/值資料庫,應有盡有。

在 IoT Core 儲存狀態資料

有些裝置狀態可能會直接連線至硬體。例如,當您檢查數位 GPIO 接腳的狀態時,它會根據接腳上的實際電壓讀數,讀為「高」電位或「低」電位。

其他裝置狀態可能存在應用程式層。例如,recording-audio 可能具有 truefalse, 的狀態條件,這與應用程式是否從麥克風取樣或是否寫入磁碟有關。從硬體來說,麥克風本身可能會保持開啟。

從軟體來說,裝置上執行的應用程式程式碼保留了事實的來源。這點通常很重要或甚至是必要的,因為其他軟體可以讀取裝置的最後已知狀態。鑑於物聯網裝置可能會有一段時間處於低耗電的睡眠模式下,並且可能存在於特別不可靠的網路上,因此將部分裝置狀態儲存在雲端通常是很有用的辦法。這樣一來,即使裝置本身暫時離線,狀態資料也能保持可用。

最後已知裝置狀態可報告並儲存在 IoT Core 供應用程式擷取。透過 MQTT 或 HTTP 傳送的狀態資訊會一直保存在 IoT Core 中,並可在雲端中提供使用,即使裝置斷線或離線。

在 Datastore 和 Firebase 儲存應用程式資料

當您需要為行動或網路應用程式提供狀態或遙測資料時,可以將已處理的資料或原始資料儲存在結構化但無結構定義的資料庫中,如 Cloud DatastoreFirebase 即時資料庫,這些資料庫會以網域或應用程式層級的物件來表示 IoT 裝置資料。

Cloud Functions 和 Cloud Dataflow 中的規則處理和串流分析

物聯網事件和資料可高速傳送至雲端進行快速處理。對許多物聯網應用程式來說,決定將裝置放在實體環境中的主因是為了能夠更快速地存取資料。例如,可以將在運送過程中暴露於高溫環境下的農產品進行標記並立即處理。

能夠迅速處理資訊並採取相應動作是很重要的一件事。 Google Cloud Functions 可讓您寫入適用於每種事件的自訂邏輯。此邏輯可用於觸發快訊、篩選無效資料或叫用其他 API。Cloud Functions 可單獨作用於個別發佈的事件。

如果您要用更精密的分析方法來處理資料和事件,包括時間區間設定技術或匯聚來自多個串流的資料,Cloud Dataflow 提供可應用於串流及批次資料的強大分析工具。

分析

對從物聯網來源取得的資料執行分析,通常是檢測實體世界的全部目的。串流資料會在處理管道中進行分析之後開始累積。久而久之,這類資料會成為豐富的資訊來源,並可用於呈現趨勢,以及與來自物聯網裝置以外的其他資料結合使用。

BigQuery 和 Cloud Datalab

BigQuery 提供全代管資料倉儲服務,具有熟悉的 SQL 介面,可讓您輕鬆保管物聯網資料及任何其他企業分析和記錄。BigQuery 具備的效能和費用優勢,可讓您長期保存重要的資料,不用為了節省磁碟空間而刪除資料。

Cloud Datalab 是互動式工具,適合用於大規模的資料探索、分析和視覺化作業。根據與物聯網結合的資料種類而定,物聯網資料可適用於許多應用情境。Cloud Datalab 可讓您使用以開放原始碼 Jupyter 專案為基礎的託管線上資料工作平台環境,對資料執行互動式的探索、轉換、分析和視覺化作業。

機器學習

物聯網資料通常具有多維度及多雜訊的特性。這些特性使您很難憑藉傳統的分析技術獲得深入分析。然而,這種複雜難辨的資料特性正是「深層類神經網路」最擅長的事情。 Tensorflow 是領先的開放式原始碼機器學習架構,您可以透過 Cloud Machine Learning Engine 在 Cloud Platform 的分散式代管訓練服務中使用 Tensorflow。

含有 Cloud BigTable 的時間序列資訊主頁

某些類型的資料在更新核心視覺化內容和使用者介面時,需要能對已知的索引和維度進行快速分段。Cloud BigTable 為 NoSQL 資料提供低延遲且高總處理量的資料庫。Cloud BigTable 為使用需求頻繁的視覺化及查詢作業提供了一個理想的場所,在這裡問題已獲得充分理解,您只需要因應或提供高產量的工作。

與 BigQuery 相比,Cloud BigTable 較適合用於資料列或連續資料列的查詢作業,因為 Cloud BigTable 使用資料列格式儲存資料。與 Cloud BigTable 相比,BigQuery 較適合用於需要進行資料匯總的查詢作業。

Cloud Storage Nearline 中的封存儲存空間

從實體世界擷取的資料不斷累積,可是並非所有資料都是結構化的資料。Cloud Storage 為目前使用的物件儲存空間和不常使用的封存資料提供同一種 API。如果您的物聯網裝置擷取媒體資料,Cloud Storage 能以經濟實惠的價格,提供幾乎無限量的持久儲存空間。

結論

建構物聯網解決方案必須克服許多領域的挑戰。Cloud Platform 將您可以使用的裝置管理、基礎架構規模、網路及各式儲存與分析產品一併提供給您,讓您能夠充分利用這些裝置產生的資料。

本頁內容對您是否有任何幫助?請提供意見:

傳送您對下列選項的寶貴意見...

這個網頁
解決方案