タグ

AWSとDynamoDBに関するkochizufanのブックマーク (5)

  • AWS LambdaでDynamoDBから取得した値に任意の集計をかける(グルーピング処理追加) - Qiita

    以前の投稿の更新版です。前の仕組みでは一つのデータに対しての集計しかけられなかったのですが、それでは実運用上あまりに不便、と思ったので、指定した値でグルーピングできるようにしてみました。 AWS LambdaでDynamoDBから取得した値に任意の集計をかける インプットデータのフォーマット変更 ほとんど使い方は以前のものと一緒ですが、以下の点だけ変えました。 IDは配列形式(["sensor1", "sensor2"])で指定するように仕様変更した。 テーブル名を環境変数から取得するようにした。 IDは配列形式(["sensor1", "sensor2"])で指定するように仕様変更した こんな感じが最新のフォーマットです。 { "label_id": "id", "label_range": "timestamp", "id": [ "sensor1", "sensor2" ], "ag

    AWS LambdaでDynamoDBから取得した値に任意の集計をかける(グルーピング処理追加) - Qiita
  • AWS Lambda & DynamoDBのベストプラクティスを求めて - Qiita

    こんにちはsekitakaです。 serverlessな環境での開発も随分慣れてきましたが、コードの再利用性についてどうしようか悩んでいるので考えたこと&暫定結論を公開します。 ベストプラクティスを模索中なのでコメントでの議論も大歓迎です。 前提条件 共通するDynamoDBのテーブル(例:User)を参照する3つのプロジェクトがある。 プロジェクトP1 プロジェクトP2 プロジェクトJ1 以下のような状況になっている。 プロジェクトP1には既にUserデータのデータを取得する関数がある プロジェクトP1,P2はPythonで実装されており、プロジェクトJ1はJavaScriptで実装されている。 プロジェクトは全てLambda関数郡としてデプロイされる。 お題 Userテーブルからのデータ取得を各プロジェクトに組み込むにはどんな方法がよいか考える 案 案1 - 車輪の再発明を恐れない 各

    AWS Lambda & DynamoDBのベストプラクティスを求めて - Qiita
  • [AWS] DynamoDBでシーケンス用テーブルを作る (Node.js) - Qiita

    DynamoDBはシーケンス発行の仕組みを持っていませんが、アトミックカウンターの使ってインクリメントすることができます。 シーケンス用テーブル作成 まずはシーケンス用のテーブルを作成します。 ここでは「sequences」という名前にします。 プライマリキーは「name」で文字列です。 テーブルができたら、項目を作成します。 name:シーケンス発行したいテーブル名 current_number:現在のシーケンス値(最初だから0)を設定 DynamoDBの準備は完了です。 シーケンス発行方法 Node.jsでの例です。 Lambdaで実行することを想定したコードです。 'use strict'; const table = 'test_table'; const AWS = require('aws-sdk'); const docClient = new AWS.DynamoDB.Do

    [AWS] DynamoDBでシーケンス用テーブルを作る (Node.js) - Qiita
  • AWS Lambdaを利用したAutoScaling DynamoDB | DevelopersIO

    はじめに Amazon DynamoDBは低レイテンシで安定したスループットもつNoSQLサービスです。コストが低く使いやすいので弊社でも様々な案件で利用しています。 DynamoDBではあらかじめテーブルごとに読み込み/書き込みのスループットを指定することができます。 例えば、参照が多いサービスで利用する場合は読み込み:1000回/秒、書き込み:100回/秒のプロビジョンドスループットを設定するという具合です。 プロビジョンドスループットを超えた操作が発生した場合、バーストキャパシティ(バースト用に貯められている予備キャパシティ)が残っていればそれが利用されますが、バーストキャパシティを使い切っている場合、操作に失敗します。 なので、ある程度余裕を持ったプロビジョンドスループットの設定が必要です。 とはいってもスループットを事前に予測するのは難しいため、予測を超えたスループットが発生した

    AWS Lambdaを利用したAutoScaling DynamoDB | DevelopersIO
  • Node.js+Dynamo DBでレコードを検索する - Sanwa Systems Tech Blog

    こんにちは、AWS担当のwakです。 前回・前々回の記事ではLambdaからSlackへの通知を行いましたが、そこではスクリプト内部にパラメーターをハードコードしていました。これを改善するためにDynamoDBを使おうと思ってコードのサンプルを探してみたのですが、古い記事や新しい記事が入り交じっていて何が最新なのかよく分からなくなってきたためまとめることにします。 この記事の内容 AWS Lambda(Node.js)からSDKを使ってDynamoDBを利用する際、クライアントオブジェクトを生成するためのやり方がいくつかあります。その内容について説明しています。 前提条件 以下のコードは全てDynamoDBにアクセスする権限のあるロールでLambdaから実行しています。また、DynamoDBには事前にテーブルを作成し、数レコードのデータを投入してあるものとします。 DocumentClie

    Node.js+Dynamo DBでレコードを検索する - Sanwa Systems Tech Blog
  • 1