Skip to content

Latest commit

 

History

History
488 lines (304 loc) · 13.8 KB

index.md

File metadata and controls

488 lines (304 loc) · 13.8 KB

Table of Contents

Dynamola

Dynamola, the DynamoDB easy library for Lambda functions. (https://github.com/javichur/dynamola)

Parameters

  • tableName string nombre de la tabla en DynamoDB.
  • partitionKeyName string nombre de la Clave de Partición de la tabla.
  • sortKeyName string nombre de la Clave de Ordenación de la tabla (opcional).

Meta

constructor

Parameters

  • tableName
  • partitionKeyName
  • sortKeyName

Examples

// constructor, para tabla con Clave Principal Compuesta (Clave Partición y Clave Ordenación)
let myDb = new Dynamola("nombreMiTablaMensajes", "userId", "fechaHora");
// constructor, para tabla con Clave Principal Simple (solo Clave Partición):
let myDb = new Dynamola("nombreMiTablaUsuarios", "userId", null);

getItemWithPrimarySortKey

Obtiene un elemento en una tabla con clave principal compuesta (clave partición + clave ordenación).

Parameters

  • partitionKeyValue string valor de la clave de partición.
  • sortKeyValue string valor de la clave de ordenación.

Returns Promise<Object> promise con el elemento.

getItem

Obtiene un elemento en una tabla con Clave Principal Simple (solo Clave Partición)

Parameters

  • partitionKeyValue string valor de la clave de partición.

Returns Promise<Object> promise con el elemento.

getItemGreatestWithPrimarySortKey

Devuelve el elemento con mayor valor en SortKey, y con el partitionKeyValue indicado.

Parameters

getItemGreatestByLSI

Devuelve el elemento con valor máximo en la clave de ordenación del índice secundario local.

Parameters

  • partitionKeyValue string valor de clave de partición.
  • lsiIndexName string Nombre del índice secundario local.

Returns any elemento con valor máximo en clave de ordenación del índice secundario local.

getAllItemsByPartitionKey

En tablas con Clave Principal Compuesta (partición+ordenación), devuelve todos los items para el valor de Clave de Partición dado.

Parameters

  • partitionKeyValue string valor de la clave de partición.

Returns Promise<Object> promise con array de elementos.

getItemsBySortKeyInRange

En tablas con Clave Principal Compuesta (partición+ordenación), devuelve todos los items para el valor de Clave de Partición dado, cuya Clave de Ordenación está en el rango dado.

Parameters

  • partitionKeyValue string valor de la clave de partición.
  • sortKeyRangeFrom
  • sortKeyRangeTo
  • rangeFrom string inicio rango de la clave de ordenación.
  • rangeTo string fin rango de la clave de ordenación.

Returns Promise<Object> promise con array de elementos.

getItemsBySortKeyBeginsWith

En tablas con Clave Principal Compuesta (partición+ordenación), devuelve todos los items para el valor de Clave de Partición dado, cuya Clave Ordenación empieza por sortKeyValueBeginsWith.

Parameters

Returns Promise<Object> promise con array de elementos.

getItemsByLSI

Busca utilizando un Índice Local Secundario (LSI) de la tabla.

Parameters

  • partitionKeyValue any Valor de la Clave de Partición, para la búsqueda.
  • lsiValue any Valor del LSI, para la búsqueda.
  • lsiIndexName string Nombre del índice LSI.
  • lsiAttributeName string Nombre del atributo (perteneciente al LSI) por el cual realizar la consulta.
  • operator string Operador utilizado en la consulta (=, <, >, <=, >=).

Returns Promise<Object> promise con array de elementos.

getItemsByGSI

Busca utilizando un Índice Global Secundario (GSI) simple de la tabla.

Parameters

  • gsiValue string Valor a buscar en Partition Key
  • gsiIndexName string Nombre del índice GSI.
  • gsiAttributeName string Nombre del atributo Partition Key del GSI.

Returns any promise con array de elementos.

getItemsByPartitionKeyInRange

Devuelve todos los items cuyo valor de partition key está entre los 2 valores dados. ADVERTENCIA: Se recomienda que diseñes tus tablas DynamoDB para no tener que utilizar este método, ya que éste necesita usar internamente scan(), que es más costoso que Query().

Parameters

  • partitionKeyFrom string Inicio del rango de la clave de partición.
  • partitionKeyTo string Fin del rango de la clave de partición.

Returns Promise<Object> promise con array de elementos.

addItemWithPrimarySortKey

Añade un elemento a la tabla, con una clave de partición + clave de ordenación y un conjunto de atributos.

Parameters

  • partitionKeyValue string valor de la clave de partición del elemento a insertar.
  • sortKeyValue string valor de la clave de ordenación del elemento a insertar.
  • itemAttributes Object conjunto de atributos del elemento a insertar.

Returns Promise<Object> promise de la inserción. revolve(Item) o reject(err)

addItem

Añade un elemento a la tabla, con una clave de partición y un conjunto de atributos.

Parameters

  • partitionKeyValue string valor de la clave de partición del elemento a insertar.
  • itemAttributes Object conjunto de atributos del elemento a insertar.

Returns Promise<Object> promise de la inserción.

addItemFromObject

Añade un elemento en la tabla a partir de un objeto, que debe tener al menos 1 atributo llamado como la Clave de Partición y, si hay clave de ordenación, otro atributo llamado como la clave de ordenación. Además, puede tener otros atributos que también se almacenarán en la tabla con sus nombres.

Parameters

  • item object item que se guardará en la tabla.

Returns Promise<Object> promise de la inserción.

deleteItemWithPrimarySortKey

Elimina un elemento a la tabla, con una clave de partición y clave de ordenación.

Parameters

  • partitionKeyValue string valor de la clave de partición del elemento a eliminar.
  • sortKeyValue string valor de la clave de ordenación del elemento a eliminar.

Returns Promise<Object> promise de la eliminación.

deleteItem

Elimina un elemento a la tabla, con una clave de partición.

Parameters

  • partitionKeyValue string valor de la clave de partición del elemento a eliminar.

Returns Promise<Object> promise de la eliminación.

updateItemWithPrimarySortKey

Actualiza un elemento a la tabla, con una clave de partición + clave de ordenación, y listado de atributos-valores que se actualizarán.

No funciona con espacios en los nombres de los atributos.

Parameters

  • partitionKeyValue string valor de la clave de partición del elemento a actualizar.
  • sortKeyValue string valor de la clave de ordenación del elemento a actualizar.
  • itemAttributesToChange Object listado de atributos-valores que se actualizarán.

Returns Promise<Object> promise de la actualización.

updateItem

Actualiza un elemento a la tabla, con una clave de partición, y listado de atributos-valores que se actualizarán.

Parameters

  • partitionKeyValue string valor de la clave de partición del elemento a actualizar.
  • itemAttributesToChange Object listado de atributos-valores que se actualizarán.

Returns Promise<Object> promise de la actualización.

incrementCounterWithPrimarySortKey

Incrementando de forma atómica el valor de un atributo en X cantidad.

Parameters

  • partitionKeyValue string valor de la clave de partición del elemento a actualizar.
  • sortKeyValue string valor de la clave de ordenación del elemento a actualizar.
  • attributeName string nombre del atributo a incrementar.
  • increment int cantidad en la que se incrementa el valor.

Returns Promise<Object> promise de la actualización.

incrementCounter

Incrementando de forma atómica el valor de un atributo en X unidades.

Parameters

  • partitionKeyValue string valor de la clave de partición del elemento a actualizar.
  • attributeName string nombre del atributo a incrementar.
  • increment int cantidad en la que se incrementa el valor.

Returns Promise<Object> promise de la actualización.

createTableBasic

Crea una tabla dynamodb básica, con:

  • una clave de partición con nombre "Key" y tipo string.
  • sin clave de ordenación.
  • con capacidad aprovisionada de 5 lecturas y 5 escrituras.
  • sin índices secundarios.

Parameters

  • tableName string nombre de la tabla

createTableBasicWithSortKey

Crea una tabla dynamodb básica, con:

  • una clave de partición con nombre "Key" y tipo string.
  • una clave de ordenación con nombre "SortKey" y tipo string.
  • con capacidad aprovisionada de 5 lecturas y 5 escrituras.
  • sin índices secundarios.

Parameters

  • tableName string nombre de la tabla

createTableBasicWithSortKeyAndLSI

Crea una tabla dynamodb básica, con:

  • una clave de partición con nombre "Key" y tipo string.
  • una clave de ordenación con nombre "SortKey" y tipo string.
  • un atributo con nombre "Lsi", de tipo int.
  • un LSI (Índice Local Secundario) llamado "Lsi-index", que tiene como Clave de Partición y Ordenación a "Key" y "Lsi" respectivamente.
  • con capacidad aprovisionada de 5 lecturas y 5 escrituras.

Parameters

  • tableName string nombre de la tabla

createTableBasicWithSortKeyGSI

Crea una tabla dynamodb básica, con:

  • una clave de partición con nombre "Key" y tipo string.
  • una clave de ordenación con nombre "SortKey" y tipo string.
  • un GSI (Índice Global Secundario) simple llamado "Gsi-index", que tiene como Clave de Partición a "SortKey", pero que no tiene una Clave de Ordenación.
  • con capacidad aprovisionada de 5 lecturas y 5 escrituras.

Parameters

  • tableName string nombre de la tabla