並び順

ブックマーク数

期間指定

  • から
  • まで

281 - 318 件 / 318件

新着順 人気順

DynamoDBの検索結果281 - 318 件 / 318件

  • Amazon DynamoDB 向け NoSQL Workbench を使用したデータモデリング | Amazon Web Services

    Amazon Web Services ブログ Amazon DynamoDB 向け NoSQL Workbench を使用したデータモデリング  Amazon DynamoDB などの NoSQL データベースを使用する場合、リレーショナルデータベースで慣れているものとは異なる最適化を選択する傾向があります。リレーショナルデータベースの経験から、最初は別の方法で実行するように指示されていたため、簡単ではありませんでした。 これを支援するために、AWS は Windows および macOS で利用可能なクライアント側アプリケーションである Amazon DynamoDB 向け NoSQL Workbench をリリースしました。これを使用して、スケーラブルで高性能なデータモデルを構築し、クエリの開発とテストを簡素化できます。NoSQL Workbench を使用すると、次のことができま

      Amazon DynamoDB 向け NoSQL Workbench を使用したデータモデリング | Amazon Web Services
    • DockerでDynamoDBのローカル開発環境を構築するための下準備まとめ - Qiita

      はじめに DynamoDBを使用したアプリケーションを開発・テストしていると、AWS上のリソースを利用する必要が生じます。 しかしDynamoDB localを利用することで、アプリケーションの開発やテストをローカル環境で行えるようになります。 本記事では、DockerでDynamoDBのローカル開発環境を構築する方法と関連するツールについてまとめました。 DynamoDB localのコンテナ生成 DynamoDB localのDockerイメージを利用します。 DynamoDB localを使えば、AWS上のDynamoDB(Webサービス)に接続することなくDynamoDBを使ったアプリケーションの開発やテストができるようになります。 AWS公式ドキュメントをもとにdocker-compose.ymlを記述するだけで、簡単にDynamoDB localのコンテナを用意することができま

        DockerでDynamoDBのローカル開発環境を構築するための下準備まとめ - Qiita
      • DynamoDBの scan() でフィルターを使って取得したデータが0件でも、続きのデータが存在するか確認してみた | DevelopersIO

        DynamoDBの scan() でフィルターを使って取得したデータが0件でも、続きのデータが存在するか確認してみた DynamoDBのscan()やquery()で続きのデータがあるか判断するときは、取得したデータ件数ではなく、LastEvaluatedKeyで判断しましょう。 DynamoDBテーブルでscan()やquery()を使うとき、フィルタを使うことがあります。 そこでふと気になりました。フィルタ適応後のデータが0件でも、続きはあるよね?と。 最初にまとめ DynamoDBでscan()やquery()を使うとき、「続きのデータがある?(最後のデータ?)」の判断は、LastEvaluatedKeyを参照しましょう。データ件数で判断しないように注意です。 DynamoDBテーブルを準備する 以前に作成したDynamoDBテーブルを流用します。 scan()で調べてみる 1回のs

          DynamoDBの scan() でフィルターを使って取得したデータが0件でも、続きのデータが存在するか確認してみた | DevelopersIO
        • 【DynamoDB/Boto3入門】DynamoDBでアトミックカウンタを実装しつつ更新式について学ぶ。 - サーバーワークスエンジニアブログ

          こんにちは、技術一課の加藤です。先日、特定条件のファイルの個数をカウントするために、DynamoDBを使ったアトミックカウンタを実装しました。 こりゃー便利だと思うと同時に、DynamoDBのUpdateItemについてある程度わかっていないとちょっとだけ困るなあと感じたので、実装手順や注意点を備忘録的に書き残しておきます。 アトミックカウンタ 他の書き込みリクエストを妨害することなく、数値をカウントアップ/ダウンするようなカウンタのことをアトミックカウンタと呼びます。 例えばアクセスカウンタのような、1回の操作につき必ず1ずつカウントアップするような仕組みを考えるとします。普通に考えると、 SELECTして現在の値を取得する 取得した値に1を足して、UPDATEで値を更新する という2ステップが必要になりますがトランザクション管理をしっかりやっていないと、値の取得をしている間に別のクライ

            【DynamoDB/Boto3入門】DynamoDBでアトミックカウンタを実装しつつ更新式について学ぶ。 - サーバーワークスエンジニアブログ
          • 「DynamoDBとElasticsearch Serviceを組み合わせて、簡単な全文検索を実装してみた話」というテーマのビデオセッションで話しました #devio2020 | DevelopersIO

            こんにちは。坂井です。 2020/06/16より、弊社主催のオンラインイベント Developers.IO 2020 CONNECT が開催されております。 ライブセッションおよびビデオセッションでおよそ100本のセッションあります。 その中で私は、「DynamoDBとElasticsearch Serviceを組み合わせて、簡単な全文検索を実装してみた話」というビデオセッションを担当させていただきましたので、紹介させていただきます。 登壇資料 動画 セッション内容 サーバーレスなシステムなどでデータの保存先として DynamoDB を利用しているシステムは数多くあると思います。そのシステムに全文検索機能やその他の様々な検索機能を実装しようとした場合、 DynamoDB だけではなかなか実装が難しいと思います。 このような場合に、Elasticsearch Service を組み合わせて、

              「DynamoDBとElasticsearch Serviceを組み合わせて、簡単な全文検索を実装してみた話」というテーマのビデオセッションで話しました #devio2020 | DevelopersIO
            • Eugene Kawamoto on Twitter: "DynamoDBは当初アマゾンのeコマースを支える基幹データベースとして認知され、そこからNetflix, Airbnb, Snapなどのインターネット規模のアプリケーションを支えるデファクトDBとして使われる様になりましたがどの… https://t.co/RN8t52HIxn"

              DynamoDBは当初アマゾンのeコマースを支える基幹データベースとして認知され、そこからNetflix, Airbnb, Snapなどのインターネット規模のアプリケーションを支えるデファクトDBとして使われる様になりましたがどの… https://t.co/RN8t52HIxn

                Eugene Kawamoto on Twitter: "DynamoDBは当初アマゾンのeコマースを支える基幹データベースとして認知され、そこからNetflix, Airbnb, Snapなどのインターネット規模のアプリケーションを支えるデファクトDBとして使われる様になりましたがどの… https://t.co/RN8t52HIxn"
              • DynamoDBをS3へExportして、Glue+AthenaでSQLを実行する | フューチャー技術ブログ

                はじめにフューチャーの棚井龍之介です。 業務ではDynamoDBを利用しており、連日DynamoDBコンソール画面と睨めっこをしています。DynamoDBのコンソール画面は特定のデータをピンポイントで探すには優秀ですが、データ集計には全く向いていません。 そのため、統計調査や障害調査などによりデータ分析が必要になった場合、毎度awscliコマンドとbashコマンドのコラボレーションで試行錯誤しながら集計することになります。 DynamoDBでのデータ検索は原則「スキャンとクエリ」のみです。SQLのWHERE句に似たfilterという機能はありますが、テーブル同士のJOINや複雑な条件絞り込みは難しいため「SQLが打てれば一瞬で解決できるのに、どうしてこんな面倒なんだ。これが低レイテンシの代償なのか」と考えていました。 何度もデータ集計をして、「aws dynamodb xx yy zz ~

                  DynamoDBをS3へExportして、Glue+AthenaでSQLを実行する | フューチャー技術ブログ
                • 魔法で作る Amazon DynamoDB の簡単ゲームインベントリ - builders.flash☆ - 変化を求めるデベロッパーを応援するウェブマガジン | AWS

                  ゲームな皆さんこんにちは、Game Solutions Architect の Leng (@msian.in.japan) と Game Developer Relations の Taka (@takahiroishii_) です。 この投稿ではゲームのバックエンドを初めてクラウド化させようと考えていて、オンラインゲームを作成する上で Amazon DynamoDB のデータ設計の基礎を学んでみたい、もしくは DynamoDB をゲームから学びたい、そんな皆さんが読んですぐにゲームデザインに合ったテーブル設計ができる事を目指した魔法のような記事になります。 選択 Amazon DynamoDB で作るサーバーレスなゲーム用アチーブメントマイクロサービス AWS の知識ゼロから始める AWS GameKit Amazon GameLift を使って「最短」でマルチプレイヤーゲームを作る

                    魔法で作る Amazon DynamoDB の簡単ゲームインベントリ - builders.flash☆ - 変化を求めるデベロッパーを応援するウェブマガジン | AWS
                  • AppSyncでGraphQLへの入門| GraphQL, DynamoDBを知らない方へ - クロスパワークラウドブログ

                    こんにちは、クロスパワーの佐々木です。 とうとう私にも後輩ができまして、彼らの追い上げに焦る毎日です。 全くもって竹のような後輩です。 さて、以前Amplifyについてざっくりと書いたのですが、 AWS AppSyncについては、あまり馴染みが無い方も多いのではないかと思い、入門的な記事を書くことにいたしました。 【対象者】 〇 AWS AppSyncを最低限使えるようになりたい方 〇 AWS AppSync, GraphQL, DynamoDBを知らない 〇 竹のような後輩に焦りを感じている AWS AppSyncとは REST APIとは違う、GraphQLというAPI仕様を用いて「柔軟なAPI」を提供するマネジメントサービスです。 何が柔軟かと言えば、リクエストが来たらリソースを返すだけではなく、リクエストに応じてLambdaで処理を実行したり、HTTPリクエストをすることも可能なの

                      AppSyncでGraphQLへの入門| GraphQL, DynamoDBを知らない方へ - クロスパワークラウドブログ
                    • オレのDynamoDB Streamsが再着火しないわけがない | フューチャー技術ブログ

                      はじめにこんにちは、TIG DXユニット真野です。 タイトルのみで内容にあたりがつく、AWSお兄さんな方も多いかと思いますが、内容サマリです。 一度着火済みであるDynamoDB Streamsイベントを再着火させる公式機能は存在しない(管理コンソールでボタンポチではできないという意図です) 何かしらのスクリプトでGet(Scan) + Put(Update)して、再度データ編集する必要がある この時、Get(Scan)した内容をそのままPutしてもDynamoDB Streamsは起動せず、何かしらの項目変更や項目追加が必要 ..です。 興味がある方向けに説明を続けます。 DynamoDB Streamsとは DynamoDB Streamsは、DynamoDBに対する項目の追加、変更、削除をイベントとして検出できる機能です。テーブルの項目が変更されるとすぐに、新しいレコードがテーブルの

                        オレのDynamoDB Streamsが再着火しないわけがない | フューチャー技術ブログ
                      • チュートリアル: Lambda と DynamoDB を使用して CRUD HTTP API を作成する - Amazon API Gateway

                        このチュートリアルでは、DynamoDB テーブルから項目を作成、読み取り、更新、削除するサーバーレス API を作成します。DynamoDB は、高速で予測可能なパフォーマンスとシームレスな拡張性を特長とするフルマネージド NoSQL データベースサービスです。このチュートリアルの所要時間は約 30 分で、AWS の無料利用枠内で実行できます。 まず、DynamoDB コンソールを使用して DynamoDB テーブルを作成します。次に、AWS Lambda コンソールを使用して Lambda 関数を作成します。次に、API Gateway コンソールを使用して HTTP API を作成します。最後に、API をテストします。 HTTP API を呼び出すと、API Gateway はリクエストを Lambda 関数にルーティングします。Lambda 関数は DynamoDB と対話し、A

                        • ストリーム処理のエラー制御がより柔軟に!!Kinesis Data StreamsとDynamoDB Streamsから起動するLambdaでチェックポイントが利用可能になりました #reinvent | DevelopersIO

                          CX事業本部@大阪の岩田です。 Kinesis Data StreamsとDynamoDB Streamsから起動するLambdaで新たに「チェックポイント」が利用できるようになり、処理が「途中まで成功した」という情報をLambdaだけで管理できるようになりました。 さっそく試してみたいと思います。 何が嬉しいのか? Kinesis Data Streams/DynamoDB Streamsから起動するLambdaのイベントデータには、「バッチ」という処理単位で複数レコードの情報が渡ってきます。これまでLambda単体ではバッチ全体での処理成功/失敗しか表現できず、レコード単位での処理成功/失敗を管理するには別途DynamoDBなどを利用する必要がありました。 バッチの途中で処理が異常終了するケースについて考えてみましょう。例えば10レコードがLambdaに渡ってきた場合に7レコードまで処

                            ストリーム処理のエラー制御がより柔軟に!!Kinesis Data StreamsとDynamoDB Streamsから起動するLambdaでチェックポイントが利用可能になりました #reinvent | DevelopersIO
                          • 40分で分かる DynamoDBでのApp開発

                            DevDay Tokyo 2019での発表資料です。実際のセッションではサンプルコードと一緒に解説をした旨了承ください。

                              40分で分かる DynamoDBでのApp開発
                            • Azure Cosmos DB から Amazon DynamoDB に移行する際に想定される相違点 | Amazon Web Services

                              Amazon Web Services ブログ Azure Cosmos DB から Amazon DynamoDB に移行する際に想定される相違点 (本記事は 2023/01/27に投稿された Differences to expect when migrating from Azure Cosmos DB to Amazon DynamoDB を翻訳した記事です。) Azure Cosmos DBのワークロードをAmazon DynamoDBに移行することを検討しているお客様から、どのような違いが想定されるのかと聞かれることがあります。この記事では、Azure Cosmos DBからDynamoDBへの移行時に想定される相違点と、それに備えるための計画について説明します。DynamoDBは、一般的なアクセスパターン (通常は大量のデータの保存と取得) に合わせて最適化された、サーバーレ

                                Azure Cosmos DB から Amazon DynamoDB に移行する際に想定される相違点 | Amazon Web Services
                              • 入門 DynamoDB

                                Amazon DynamoDB ( 以下 DynamoDB ) の入門書です。DynamoDB の基本用語や概念、テーブル設計技法などをやさしく解説しました。本書が AWS 認定資格の勉強をした / 実際に DynamoDB を触ったけどよくわからなかったという人の一助となればと思います。

                                  入門 DynamoDB
                                • DynamoDB Streams と AWS Lambda のトリガー - Amazon DynamoDB

                                  3 つ以上の Lambda 関数を 1 つの DynamoDB ストリームにサブスクライブすると、読み込みスロットリングが発生する可能性があります。 AWS Lambda サービスは、1 秒に 4 回、ストリームをポーリングして新しいレコードを探します。新しいストリームレコードが利用可能になると、Lambda 関数が同期的に呼び出されます。同じ DynamoDB ストリームに最大 2 つの Lambda 関数をサブスクライブできます。同じ DynamoDB ストリームに 3 つ以上の Lambda 関数をサブスクライブすると、読み込みスロットリングが発生する可能性があります。 Lambda 関数は、通知の送信やワークフローの開始など、指定した他の多くのアクションを実行できます。各ストリームレコードを Amazon S3 File Gateway (Amazon S3) などの永続的ストレー

                                  • DynamoDB Transactionsで複数テーブルにまたがる書き込み処理をしてみる | DevelopersIO

                                    広島の吉川です。 DynamoDB Transactionsが気になっていながらあまり触ったことがなかったため、簡単にではありますが検証してみました。 Amazon DynamoDB Transactions: 仕組み - Amazon DynamoDB TransactWriteItems オペレーションは、含まれるすべてのアクションを正常に完了する必要があり、そうでない場合は変更がまったく行われないという点で BatchWriteItem オペレーションとは異なります。 ということなので、 トランザクション内で2つの書き込み操作を行い、両方成功する場合→すべての書き込み処理が有効になる トランザクション内で2つの書き込み操作を行い、後者のみ失敗した場合→失敗していない前者を含むすべての書き込み処理が無効になる のパターンを実際に手を動かしながら試してみたいと思います。また、単一テーブル

                                      DynamoDB Transactionsで複数テーブルにまたがる書き込み処理をしてみる | DevelopersIO
                                    • AWS API Gateway(HTTP API) + Lambda + DynamoDB でサーバレスアーキテクチャを構築する - ROXX開発者ブログ

                                      この記事は個人ブログと同じ内容です www.ritolab.com AWS の API Gateway(HTTP API) + Lambda + DynamoDB を使ってサーバレスアーキテクチャを構築してみます。 開発環境 - Terraform v1.0.2 DynamoDB テーブルを作成 データベースを用意します。DynamoDB にテーブルを作成します。 構成としては、date(年月日)をパーティションキーにして、ソートキーに time(時分秒)を起きたいと思います。 先に見せるとこんな感じのテーブルを作ります main.tf resource "aws_dynamodb_table" "event_log_table" { name = "EventLog" billing_mode = "PROVISIONED" read_capacity = 1 write_capacit

                                        AWS API Gateway(HTTP API) + Lambda + DynamoDB でサーバレスアーキテクチャを構築する - ROXX開発者ブログ
                                      • DynamoDBでのトランザクションを実際に使って考えてみる。 - Qiita

                                        背景 AWS使ってサーバーレスで自分用の家計簿的なwebサービスを勉強も兼ねて開発中。消費情報を登録する部分を作り、最近それに加えて残金管理を出来るようにした。 そうなると1つの消費情報登録で、複数のテーブルに対して更新を行う事になる。整合性を保つために、トランザクション制御を行いたい。 防ぎたいケース 片方のテーブル更新後、別テーブルの更新に失敗による不整合データ発生 複数人同時処理時、更新前データ取得による不正値更新(自分しか使わないけど) DynamoDBの特性復習 読み込み整合性 を強力にする事は出来るが、基本的に結果整合性を使うべき。(複数ノードに書き込まれる前に読み出すと古いデータが読まれる) javaでDynamoDBトランザクションを実現してるライブラリ が存在する 2018年末にDynamoDBのトランザクション機能 が発表された。前述ライブラリでなく、こちらを使用するの

                                          DynamoDBでのトランザクションを実際に使って考えてみる。 - Qiita
                                        • Amazon AthenaからFederated QueryでDynamoDBに接続してみた | DevelopersIO

                                          こんにちは、CX事業本部の若槻です。 Amazon AthenaではFederated Queryを用いることにより、Amazon S3以外のデータソースに接続してデータを抽出することが可能となります。 Using Amazon Athena Federated Query - Amazon Athena Federated Queryには既定で下記のようなデータソースへの接続の作成が用意されています。また独自のコネクタをLambda関数を作成して使用することも可能です。 Amazon CloudWatch Logs Amazon CloudWatch Metrics Amazon DocumentDB Amazon DynamoDB Amazon Redshift Apache HBase MySQL PostgreSQL Redis そこで今回は、Amazon AthenaからFede

                                            Amazon AthenaからFederated QueryでDynamoDBに接続してみた | DevelopersIO
                                          • Web アプリ開発のための Amazon DynamoDB 設計を考える - builders.flash☆ - 変化を求めるデベロッパーを応援するウェブマガジン | AWS

                                            AWS 長期インターン生の嶋田です。 私は現在就活中なので、インターンや選考に応募するためにエントリーシートを書くことが多いです。エントリーシートでは「学生時代に頑張ったことは ?」など、200 ~ 500 字程度で答える設問がありますが、1 つの設問に対して複数の回答文候補を作成したり、それらを修正したりする中で、多くの回答文ができてしまい、以下のような課題を感じていました。 複数の回答文の中でどれを提出したのか、わからなくなってしまう。 作成した回答文を時系列でわかりやすく見たい。 面接前など「提出した作文を見直したい !」という時に「確認したい回答文が見つからないまま面接の時間になってしまった」という悲しい事態が起こらないよう、エントリーシートを管理するためのウェブアプリを作りました。 データベースとして Amazon DynamoDB を利用したのですが、DB 初心者の私はその設計

                                              Web アプリ開発のための Amazon DynamoDB 設計を考える - builders.flash☆ - 変化を求めるデベロッパーを応援するウェブマガジン | AWS
                                            • DynamoDBでも検索したい

                                              2020年1月に実施したオンライン技術イベント「HandsWash2020~洗いざらい話します!東急ハンズを支える システムの裏側とハンズラボの取り組み~」の登壇資料です。 AWSのNoSQL データベースサービス、DynamoDBで高速検索をどう実現するか?についてお話しました。

                                                DynamoDBでも検索したい
                                              • IoT Coreルールアクションの DynamoDB と DynamoDBv2 の違いを調べてみた | DevelopersIO

                                                IoT Coreのルールアクションには「DynamoDB」と「DynamoDBv2」があります。 「ん? 何がどう違うの???」となったので、実際に試してみました。 DynamoDBを準備する 次のDynamoDBテーブルを作成します。 テーブル名: iot_sample パーティションキー: id(文字列) アクション:DynamoDBのとき IoTルールの作成 次のIoTルールを作成します。 SQL SELECT timestamp() as aws_timestamp, principal() as id, * as payload FROM '/topic/sample' パーティションキーの値を一意にするために、${principal()}を設定しています(デバイスを区別するため)。 もしトピック内にデバイスを特定する何らかのIDがあるなら、topic(2)等を使用すると良さそう

                                                  IoT Coreルールアクションの DynamoDB と DynamoDBv2 の違いを調べてみた | DevelopersIO
                                                • Amazon DynamoDB の使用開始 | Amazon Web Services

                                                  Amazon Web Services ブログ Amazon DynamoDB の使用開始 Amazon DynamoDB は、任意の規模で 1 桁のミリ秒のパフォーマンスを実現するために構築されたキーと値およびドキュメントデータベースです。これは、マルチリージョンでマルチマスターのフルマネージドデータベースで、組み込みのセキュリティ、バックアップとリストア、およびインターネット規模のアプリケーション用のメモリ内キャッシュを備えています。 この記事では、開始するために知っておく必要がある基本的な事項を確認します。テーブルを作成し、DynamoDB テーブルを設計するときの主な考慮事項について学習します。次に、いくつかのサンプル項目を挿入し、最後にそれらをクエリします。サンプル項目は実際の例で、AWS のオープンデータのレジストリからの Amazon Customer Reviews Dat

                                                    Amazon DynamoDB の使用開始 | Amazon Web Services
                                                  • DynamoDBの基本についてまとめてみた【初心者向け】|カルキチのブログ

                                                    カルキチのブログバックエンドDynamoDBの基本についてまとめてみた【初心者向け】2022-05-04DynamoDBの基本についてまとめてみた【初心者向け】 いま携わっている開発で初めてDynamoDBを触ったのですが、色々不明点が多かったのでまとめてみることにしました。 今までRDBMSしか使った開発しかやったことがなく、NoSQLに関してはほとんど知見がなかったので、かなり基本的なことしか書いていないです。 DynamoDBとは?DynamoDBとは、AWSが提供するキーバリュー型のNoSQLデータベースです。 以下公式の引用です。 Amazon DynamoDB は、ハイパフォーマンスなアプリケーションをあらゆる規模で実行するために設計された、フルマネージド、サーバーレスの key-value NoSQL データベースです。DynamoDB は、内蔵セキュリティ、継続的なバックア

                                                      DynamoDBの基本についてまとめてみた【初心者向け】|カルキチのブログ
                                                    • DynamoDBのキャパシティユニットについて - 闘うITエンジニアの覚え書き

                                                      読み書きの度に料金がかかる 読み込み/書き込みキャパシティーモードとして「プロビジョニング」と「オンデマンド」から選択できる プロビジョニングモードの場合 月あたり 25WCU、25RCU は無料利用可能 読み込み/書き込み キャパシティユニット単位 で料金がかかる テーブルや索引(GSI/LSI)に事前にキャパシティユニットを割り当てる必要がある 事前に割り当てたキャパシティユニットを超えるスループットは出せない ※ProvisionedThroughputExceededException が発生する 1 読込キャパシティーユニットで、最大サイズ 4KB の項目について、1秒あたり1回の強力な整合性のある読み込み 又は 1秒あたり2回の結果整合性のある読み込みが可能 ※4KB未満のレコードはレコード毎に4KBに切り上げられて計算される 1書込キャパシティーユニットで、最大でサイズ 1K

                                                      • YouTuber になったから、活動を支えるサービスを React, API Gateway, Lambda, DynamoDB で作りかけた - Qiita

                                                        YouTuber になったから、活動を支えるサービスを React, API Gateway, Lambda, DynamoDB で作りかけたAWSDynamoDBlambdaReactAPIGateway 2019年の7月、YouTube にゲーム実況チャンネルを開設しました。 本記事では、YouTube 活動に際して発生した問題点の紹介と、ツールをつくってそれを解決しようとした話をします。 どのような YouTube チャンネルか。収録環境の説明 開設したチャンネルの特徴は以下です。 配信する内容はゲーム実況 2人で実況する 1人がプレイヤー、もう1人が Skype の画面共有を通じてゲームプレイを見て喋る 収録環境について、図にするとこのようになります。 本記事では「YouTube 動画撮影の問題点と、その問題点を解決するためのサービスを作ろうとした話」を紹介しますが、問題点というの

                                                          YouTuber になったから、活動を支えるサービスを React, API Gateway, Lambda, DynamoDB で作りかけた - Qiita
                                                        • GraphQL API と AWS AppSync によるシングルテーブルとマルチテーブルの DynamoDB 設計パターン | Amazon Web Services

                                                          Amazon Web Services ブログ GraphQL API と AWS AppSync によるシングルテーブルとマルチテーブルの DynamoDB 設計パターン GraphQL は、API のためのクエリ言語であり、既存のデータを使ってクエリを実行するためのランタイムです。GraphQL は、API 内のデータについて完全で理解しやすい記述を提供し、クライアントが必要なものだけを要求する力を与えます。AWS AppSync はフルマネージドの GraphQL と Pub/Sub API のサービスで、AWS Lambda、Amazon Aurora、Amazon OpenSearch、Amazon DynamoDB などの異なるデータソースに接続する能力をユーザーに提供します。DynamoDB は、あらゆる規模の高性能アプリケーションを実行するために設計された、完全に管理された

                                                            GraphQL API と AWS AppSync によるシングルテーブルとマルチテーブルの DynamoDB 設計パターン | Amazon Web Services
                                                          • Cognito でサインアップしたユーザーの情報を DynamoDB に保存するには?

                                                            みんな大好き AWS Cognito。 最近のサーバーレスアーキテクチャでは採用されることも多いと思いますが、1つ疑問がありました。 サインアップしたユーザーの情報はアプリ側でどう使えばいいの? ということです。 調べても中々出なかったので、今回はこの件について書きます🙌 結論 Cognito に保存されているユーザー情報を「認証・認可」以外で使うのはイケてない サインアップ時に別途 DBに保存すべき Cognito の Lambda トリガーで実現可能 解説 cognito ユーザープールにはユーザーに関する色んな情報が登録されますが、これらはあくまでも「認証・認可」のために使う情報です。 アプリ側で直接参照して使うものではありません。 例えばユーザーの詳細画面を実装するときに、 cognito にアクセスして取得した情報を表示するのはあまり良くありません。 DB では無いので扱いも大

                                                              Cognito でサインアップしたユーザーの情報を DynamoDB に保存するには?
                                                            • DynamoDBの query() で FilterExpression を使ってデータ取得条件を設定する | DevelopersIO

                                                              何らかの情報取得APIを作るとき、権限チェックをします。たとえば、「Aさんが所持しているデバイスか?」といった具合です。他人のデバイスの情報取得をしている場合、それは403エラー等で失敗させる必要があります。 このような実装を考えてみました。 おすすめの方 DynamoDBのget_item()を参考にしたい方 DynamoDBのquery()を参考にしたい方 実験用のDynamoDBテーブルを用意する 適当なDynamoDBテーブルを作成します。 サンプルデータを用意します。 { "userId": "test1", "devices": [ "d0001", "d0002" ] } 例1: ソースコードで判定する DynamoDBテーブルから「指定したユーザが所持するデバイス一覧」を取得し、判定する例です。 指定デバイスを所持しているか?の判定をif文で行っています。 lambda.p

                                                                DynamoDBの query() で FilterExpression を使ってデータ取得条件を設定する | DevelopersIO
                                                              • Amazon DynamoDB用 NoSQL Workbenchでsession tokenを使って接続してみた | DevelopersIO

                                                                Amazon DynamoDB用 NoSQL Workbenchが、先日一般公開(GA)されたので色々試しています。 Amazon DynamoDB 用 NoSQL Workbench が一般公開されます。 個人的にはスイッチロールしてアクセスできるのかがすごく気になったので試してみました。 できます。 ただそれだけの話なのですがw、試す過程で全部CLIでテスト環境を用意できるようにしていて、せっかくなのでやったことを公開します。一部でも全部でも読者様(と、しばらく後に忘れかけるであろう自分)の参考になれば嬉しいです。 単純にツールの使い方だけ知りたい場合には「作成したロールにスイッチロールしてNoSQL Workbenchへ接続確認」のセクションから見ていただければと思います。 Amazon DynamoDB 用 NoSQL Workbenchとは DynamoDB用の開発ツールです。テ

                                                                  Amazon DynamoDB用 NoSQL Workbenchでsession tokenを使って接続してみた | DevelopersIO
                                                                • 【AWS】DynamoDBのキーとソートとフィルタについて - echo("備忘録");

                                                                  きっかけ 先日、とあるサーバーレスアプリを作っていた際、DynamoDBについて下記のツイートをしました。 ここに来て、DynamoDBの構成を変えなきゃいけない可能性が。てかプライマリキー、完全一致検索しかできないの?— Masaki Suzuki@フリーランスクラウドエンジニア (@makky12) 2020年2月4日 そうしたら、下記の突っ込みリプを頂きました。 プライマリーキーではなくパーティションキーなのです このキーの値によってデータが配置されるノードが決まります。同一ノード内ではある程度検索ができる(レンジキーやローカルインデックスではソートや絞り込みができる)わけですねー ホットキーがタブーなのも特定のノードに処理が偏るからですね というか確かに、DynamoDBのキーの扱いについて、認識がイマイチあいまいだなあ...と思う部分があったので、この機会にちょっと調べてみました

                                                                    【AWS】DynamoDBのキーとソートとフィルタについて - echo("備忘録");
                                                                  • [Cloudflare Pages+Next.js] AWS SDK for JavaScript v3を使ってDynamoDBからデータ取得して表示してみる | DevelopersIO

                                                                    [Cloudflare Pages+Next.js] AWS SDK for JavaScript v3を使ってDynamoDBからデータ取得して表示してみる どうも!オペレーション部の西村祐二です。 最近、Cloudflare、Next.jsをさわっています。 Next.jsをCloudflare Pagesでホスティングして、DynamoDBからデータを取得するところまでいろいろハマりながら手順がわかったので、備忘録兼ねてまとめておきます。 DynamoDBからデータを取得する処理はNext.jsのAPI Routesを使ってAPIを実装し、Edgeランタイムの設定を行い、CloudflareのEdge側で動作させる方針です。 https://nextjs.org/docs/api-routes/introduction 前提条件 AWS側の初期設定やwranglerの初期設定は完了し

                                                                      [Cloudflare Pages+Next.js] AWS SDK for JavaScript v3を使ってDynamoDBからデータ取得して表示してみる | DevelopersIO
                                                                    • DynamoDBで運用しているテーブルにAthenaでクエリを実行するために考えたこと | DevelopersIO

                                                                      最初に こんにちは、yoshimです。 AthenaからDynamoDBで運用しているテーブルにアクセスする、となると一番シンプルなのはAthenaのFederated Queryを使う事だと思います。 ただ、他にも「DynamoDBテーブルのデータをS3に出力→AthenaでこのS3のデータを参照」といった方法もあり、これらの方法の使い分けのイメージが自分の中で整理できていなかったので、それぞれの手法を実際に手を動かして確認してみました。 なお、本エントリーでは「各サービスの説明」や「具体的な手順」についての説明は必要最低限のみ、とします。 目次 1.はじめに 2.パターン1の検証 3.パターン2の検証 4.まとめと比較 5.参照 1.はじめに 本エントリーではAthenaからDynamoDBで運用しているテーブルにSQLを実行するために、下記2パターンの構成について比較していきます。

                                                                        DynamoDBで運用しているテーブルにAthenaでクエリを実行するために考えたこと | DevelopersIO
                                                                      • 定期的にDynamoDBのデータをS3バケットにCSV形式で保存するLambdaを作成してみた | DevelopersIO

                                                                        はじめに Amazon DynamoDBのデータを毎日Amazon S3バケットへCSV形式で保存するAWS Lambdaを作成する機会がありましたので、紹介します。 構成としては以下のとおりです。 Amazon EventBridge Schedulerで毎日01:00にLambdaを呼出します Lambdaは、DynamoDBから前日に保存されたデータを取得します。 LambdaでCSV形式に変換し、S3バケットに保存します。 DynamoDBのテーブルは、属性としてデータを保存した日付が入っていれば、テーブルは何でもよいですが、今回は以下の記事で作成したテーブルを利用します。 本記事で使用するDynamoDBのテーブルには、start_date(保存した日付)の属性が必要です。存在しない場合は、新たに追加してください。 保存した日付:start_date(必須) 例:2024-04-

                                                                          定期的にDynamoDBのデータをS3バケットにCSV形式で保存するLambdaを作成してみた | DevelopersIO
                                                                        • Understanding DynamoDB Condition Expressions | DeBrie Advisory

                                                                          If you're working with DynamoDB, you're likely to rely on Condition Expressions when manipulating items in your table. Condition Expressions can ensure you don't overwrite existing users, allow bank account balances to drop below \$0, or give Admin access to every user in your application. Yet despite their usefulness, I see Condition Expressions misunderstood quite often. My hunch is that this is

                                                                            Understanding DynamoDB Condition Expressions | DeBrie Advisory
                                                                          • Amazon DynamoDB のアダプティブキャパシティーは、頻繁にアクセスされるアイテムを自動的に分離することで、アンバランスなワークロードをより適切に処理が可能に

                                                                            Amazon DynamoDB のアダプティブキャパシティーは、頻繁にアクセスされるアイテムを自動的に分離することで、アンバランスなワークロードをより適切に処理するようになりました。お使いのアプリケーションが 1 アイテム以上に偏った高いトラフィックを送る場合は、頻繁にアクセスされるアイテムが同一パーティション内に存在しないように、DynamoDB がパーティションのバランスを再調整します。この最新の機能強化で、ワークロードにおいて妨げられることのないパフォーマンスを維持できます。また、スループットをより効率的にプロビジョンできるため、コスト削減効果が得られます。不均等なデータアクセスパターンへの対応のためにオーバープロビジョニングなることはありません。 アダプティブキャパシティーはデフォルトで有効になっているため、追加料金なしですべての DynamoDB テーブルおよびグローバルセカンダ

                                                                              Amazon DynamoDB のアダプティブキャパシティーは、頻繁にアクセスされるアイテムを自動的に分離することで、アンバランスなワークロードをより適切に処理が可能に
                                                                            • RDBに慣れた人にこそ知ってもらいたい、DynamoDBの特徴まとめ - Qiita

                                                                              こちらは AWS for Games Advent Calendar 2022 の5日目の記事です。 はじめに ゲーム開発にあたり、MySQLなどのRDBを使い慣れている方は多いと思いますが、DynamoDBをゲームで使うことを考えたことはありますでしょうか。 「DynamoDB…AWSのNoSQLのサービスですよね。なんかよく知らないけどRDBで困ってないし別にいいじゃん?」 「なんかいいこともあるって話は聞くけど、いろいろ勉強しなおさないといけないんでしょ…コスパ悪いっしょ」 そんな風に考えた方も、多いかもしれません。 この記事はそんなRDBユーザーの方にこそ知ってもらいたい、DynamoDBをゲームで使うにあたってのギモンをFAQ形式で見ていきたいと思います。テクニカルなことよりも、性質や雰囲気重視でラフな文章でまとめていきます。では早速いきましょう。 DynamoDBに関するFAQ

                                                                                RDBに慣れた人にこそ知ってもらいたい、DynamoDBの特徴まとめ - Qiita