2021年12月17日

Tryg 如何利用 Prisma 實現資料民主化

Tryg 憑藉其“360”資料經紀平臺節省了大量時間,該平臺透過消除手動配置環境所產生的開銷,加速了開發週期。Prisma 是使他們能夠民主化來自不同資料來源的數十億條記錄的關鍵技術。

How Tryg has leveraged Prisma to democratize data

Tryg 是北歐地區最大的非壽險公司之一,為私人、商業和企業市場提供廣泛的保險服務,每年處理超過 100 萬起索賠。

與許多企業一樣,Tryg 面臨著變得更加以資料為中心的需求,同時也在與資料孤島的痛苦作鬥爭。

Tryg 擁有分佈在不同國家的各種資料來源。由於 Tryg 的資料來源模型是在數十年間建立起來的,對相同概念的定義各不相同,因此無法重複使用。這導致了許多修復、變通方案和妥協。

整合其中一個數據源的資料將需要 Tryg 對其進行統一,這是一項耗時且容易出錯的任務。最終目標是使資料可供所有人使用,包括那些不熟悉 SQL 和實體關係圖的人員。

Prisma 是 Tryg 實現資料民主化的主要技術之一。

透過 Tryg 360 實現資料民主化

實現資料民主化需要實施一個專有平臺。因此,Tryg 實施並推出了名為 Tryg 360 的資料經紀平臺。

Tryg 360 使開發人員只需點選一個按鈕即可快速啟動環境。這會呼叫他們所需的應用程式,允許他們即時視覺化資料,與其他使用者共享應用程式 URL 等。這幫助他們實現了每個開發人員的夢想:專注於編寫增值程式碼,而不是管理所有後端設定,以及忍受漫長的環境載入等待時間。

Tryg 360 technology overview

為了實現這一目標,Tryg 採用了 Prisma,因為它能夠自動生成資料庫客戶端和開發人員將互動的 GraphQL API。

generator API 確定執行 prisma generate 命令時建立哪些資產。

Prisma Client 和 GraphQL API 的自動生成對 Tryg 至關重要,因為他們擁有極其複雜的模型和海量資料——有些 Schema 檔案長達 1 萬行,包含超過一百萬個字元!

生成 Prisma Client 後,Tryg 使用 Pal.js 自動生成一個 GraphQL API,系統中的其他開發人員和使用者將與該 API 互動。這對他們很重要,因為它自動化了 GraphQL 解析器的手動編碼。Pal.js 是一個生成器,允許基於 Prisma Schema 生成 GraphQL CRUD 解析器。

“Prisma 對我們來說是一個巨大的技術促成因素”

Artur Mrozowski, 資料工程師 Tryg

Prisma 自動化

Tryg 的基礎設施設定相對複雜,因為它涉及透過 CI 部署完整環境的幾個步驟。該過程包括從不同的系統和資料庫載入資料,將其轉換為規範模型,然後將其載入到單個數據庫中。

Tryg 對部署新環境有以下要求:

  • 基於 Schema 自動生成資料庫
  • 基於 Schema 自動生成 Prisma Client API
  • 部署任何應用程式、源或應用程式組合
  • 一鍵完成

“我們與 Prisma 的設定使我們能夠從程式碼生成所有內容,並確保我們的開發人員能夠非常快速地迭代。”

Lasse Abelsen, DevOps 工程師 Tryg

Tryg 360 technology overview

部署環境所需的資源在 Helm chart 中定義。Kubernetes 負責提供必要的資源。在提供資源時涉及的步驟包括:

  • 即時流式傳輸來自不同來源的原始資料,無需任何轉換。這確保了開發人員在環境建立後可以處理即時資料。
  • 部署具備時間意識的 MirrorMaker – 負責隨時正確同步來自不同資料來源和管道的資料。這是 Apache Kafka MirrorMaker 的一個實現。
  • 部署本地 Kafka 叢集以載入他們所需的資料,而不是從所有源載入資料。
  • 部署特定環境所需的應用程式
  • 由部署的應用程式進行資料轉換並將資料載入到 Cockroach 資料庫中
  • 部署使用 Prisma 訪問特定 Cockroach 資料庫的應用程式
  • 根據 Prisma Schema 自動生成解析器和型別定義

由於 CockroachDB 與 PostgreSQL 有線協議相容,Prisma Client 可以與其通訊,即使 Prisma 尚未完全支援 CockroachDB。

藉助 Prisma,Tryg 成功快速生成了其資料庫客戶端和 GraphQL API——實現了快速迭代,透過單一 Schema 統一了其資料來源,並簡化了系統和使用者的資料訪問。

Tryg 和 Prisma 的願景

透過將他們獨立的資料來源統一到一個集中位置,並自動化使資料可供開發團隊訪問的複雜過程,Tryg 開創了一種與我們對 Prisma 資料平臺的願景完美契合的方法。

Prisma 的目標是民主化像 Facebook、Twitter 和 Airbnb 這樣的大公司為自己構建的應用程式資料平臺概念。我們希望透過保持資料訪問的靈活性、安全性和輕鬆可擴充套件性,使各種規模的開發團隊和組織能夠採用現代開發工作流程。

瞭解更多關於我們針對Prisma 企業版的計劃

總結

Prisma 在幫助 Tryg 構建 Tryg 360 平臺方面發揮了重要作用。作為下一步,Tryg 正在研究事件建模等技術,以完善其領域模型,思考事件以及它們如何圍繞時間軸儲存,我們渴望在他們的旅程中提供支援!

收聽 Tryg 的完整演講,瞭解更多關於:

  • 經驗教訓
  • 具備時間意識的 MirrorMaker 的工作原理
  • 檢視 Tryg 和 Prisma 的實戰演示

要了解更多關於 Prisma 如何幫助您的團隊提高生產力,請加入 Prisma Slack 社群

不要錯過下一篇文章!

訂閱 Prisma 新聞通訊

© . This site is unofficial and not affiliated with Prisma Data, Inc.