MongoDB.local Taipei 2023

活動日期: 2023/9/7

WARNING: 因為很多議程,我其實聽不太懂,所以下方的表格是當天所有的活動中,我有詳細描述的部分

議程/工作坊
MongoDB.local Taipei 主題演講
趨勢科技:基於 MongoDB Change Stream 建立事件驅動系統
從 MLOps 到生成式 AI:如何使用 MongoDB 將 ML 導入您的服務
Crypto Exchange 的旅程: 現實的挑戰與 MongoDB/Google Cloud 解決方案
來自 MongoDB 的最新訊息 & MongoDB 7.0 重磅登場
午餐
使用 MongoDB Relational Migrator 現代化改造您的應用程式
永豐銀行如何運用 MongoDB 優化使用者數位通路體驗
建立直觀的資料發現體驗:使用 Atlas Search 的提示和技巧
實機演練:MongoDB Time Series for IoT
AccuHit X MongoDB Atlas:系統架構師視角下的行銷大數據解決策略
Openshift with security
Noodoe:如何使用 MongoDB 創造流暢的充電體驗
實機演練:MongoDB Atlas Vector Search
實踐 Time Series:跨行業的實際應用情境

報到

活動開始的一個禮拜前,主辦會發報到通知的email,裡面會有報到用的QRcode,

活動當天憑報到通知函/報到編號及名片2張完成報到手續,謝謝您的配合。

這是 email 中要求的報到方式,不過我只有用 email 裡面的QRcode 報到,可能是因為我是學生吧(報名的時候好像要填組織,如果未來有機會再補充),所以當報到櫃台的服務人員問我的名片,我告訴她我沒有名片,她也沒有再要求我。報到後就能拿到識別證,午餐&工作坊都會需要識別證,千萬別搞丟了!

主議程

MongoDB.local Taipei 主題演講

講者Peder Ulander
職稱MongoDB - Chief Marketing & Strategy Officer(行銷總監)

因為是以全英文的方式演講,所以在進入會場以前,有一張桌子可以借口譯機,用身分證/健保卡押證件即可借閱(雖然第一次來,不過我想挑戰看看,所以沒有借口譯機。一個小時聽下來,撇除專業知識以外,大致上知道他想表達的意思,希望明年再來參加的時候能更懂)

今天的 MongoDB.local Taipei 是他們辦的 29 場 local 活動中的其中一場。

MongoDB 的起源

他們在做了調查之後,發現開發者花費大部分的時間在處理資料。

以前的都是 vertical scale(也就是在現有的 server 上增加 CPU, RAM, or storage),為了 horizontal scale(把資料分散在多個server上),所以他們開發MongoDB。

被企業採用

全球有很多企業採用 mongodb ,臺灣的企業也有,包括17直播(以前的 mongodb day 也有來分享)、趨勢科技、noodoe、永豐銀行等等

過去的做法,為了每一種要求(payments, real time logistics, Fraud detection…),弄了很多很複雜的系統 ⇒ 應該要找一個統一的方法處理一堆問題

後續的部分主要說明下方2點,因為我聽不懂,所以就先跳過吧!

  1. MongoDB有…功能,所以可以做到…
  1. MongoDB 7.0 的新功能

永豐銀行如何運用 MongoDB 優化使用者數位通路體驗

講者楊文淵
職稱永豐銀行 Bank SinoPac - 專業副理

使用 RDBMS 遇到的問題

原因

(這邊表格以及下方的解法是我自己揣摩的實作方式,不代表永豐銀行的真實系統)

資料量很大的時候會拆表

帳號日期存入餘額
00012023/9/13001300
00022023/9/15010050
00012023/9/39001700
00012023/9/54002000
帳號日期提出餘額
00012023/9/2500800
00022023/9/370003050
00012023/9/41001600

需要大量的join才能取得下方的表格 ⇒ 所以查詢都會限制時間區間,限制資料量,避免系統崩潰

帳號日期存入提出餘額
00012023/9/13001300
00012023/9/2500800
00012023/9/39001700
00012023/9/41001600
00012023/9/54002000

解法

因為 MongoDB 可以透過 ID 直接找到屬於你的交易明細,所以就能省去 RDBMS 在 join的過程中,產生很多你不需要的資訊

const user_statement = await statement.findById(user_id);

午餐

午餐是憑是憑識別證下方的午餐券進行兌換。

坐在位置上,服務人員會把餐盒送過來,把午餐券從識別證上撕下來,交給他/她就可以拿到餐盒

餐盒是萬豪酒店提供的,菜色的部分因為我不知道菜名是什麼(只覺得很好吃),就不詳細介紹

工作坊

參加工作坊有幾點要注意

  1. 要自己帶筆電
  1. 現場沒有電源,要自己注意電量
  1. 遇到問題就舉手,現場大概會有 2~3 位專家幫你解決問題

MongoDB Time Series for IoT 實機演練

講者吳明宗
職稱MongoDB - 資深顧問工程師

Time Series Data 是甚麼?

假設你有一個智能插座,它每 15 分鐘都會記錄你的用電數據,那你能得到的資料(如下)就是一連串依據時間排序的感測器數值,這就是 Time Series Data

[
	{"ts": {"$date": "2020-05-15T20:45:00+00:00"}, "dc_power": {"$numberDecimal": "7835.571429"}},
	{"ts": {"$date": "2020-05-15T21:00:00+00:00"}, "dc_power": {"$numberDecimal": "9555"}},
	{"ts": {"$date": "2020-05-15T21:15:00+00:00"}, "dc_power": {"$numberDecimal": "10642.75"}}
]

實作

MongoDB Atlas 有提供圖表的服務,讓你可以即時追蹤數據的變化,結果如下

講者張凱霖
職稱MongoDB - 資深顧問工程師

假設你想找的是上圖的數碼寶貝,但是你卻想不起它的正確名稱,手上也沒有圖片可以以圖搜圖,只記得看起來像戴帽子的小狗,

於是你 google 的結果如下

根本找不到你心中的那個APP獸啊!!!

什麼是 Vector Search

可以把圖片和文字轉換成向量,再透過演算法,找到最相似的圖片。

實作

(一開始想要很詳細的說明,但是裡面的細節我還沒有搞懂,所以搞懂之後會把細節放在 github 上) 講師提供了一個寶可夢的資料集,教我們如何運用 python + MongoDB 來實現”用文字描述的方式搜尋寶可夢”

後續

9/15 收到 MongoDB 的 email,裡面有所有講者的簡報連結(工作坊的也有),靠著這些簡報才把永豐Time Series 的內容補上(當天只聽懂了,但是缺少一些細節,所以寫得不清不楚)。