iT邦幫忙

2023 iThome 鐵人賽

DAY 2
0

DataStore 功能簡介

  • 是因為目前這個 APP 僅有一人團隊在開發 iOS 的版本;如過之後這個 APP 要推出 Android 的版本,勢必是要再透過其他的方式如 Kotlin、Flutter 或是 React Native 再開發。
  • 透過 AWS Amplify 作為「應用程式後端」的好處,就是有提供其他的 SDK,屆時後端可以繼續沿用。
  • 是無伺服器的 Backend,這點或許對我很友善,因為寫了一個 APP 都沒人在使用,也不需要開著一台運算資源燒錢還浪費電。(Serverless 的服務...去年十一月開到現在,也花不到一塊美金)

文件聲稱的好處

  • 一目瞭然的 Data Modeling 介面。
  • 使用 DataStore 的話,可以在連上網路時同步資料到行動裝置上,以備離線時也能存取資料。(意思是不用再廢工作出離線版本的資料儲存機制⋯⋯好像很猛噎!)
  • 各項 Model 可以各別配置不同權限;針對 Owner、有登入的使用者配置權限外,也可以從 Group 的方式給權限。
  • content editors 方便直接管理內容。應該是拿和傳統資料庫管理的情境,都要下 Query (沒什麼效率)、或是裝 xxx-db-client (不方便,還要打通網路,有時候資料庫放在內網,管理就麻煩),不然就是要裝 phpMyAdmin (常常被當漏洞打)。

寫得嚇嚇叫,用過才知道。


實作

操作畫面

  1. 打開 AWS 從 Console 開啟 Amplify Studio (請見下圖)
    https://ithelp.ithome.com.tw/upload/images/20230903/20130149jjL4UpNc84.png
  2. 左邊的功能選到 Data
  3. Model 取名字
  4. 加入欄位和他的資料型別
  5. 繼續增加欄位
  6. 針對必要鍵、陣列資料進行勾選 (請見下圖)
    https://ithelp.ithome.com.tw/upload/images/20230903/20130149TMrdOnQwb8.png
  7. Add a relationship 的部分,在不同 Entity 之間要設定關聯的時候,或者是 Model 要進行正規化的時候就會用到
  8. 按下右上方的 Save and Deploy 開始進行部署
    https://ithelp.ithome.com.tw/upload/images/20230903/20130149UvIc2zN1sF.png
  9. 去泡杯咖啡 ☕️
    https://ithelp.ithome.com.tw/upload/images/20230903/20130149TdGfE6R8Ke.png
  10. 再等一下下
    https://ithelp.ithome.com.tw/upload/images/20230903/201301499OQlaINqTf.png
  11. 哭啊,我好像之前把什麼重要資源砍了...
    https://ithelp.ithome.com.tw/upload/images/20230903/20130149421K1M1PXw.png

參考資料

  1. Entity Relationship Model - Wikipedia
  2. AWS Amplify - DataStore

上一篇
【Day 1】 承先啟後:未來的開發計畫與精進項目
下一篇
【Day 3】 AppSync:在 AWS Amplify 建立 API
系列文
依然無法成為釣魚大師也要努力摸魚!!辣個吃魚神器 APP 第二彈33
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言