タグ

2021年5月16日のブックマーク (4件)

  • コンセプトから学ぶAmazon DynamoDB【LSI篇】 | DevelopersIO

    よく訓練されたアップル信者、都元です。今回はローカル・セカンダリ・インデックス(LSI)について深堀りしてみましょう。 ここまでの復習 その前に、色々復習しておきましょう。 DynamoDBのインデックス3種類 まず、DynamoDBが持てるインデックス3種類をあらためてまとめておきます。 暗黙的な、キー(ハッシュキーのみ、または、ハッシュキー+レンジキー)による検索のためのインデックス 明示的に定義した、ローカル・セカンダリ・インデックス(LSI) 明示的に定義した、グローバル・セカンダリ・インデックス(GSI) このうち、暗黙的なインデックスは1テーブルにつき1つだけ、LSI及びGSIは1テーブルにつき各5個まで定義できます。つまり、1つのテーブルには最小で1個、最大で11個のインデックスがあります。検索を行う場合は、まず「どのインデックスを使って検索をするか」を指定し、その上で検索条

    コンセプトから学ぶAmazon DynamoDB【LSI篇】 | DevelopersIO
  • DynamoDBのテーブル設計に最適!NoSQL WorkbenchのData modelerで今度こそDynamoDBを使いこなす! | DevelopersIO

    はじめに CX事業部の佐藤智樹です。 今回はAWSが提供しているDynamoDB用のアプリ「NoSQL Workbench」の機能を使ってデータモデリングする流れを解説します。 最近案件でテーブル設計を再検討する必要がありNoSQL Workbenchを使ったところ、サンプルデータを入れながら設計が正しいか検証でき非常に便利だったので紹介します。 他の記事でもアプリの紹介はありますが記事ではデータモデリングに絞って解説を行います。題材として多対多のデータをモデリングしながら設計する方法を紹介します。 記事を読めば今までDynamoDBのデータ設計に悩んでいた方の検討時間をかなり減らすことができます。自分ももっと早く「NoSQL WorkbenchのData modeler はこう使って欲しい!」という記事があれば良かったなあと思ったので記事にしました。 NoSQL Workbench

    DynamoDBのテーブル設計に最適!NoSQL WorkbenchのData modelerで今度こそDynamoDBを使いこなす! | DevelopersIO
  • DynamoDBのテーブルを1つだけにする設計のコツ(汎用的手法編) - @mizumotokのブログ

    DynamoDBではテーブルを1つだけにすることが推奨されています。前回の投稿ではDynamoDBのテーブルを1つだけにする設計のコツを具体例を元に考えてみました。今回はどんな場合にでも通用するような汎用的な手法を考えてみます。 mizumotok.hatenablog.jp エンティティにIDを追加 隣接関係のリスト設計パターン クエリの洗い出し グローバルセカンダリインデックスの多重定義 残りの項目 テーブル1つにする設計の汎用的手法 まとめ エンティティにIDを追加 エンティティにはユニークなIDを持たせるのが普通です。 前回の例にIDを持たせたデータは以下のようになります。 Artistテーブル ID ArtistName CarrerStart 1 David Bowie 1962 2 Bryan Adams 1975 3 Steely Dan 1972 Songテーブル ID

    DynamoDBのテーブルを1つだけにする設計のコツ(汎用的手法編) - @mizumotokのブログ
  • DynamoDBのテーブルを1つだけにする設計のコツ(考え方編) - @mizumotokのブログ

    DynamoDBは高速でスケーラブルでとても便利なデータベースです。便利なのですが、テーブル設計にはRDBMSのノウハウをそのまま使えません。例えば、DynamoDBではテーブルを1つだけにすることが推奨されています。テーブルを1つだけにする設計手法について考えてみましょう。 DynamoDBの特長 できるだけ少ないテーブル数で 1つのテーブルでの設計例 データの収集 クエリの洗い出し 1つのテーブルにする クエリーにあわせてセカンダリーインデックス 設計を汎用的に まとめ DynamoDBの特長 DynamoDBAWS(アマゾンウェブサービス)で提供される、とても便利なNoSQL データベースサービスです。高速なパフォーマンスとシームレスなスケーラビリティが特長です。 RDBMSではディスク容量が足りなくなったりしたら、基的にはディスクを増やす等の「スケールアップ(リソースを一箇所に

    DynamoDBのテーブルを1つだけにする設計のコツ(考え方編) - @mizumotokのブログ