npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

sails-aws-redshift

v1.2.0

Published

An Amazon Redshift adapter for Waterline and Sails.js based on sails-postgresql

Downloads

17

Readme

image_squidhome@2x.png

Amazon (AWS) Redshift Sails/Waterline Adapter

NPM version Dependency Status MIT License

A Waterline adapter for Amazon Redshift. May be used in a Sails app or anything using Waterline for the ORM.

Motivation

In general, you do not want to use Redshift as your database for typical API or website usage. Redshift is build for speed on bulk operations, and individual operations on Redshift are relatively slow. However, if you need a small, internal tool to communicate with Redshift, like an API-based task manager to run large tasks against Redshift, or a small web console to view or work with Redshift data, this will do you just fine.

Install

Install is through NPM.

$ npm install sails-aws-redshift

Configuration

The following config options are available, with example entries:

config: {  
  database: 'databaseName',  
  host: 'some.cluster.name.us-east-1.redshift.amazonaws.com',  
  user: 'userName',  
  password: 'userPassword',  
  port: 5439,  
  pool: false,  
  ssl: false  
};

Redshift Restrictions

Redshift originally branched from PostgreSQL, but differs quite a bit now. This adapter version has the following restrictions:
1. Redshift is not case-sensitive, so any case sensitivity available with PostreSQL has been removed.
2. Redshift does not provide returning statements, so aspects of waterline-sequel which expect this are not available or have been overridden.
3. Much syntax in SQL is not supported in Redshift, for example, selecting from table names using "AS " in the situation where the real table name is not being used as the identifier.
4. Auto-increment is different and currently results in even-numbered primary keys when using this feature.
5. Redshift does not support specifying the primary key/id upon creation, so it is good practice to include a separate identifier like a UUID for all models.
6. Since returning from a query is not avaialable, the create and update adapter methods run a subsequent adapter.find to get the new/updated object. The create requires that the query appends createdAt and updatedAt values.

About Waterline

Waterline is a new kind of storage and retrieval engine. It provides a uniform API for accessing stuff from different kinds of databases, protocols, and 3rd party APIs. That means you write the same code to get users, whether they live in mySQL, LDAP, MongoDB, or Facebook.

To learn more visit the project on GitHub at Waterline.