DynamoDB初體驗

前言

DynamoDB作爲AWS雲服務一部分,也支持本地化應用,本章將介紹如何在本地構建基礎運行環境。

本章概要

  • 安裝DynamoDB Local;
  • AWS CLI安裝;
  • AWS CLI使用

安裝DynamoDB Local

  • 通過官方下載安裝文件,下載完成後直接解壓即可;

啓動服務

  • 通過如下命令即可啓動:java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb
    image

  • 其默認端口爲8000,且默認的數據存儲路徑爲其根目錄;

自定義服務參數

和mongodb非常類似,其在啓動時提供了諸多參數協助我們進行服務優化,首先查看官方,其說明如下, DynamoDB 接受以下命令行選項:

  • -cors value - 啓用適用於 JavaScript 的 CORS 支持(跨源資源共享)。您必須提供特定域的逗號分隔“允許”列表。-cors 的默認設置是星號 (*),這將允許公開訪問。
  • -dbPath value - DynamoDB 將用於寫入其數據庫文件的目錄。如果不指定此選項,則文件將寫入當前目錄。請注意,不能同時指定 -dbPath 和 -inMemory。
  • -delayTransientStatuses - 使 DynamoDB 爲某些操作引入延遲。DynamoDB 幾乎可以即時執行某些任務,例如,對錶和索引執行創建/更新/刪除操作;但是,實際 DynamoDB 服務需要更多時間才能完成這些任務。設置此參數有助於 DynamoDB 更逼真地模擬 Amazon DynamoDB Web 服務的行爲。(目前,此參數僅爲處於 CREATING 或 DELETING 狀態的全局二級索引引入延遲。)
  • -help – 打印使用摘要和選項。
  • -inMemory – DynamoDB 將在內存中運行,而不使用數據庫文件。停止 DynamoDB 時,不會保存任何數據。請注意,不能同時指定 -dbPath 和 -inMemory。
  • -optimizeDbBeforeStartup – 在計算機上啓動 DynamoDB 之前優化底層數據庫表。使用此參數時,必須還要指定 -dbPath。
  • -port value - DynamoDB 將用於與應用程序通信的端口號。如果不指定此選項,則默認端口是 8000。
注意:
    默認情況下,DynamoDB 使用端口 8000。如果端口 8000 不可用,此命令將引發異常。
    您可以使用 -port 選項指定其他端口號。有關 DynamoDB 運行時選項的完整列表(包括 -port),請鍵入此命令:
    - java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -help
  • -sharedDb - DynamoDB 將使用單個數據庫文件,而不是針對每個證書和區域使用不同的文件。如果指定 -sharedDb,那麼所有 DynamoDB 客戶端都將與同一組表交互,無論其區域和證書配置如何。

定製化本地啓動批處理

避免我們每次均需要切換文件目錄通過指令啓動服務,我們可以自定義如下批處理文件,實現服務一鍵啓動:

java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb -port 8765 -dbPath ./dbdata/

AWS CLI安裝

服務安裝了,客戶端連接工具也是必須的,能夠協助我們進行簡單的服務測試驗證與應用,通過官方地址,其介紹了詳細的安裝過程。
- 目前的系統版本均比較高,我這裏直接通過MSI方式安裝;
- 直接運行MSI安裝程序;
- 在進行aws –version命令之前,我們優先配置環境變量,避免目錄切換之苦;

在環境變量path中添加C:\Program Files\Amazon\AWSCLI\
  • 打開cmd,通過aws –version查看安裝的是否是最新版本以及確認安裝完成:
    image

AWS CLI使用

通過上面兩個步驟已經確認DynamoDB服務、AWS CLI安裝成功,下面就來嘗試連接新建一個表。

  • 首先通過自定義的startup.bat批處理啓動服務
    image
  • CLI連接,此時可能會看到如下錯誤
You must specify a region. You can also configure your region by running "aws configure".
  • 我們需要通過aws configure配置CLI,但由於是本地服務應用,其參數配置可以隨意:
    image
  • 我們嘗試創建一個musiccollection表
    image
    可以看到其並沒有創建成功,而是提示我們認證token是無效的請求。沒關係,說明連接成功了。
  • 繼續通過aws dynamodb list-tables –endpoint-url http://localhost:8765指令查看所有的表列表:
    image
    沒有任何表,命令執行成功。

總結

通過本章完成了本地DynamoDB的基本使用,爲後續的研究提供了基礎。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章