Amazon Elasticache Deep Dive Powering Modern Applications with Low Latency and High Throughput

Total Page:16

File Type:pdf, Size:1020Kb

Amazon Elasticache Deep Dive Powering Modern Applications with Low Latency and High Throughput Amazon ElastiCache Deep Dive Powering modern applications with low latency and high throughput Michael Labib Sr. Manager, Non-Relational Databases © 2020, Amazon Web Services, Inc. or its Affiliates. Agenda • Introduction to Amazon ElastiCache • Redis Topologies & Features • ElastiCache Use Cases • Monitoring, Sizing & Best Practices © 2020, Amazon Web Services, Inc. or its Affiliates. Introduction to Amazon ElastiCache © 2020, Amazon Web Services, Inc. or its Affiliates. Purpose-built databases © 2020, Amazon Web Services, Inc. or its Affiliates. Purpose-built databases © 2020, Amazon Web Services, Inc. or its Affiliates. Modern real-time applications require Performance, Scale & Availability Users 1M+ Data volume Terabytes—petabytes Locality Global Performance Microsecond latency Request rate Millions per second Access Mobile, IoT, devices Scale Up-out-in E-Commerce Media Social Online Shared economy Economics Pay-as-you-go streaming media gaming Developer access Open API © 2020, Amazon Web Services, Inc. or its Affiliates. Amazon ElastiCache – Fully Managed Service Redis & Extreme Secure Easily scales to Memcached compatible performance and reliable massive workloads Fully compatible with In-memory data store Network isolation, encryption Scale writes and open source Redis and cache for microsecond at rest/transit, HIPAA, PCI, reads with sharding and Memcached response times FedRAMP, multi AZ, and and replicas automatic failover © 2020, Amazon Web Services, Inc. or its Affiliates. What is Redis? Initially released in 2009, Redis provides: • Complex data structures: Strings, Lists, Sets, Sorted Sets, Hash Maps, HyperLogLog, Geospatial, and Streams • High-availability through replication • Scalability through online sharding • Persistence via snapshot / restore • Multi-key atomic operations A high-speed, in-memory, non-Relational data store. • LUA scripting Customers love that Redis is easy to use. • Open Source © 2020, Amazon Web Services, Inc. or its Affiliates. What is Memcached? Initially released in 2003, Memcached provides: • Simple, in-memory, LRU cache • Simple key-value (string-string) store • Supports strings, objects • Multi-threaded Single-Node Instance • Sharding via client-side library Sharded Instance • Easy to Scale • No persistence • Open source Clients ClientsClients ClientsClients ClientsClients Clients © 2020, Amazon Web Services, Inc. or its Affiliates. The need for speed… ElastiCache + RDS ElastiCache + Aurora ElastiCache + Redshift ElastiCache + DynamoDB ElastiCache + DocumentDB ElastiCache + …. © 2020, Amazon Web Services, Inc. or its Affiliates. Redis Topologies & Features © 2020, Amazon Web Services, Inc. or its Affiliates. ElastiCache Redis: Distributed In-Memory Data Store Redis Node Client Client List String Client Hash Bitmap Set Client Stream Geospatial Sorted Set Client HyperLogLog Client Client Client © 2020, Amazon Web Services, Inc. or its Affiliates. ElastiCache Redis: Distributed In-Memory Data Store A=1 A=1 Redis Node WriteClient Client Read Client A:1 A=1 List String A=1 <1ms Read Client Hash Bitmap Set Read Client A=1 Stream Geospatial Sorted Set A=1 Read Client HyperLogLog Read Client A=1 A=1 Read Client Read Client © 2020, Amazon Web Services, Inc. or its Affiliates. Redis Cluster Mode – Enabled vs. Disabled Feature Redis Cluster (enabled) Redis Cluster (disabled) Recovery Time 10-20 sec (non-DNS) ~30+ sec (DNS) Writes affected on failed shard. Writes affected on entire data set. Failover Impact Reads available Reads available Up to 250* nodes (90 = 15 shards + 5 1 primary Node Scale replicas soft limit) 0-5 replicas (max. 6 nodes) 0–5 replicas per shard Primary Endpoint Storage 170 TB (635 GB x 250) 635 GB Slot 0 Max Connections 16.25 million (65,000 x 250) 390,000 (65,000 x 6) P Slot 1 … R Online Scaling Shards and read replicas Read replicas only Slot 16383 Migration Path Backup/Restore Snapshot Online Migration Tool • Throughput limited by 1 primary, 5 Configuration • Achieve greater throughput through replicas Endpoint Scalability and horizontal scaling • Horizontal Scale for Reads (Replicas) P Slot 0–5461 R Performance • Horizontal/Vertical scaling supported P Slot 5462–10922 R Supported • Vertical scaling for Replicas/Primary Slot 10923– also supported P R 16383 Cluster Resizing (zero-downtime) • Horizontal Scaling to add/remove Vertical Scaling Scaling Operation shards • Writes/Reads continue during scale up • Read Scalability to add/remove operation replicas © 2020, Amazon Web Services, Inc. or its Affiliates. Redis Cluster-mode disabled (Scaled Vertically) VPC Availability zone 1 Availability zone 2 Elastic Load Balancing Public subnet Public subnet Connect to Primary for Read/Writes and Replica’s for Reads Auto Scaling group Amazon EC2 Amazon EC2 Private subnet Private subnet Keyspace All keys remain on same single node Redis node Redis node Primary Endpoint Replica Endpoints © 2020, Amazon Web Services, Inc. or its Affiliates. ElastiCache for Redis Multi-AZ Auto-Failover § Chooses replica with lowest replication lag Automatic Failover to a read replica in case of § DNS endpoint is same primary node failure Multi-AZ ElastiCache Automates writes snapshots for persistence Use Primary Endpoint Primary ElastiCache for Redis reads Replica Replica Use Read Replicas ElastiCache ElastiCache or Reader Endpoint for Redis for Redis Availability Zone A Availability Zone B © 2020, Amazon Web Services, Inc. or its Affiliates. ElastiCache with Redis Multi-AZ Region Auto Scaling ElastiCache Cluster Read Replica Primary Availability Zone A Availability Zone B © 2020, Amazon Web Services, Inc. or its Affiliates. ElastiCache with Redis Multi-AZ Region Auto Scaling ElastiCache Cluster Read Replica Primary Availability Zone A Availability Zone B © 2020, Amazon Web Services, Inc. or its Affiliates. ElastiCache with Redis Multi-AZ Region Auto Scaling ElastiCache Cluster Read Replica Primary Availability Zone A Availability Zone B © 2020, Amazon Web Services, Inc. or its Affiliates. Redis Cluster-mode enabled (Scaled Horizontally) VPC Availability zone 1 Availability zone 2 Elastic Load Balancing Public subnet Public subnet Clients use hash value for ( CW Metric: CurrItems ) a key CRC16(key) mod 16384 Auto Scaling group Distribution Equal | Custom Amazon EC2 Amazon EC2 Cluster Map Private subnet Partitioned by Shard Private subnet Shard 1 Slot 0 - … Keyspace Configuration Shard 2 Slot … to … Endpoint Shard 3 Slot … to … Zero Downtime Scaling Redis node Redis node Redis node Redis node Shard 4 Slot … to 16383 © 2020, Amazon Web Services, Inc. or its Affiliates. To p o l o g y - Redis Cluster Mode Enabled Example: S S S 3 shards 2 replicas per shard Multi-AZ Shards, primaries, and read replicas • Add shards to scale reads/writes, increase in-memory capacity Redis Cluster • Add replicas to scale reads, increase availability • Able to specify availability zones. Multi-AZ default P R R P R R • Able to customize slot distributions, equal distribution Slots 0–5454 Slots 5455–10909 Slots 0–5454 Slots 5455–10909 Slots 0–5454 Slots 5455–10909 default R R P Slots10910–16363 Slots10910–16363 Slots10910–16363 Availability Zone A Availability Zone B Availability Zone C © 2020, Amazon Web Services, Inc. or its Affiliates. Cluster mode-enabled Failover CW Metric: ReplicationLag x15 Shard x5 async replication Cache node Cache node ElastiCache for Redis Primary Replica © 2020, Amazon Web Services, Inc. or its Affiliates. Cluster mode-enabled Failover Failover Detection Shard async replication Cache node Cache node ElastiCache for Redis Primary Replica © 2020, Amazon Web Services, Inc. or its Affiliates. Cluster mode-enabled Failover SNS Event: ElastiCache:CacheNodeReplaceComplete SNS Event: ElastiCache:FailoverComplete Shard Test with Failover API async replication Cache node Cache node ElastiCache for Redis Primary Replica Automatic Failover (with no DNS propagation) © 2020, Amazon Web Services, Inc. or its Affiliates. Online Re-Sharding – Zero Downtime Shard 1 Shard 2 Shard 3 0-5461 5462--10922 10923-16383 Simple API aws elasticache modify-replication-group-shard-configuration --replication-group-id rep-group-id --apply-immediately --node-group-count 5 Scale In || Out © 2020, Amazon Web Services, Inc. or its Affiliates. Zero downtime - Online re-sharding - scale out Shard 1 Shard 2 Shard 3 0-2909, 5462-5783, 0-5461 5462--10922 10923-1638314199 5095-5461 6876-9830 Uniform slot distribution across shards reads/ writes Amazon EC2 Shard 4 No Application Interruption Shard 5 2910-5094, 5784-6875, 9831--10922 14200-16383 © 2020, Amazon Web Services, Inc. or its Affiliates. Zero downtime - Online re-sharding - scale in Shard 1 Shard 2 Shard 3 0-5461 5462--10922 10923-16383 Uniform slot distribution across shards reads/ writes Amazon EC2 Shard 4 No Application Interruption Shard 5 © 2020, Amazon Web Services, Inc. or its Affiliates. Global Datastore (Cross Region Replication) Example for a worldwide application • One-click setup for existing clusters • Write locally, read globally • Enable cross-region disaster Secondary recovery (Passive) Region Read Primary • Leverage extreme performance with (active) region Read/Write Redis’ sub-millisecond latency Secondary (Passive) Region • Secure encryption in transit for Read cross-region traffic • Use with AWS Management Console, or latest AWS SDK or CLI © 2020, Amazon Web Services, Inc. or its Affiliates. Optimized M5 and R5 instances & Enhanced I/O • Scale up to of • Dynamic network processing to enhance © 2020, Amazon Web Services, Inc. or its Affiliates. Self-managing
Recommended publications
  • Redis and Memcached
    Redis and Memcached Speaker: Vladimir Zivkovic, Manager, IT June, 2019 Problem Scenario • Web Site users wanting to access data extremely quickly (< 200ms) • Data being shared between different layers of the stack • Cache a web page sessions • Research and test feasibility of using Redis as a solution for storing and retrieving data quickly • Load data into Redis to test ETL feasibility and Performance • Goal - get sub-second response for API calls for retrieving data !2 Why Redis • In-memory key-value store, with persistence • Open source • Written in C • It can handle up to 2^32 keys, and was tested in practice to handle at least 250 million of keys per instance.” - http://redis.io/topics/faq • Most popular key-value store - http://db-engines.com/en/ranking !3 History • REmote DIctionary Server • Released in 2009 • Built in order to scale a website: http://lloogg.com/ • The web application of lloogg was an ajax app to show the site traffic in real time. Needed a DB handling fast writes, and fast ”get latest N items” operation. !4 Redis Data types • Strings • Bitmaps • Lists • Hyperlogs • Sets • Geospatial Indexes • Sorted Sets • Hashes !5 Redis protocol • redis[“key”] = “value” • Values can be strings, lists or sets • Push and pop elements (atomic) • Fetch arbitrary set and array elements • Sorting • Data is written to disk asynchronously !6 Memory Footprint • An empty instance uses ~ 3MB of memory. • For 1 Million small Keys => String Value pairs use ~ 85MB of memory. • 1 Million Keys => Hash value, representing an object with 5 fields,
    [Show full text]
  • Modeling and Analyzing Latency in the Memcached System
    Modeling and Analyzing Latency in the Memcached system Wenxue Cheng1, Fengyuan Ren1, Wanchun Jiang2, Tong Zhang1 1Tsinghua National Laboratory for Information Science and Technology, Beijing, China 1Department of Computer Science and Technology, Tsinghua University, Beijing, China 2School of Information Science and Engineering, Central South University, Changsha, China March 27, 2017 abstract Memcached is a widely used in-memory caching solution in large-scale searching scenarios. The most pivotal performance metric in Memcached is latency, which is affected by various factors including the workload pattern, the service rate, the unbalanced load distribution and the cache miss ratio. To quantitate the impact of each factor on latency, we establish a theoretical model for the Memcached system. Specially, we formulate the unbalanced load distribution among Memcached servers by a set of probabilities, capture the burst and concurrent key arrivals at Memcached servers in form of batching blocks, and add a cache miss processing stage. Based on this model, algebraic derivations are conducted to estimate latency in Memcached. The latency estimation is validated by intensive experiments. Moreover, we obtain a quantitative understanding of how much improvement of latency performance can be achieved by optimizing each factor and provide several useful recommendations to optimal latency in Memcached. Keywords Memcached, Latency, Modeling, Quantitative Analysis 1 Introduction Memcached [1] has been adopted in many large-scale websites, including Facebook, LiveJournal, Wikipedia, Flickr, Twitter and Youtube. In Memcached, a web request will generate hundreds of Memcached keys that will be further processed in the memory of parallel Memcached servers. With this parallel in-memory processing method, Memcached can extensively speed up and scale up searching applications [2].
    [Show full text]
  • Timeline 1994 July Company Incorporated 1995 July Amazon
    Timeline 1994 July Company Incorporated 1995 July Amazon.com Sells First Book, “Fluid Concepts & Creative Analogies: Computer Models of the Fundamental Mechanisms of Thought” 1996 July Launches Amazon.com Associates Program 1997 May Announces IPO, Begins Trading on NASDAQ Under “AMZN” September Introduces 1-ClickTM Shopping November Opens Fulfillment Center in New Castle, Delaware 1998 February Launches Amazon.com Advantage Program April Acquires Internet Movie Database June Opens Music Store October Launches First International Sites, Amazon.co.uk (UK) and Amazon.de (Germany) November Opens DVD/Video Store 1999 January Opens Fulfillment Center in Fernley, Nevada March Launches Amazon.com Auctions April Opens Fulfillment Center in Coffeyville, Kansas May Opens Fulfillment Centers in Campbellsville and Lexington, Kentucky June Acquires Alexa Internet July Opens Consumer Electronics, and Toys & Games Stores September Launches zShops October Opens Customer Service Center in Tacoma, Washington Acquires Tool Crib of the North’s Online and Catalog Sales Division November Opens Home Improvement, Software, Video Games and Gift Ideas Stores December Jeff Bezos Named TIME Magazine “Person Of The Year” 2000 January Opens Customer Service Center in Huntington, West Virginia May Opens Kitchen Store August Announces Toys “R” Us Alliance Launches Amazon.fr (France) October Opens Camera & Photo Store November Launches Amazon.co.jp (Japan) Launches Marketplace Introduces First Free Super Saver Shipping Offer (Orders Over $100) 2001 April Announces Borders Group Alliance August Introduces In-Store Pick Up September Announces Target Stores Alliance October Introduces Look Inside The BookTM 2002 June Launches Amazon.ca (Canada) July Launches Amazon Web Services August Lowers Free Super Saver Shipping Threshold to $25 September Opens Office Products Store November Opens Apparel & Accessories Store 2003 April Announces National Basketball Association Alliance June Launches Amazon Services, Inc.
    [Show full text]
  • Amazon Dynamodb
    Dynamo Amazon DynamoDB Nicolas Travers Inspiré de Advait Deo Vertigo N. Travers ESILV : Dynamo Amazon DynamoDB – What is it ? • Fully managed nosql database service on AWS • Data model in the form of tables • Data stored in the form of items (name – value attributes) • Automatic scaling ▫ Provisioned throughput ▫ Storage scaling ▫ Distributed architecture • Easy Administration • Monitoring of tables using CloudWatch • Integration with EMR (Elastic MapReduce) ▫ Analyze data and store in S3 Vertigo N. Travers ESILV : Dynamo Amazon DynamoDB – What is it ? key=value key=value key=value key=value Table Item (64KB max) Attributes • Primary key (mandatory for every table) ▫ Hash or Hash + Range • Data model in the form of tables • Data stored in the form of items (name – value attributes) • Secondary Indexes for improved performance ▫ Local secondary index ▫ Global secondary index • Scalar data type (number, string etc) or multi-valued data type (sets) Vertigo N. Travers ESILV : Dynamo DynamoDB Architecture • True distributed architecture • Data is spread across hundreds of servers called storage nodes • Hundreds of servers form a cluster in the form of a “ring” • Client application can connect using one of the two approaches ▫ Routing using a load balancer ▫ Client-library that reflects Dynamo’s partitioning scheme and can determine the storage host to connect • Advantage of load balancer – no need for dynamo specific code in client application • Advantage of client-library – saves 1 network hop to load balancer • Synchronous replication is not achievable for high availability and scalability requirement at amazon • DynamoDB is designed to be “always writable” storage solution • Allows multiple versions of data on multiple storage nodes • Conflict resolution happens while reads and NOT during writes ▫ Syntactic conflict resolution ▫ Symantec conflict resolution Vertigo N.
    [Show full text]
  • Release 2.5.5 Ask Solem Contributors
    Celery Documentation Release 2.5.5 Ask Solem Contributors February 04, 2014 Contents i ii Celery Documentation, Release 2.5.5 Contents: Contents 1 Celery Documentation, Release 2.5.5 2 Contents CHAPTER 1 Getting Started Release 2.5 Date February 04, 2014 1.1 Introduction Version 2.5.5 Web http://celeryproject.org/ Download http://pypi.python.org/pypi/celery/ Source http://github.com/celery/celery/ Keywords task queue, job queue, asynchronous, rabbitmq, amqp, redis, python, webhooks, queue, dis- tributed – • Synopsis • Overview • Example • Features • Documentation • Installation – Bundles – Downloading and installing from source – Using the development version 1.1.1 Synopsis Celery is an open source asynchronous task queue/job queue based on distributed message passing. Focused on real- time operation, but supports scheduling as well. The execution units, called tasks, are executed concurrently on one or more worker nodes using multiprocessing, Eventlet or gevent. Tasks can execute asynchronously (in the background) or synchronously (wait until ready). Celery is used in production systems to process millions of tasks every hour. 3 Celery Documentation, Release 2.5.5 Celery is written in Python, but the protocol can be implemented in any language. It can also operate with other languages using webhooks. There’s also RCelery for the Ruby programming language, and a PHP client. The recommended message broker is RabbitMQ, but support for Redis, MongoDB, Beanstalk, Amazon SQS, CouchDB and databases (using SQLAlchemy or the Django ORM) is also available. Celery is easy to integrate with web frameworks, some of which even have integration packages: Django django-celery Pyramid pyramid_celery Pylons celery-pylons Flask flask-celery web2py web2py-celery 1.1.2 Overview This is a high level overview of the architecture.
    [Show full text]
  • An End-To-End Application Performance Monitoring Tool
    Applications Manager - an end-to-end application performance monitoring tool For enterprises to stay ahead of the technology curve in today's competitive IT environment, it is important for their business critical applications to perform smoothly. Applications Manager - ManageEngine's on-premise application performance monitoring solution offers real-time application monitoring capabilities that offer deep visibility into not only the performance of various server and infrastructure components but also other technologies used in the IT ecosystem such as databases, cloud services, virtual systems, application servers, web server/services, ERP systems, big data, middleware and messaging components, etc. Highlights of Applications Manager Wide range of supported apps Monitor 150+ application types and get deep visibility into all the components of your application environment. Ensure optimal performance of all your applications by visualizing real-time data via comprehensive dashboards and reports. Easy installation and setup Get Applications Manager running in under two minutes. Applications Manager is an agentless monitoring tool and it requires no complex installation procedures. Automatic discovery and dependency mapping Automatically discover all applications and servers in your network and easily categorize them based on their type (apps, servers, databases, VMs, etc.). Get comprehensive insight into your business infrastructure, drill down to IT application relationships, map them effortlessly and understand how applications interact with each other with the help of these dependency maps. Deep dive performance metrics Track key performance metrics of your applications like response times, requests per minute, lock details, session details, CPU and disk utilization, error states, etc. Measure the efficiency of your applications by visualizing the data at regular periodic intervals.
    [Show full text]
  • WEB2PY Enterprise Web Framework (2Nd Edition)
    WEB2PY Enterprise Web Framework / 2nd Ed. Massimo Di Pierro Copyright ©2009 by Massimo Di Pierro. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning, or otherwise, except as permitted under Section 107 or 108 of the 1976 United States Copyright Act, without either the prior written permission of the Publisher, or authorization through payment of the appropriate per-copy fee to the Copyright Clearance Center, Inc., 222 Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fax (978) 646-8600, or on the web at www.copyright.com. Requests to the Copyright owner for permission should be addressed to: Massimo Di Pierro School of Computing DePaul University 243 S Wabash Ave Chicago, IL 60604 (USA) Email: [email protected] Limit of Liability/Disclaimer of Warranty: While the publisher and author have used their best efforts in preparing this book, they make no representations or warranties with respect to the accuracy or completeness of the contents of this book and specifically disclaim any implied warranties of merchantability or fitness for a particular purpose. No warranty may be created ore extended by sales representatives or written sales materials. The advice and strategies contained herein may not be suitable for your situation. You should consult with a professional where appropriate. Neither the publisher nor author shall be liable for any loss of profit or any other commercial damages, including but not limited to special, incidental, consequential, or other damages. Library of Congress Cataloging-in-Publication Data: WEB2PY: Enterprise Web Framework Printed in the United States of America.
    [Show full text]
  • Performance at Scale with Amazon Elasticache
    Performance at Scale with Amazon ElastiCache July 2019 Notices Customers are responsible for making their own independent assessment of the information in this document. This document: (a) is for informational purposes only, (b) represents current AWS product offerings and practices, which are subject to change without notice, and (c) does not create any commitments or assurances from AWS and its affiliates, suppliers or licensors. AWS products or services are provided “as is” without warranties, representations, or conditions of any kind, whether express or implied. The responsibilities and liabilities of AWS to its customers are controlled by AWS agreements, and this document is not part of, nor does it modify, any agreement between AWS and its customers. © 2019 Amazon Web Services, Inc. or its affiliates. All rights reserved. Contents Introduction .......................................................................................................................... 1 ElastiCache Overview ......................................................................................................... 2 Alternatives to ElastiCache ................................................................................................. 2 Memcached vs. Redis ......................................................................................................... 3 ElastiCache for Memcached ............................................................................................... 5 Architecture with ElastiCache for Memcached ...............................................................
    [Show full text]
  • Amazon Documentdb Deep Dive
    DAT326 Amazon DocumentDB deep dive Joseph Idziorek Antra Grover Principal Product Manager Software Development Engineer Amazon Web Services Fulfillment By Amazon © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Agenda What is the purpose of a document database? What customer problems does Amazon DocumentDB (with MongoDB compatibility) solve and how? Customer use case and learnings: Fulfillment by Amazon What did we deliver for customers this year? What’s next? © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Purpose-built databases Relational Key value Document In-memory Graph Search Time series Ledger Why document databases? Denormalized data Normalized data model model { 'name': 'Bat City Gelato', 'price': '$', 'rating': 5.0, 'review_count': 46, 'categories': ['gelato', 'ice cream'], 'location': { 'address': '6301 W Parmer Ln', 'city': 'Austin', 'country': 'US', 'state': 'TX', 'zip_code': '78729'} } Why document databases? GET https://api.yelp.com/v3/businesses/{id} { 'name': 'Bat City Gelato', 'price': '$', 'rating': 5.0, 'review_count': 46, 'categories': ['gelato', 'ice cream'], 'location': { 'address': '6301 W Parmer Ln', 'city': 'Austin', 'country': 'US', 'state': 'TX', 'zip_code': '78729'} } Why document databases? response = yelp_api.search_query(term='ice cream', location='austin, tx', sort_by='rating', limit=5) Why document databases? for i in response['businesses']: col.insert_one(i) db.businesses.aggregate([ { $group: { _id: "$price", ratingAvg: { $avg: "$rating"}} } ]) db.businesses.find({
    [Show full text]
  • A Motion Is Requested to Authorize the Execution of a Contract for Amazon Business Procurement Services Through the U.S. Communities Government Purchasing Alliance
    MOT 2019-8118 Page 1 of 98 VILLAGE OF DOWNERS GROVE Report for the Village Council Meeting 3/19/2019 SUBJECT: SUBMITTED BY: Authorization of a contract for Amazon Business procurement Judy Buttny services Finance Director SYNOPSIS A motion is requested to authorize the execution of a contract for Amazon Business procurement services through the U.S. Communities Government Purchasing Alliance. STRATEGIC PLAN ALIGNMENT The goals for 2017-2019 includes Steward of Financial Sustainability, and Exceptional, Continual Innovation. FISCAL IMPACT There is no cost to utilize Amazon Business procurement services through the U.S. Communities Government Purchasing Alliance. RECOMMENDATION Approval on the March 19, 2019 Consent Agenda. BACKGROUND U.S. Communities Government Purchasing Alliance is the largest public sector cooperative purchasing organization in the nation. All contracts are awarded by a governmental entity utilizing industry best practices, processes and procedures. The Village of Downers Grove has been a member of the U.S. Communities Government Purchasing Alliance since 2008. Through cooperative purchasing, the Village is able to take advantage of economy of scale and reduce the cost of goods and services. U.S. Communities has partnered with Amazon Services to offer local government agencies the ability to utilize Amazon Business for procurement services at no cost to U.S. Communities members. Amazon Business offers business-only prices on millions of products in a competitive digital market place and a multi-level approval workflow. Staff can efficiently find quotes and purchase products for the best possible price, and the multi-level approval workflow ensures this service is compliant with the Village’s competitive process for purchases under $7,000.
    [Show full text]
  • Database Software Market: Billy Fitzsimmons +1 312 364 5112
    Equity Research Technology, Media, & Communications | Enterprise and Cloud Infrastructure March 22, 2019 Industry Report Jason Ader +1 617 235 7519 [email protected] Database Software Market: Billy Fitzsimmons +1 312 364 5112 The Long-Awaited Shake-up [email protected] Naji +1 212 245 6508 [email protected] Please refer to important disclosures on pages 70 and 71. Analyst certification is on page 70. William Blair or an affiliate does and seeks to do business with companies covered in its research reports. As a result, investors should be aware that the firm may have a conflict of interest that could affect the objectivity of this report. This report is not intended to provide personal investment advice. The opinions and recommendations here- in do not take into account individual client circumstances, objectives, or needs and are not intended as recommen- dations of particular securities, financial instruments, or strategies to particular clients. The recipient of this report must make its own independent decisions regarding any securities or financial instruments mentioned herein. William Blair Contents Key Findings ......................................................................................................................3 Introduction .......................................................................................................................5 Database Market History ...................................................................................................7 Market Definitions
    [Show full text]
  • Amazon Mechanical Turk Developer Guide API Version 2017-01-17 Amazon Mechanical Turk Developer Guide
    Amazon Mechanical Turk Developer Guide API Version 2017-01-17 Amazon Mechanical Turk Developer Guide Amazon Mechanical Turk: Developer Guide Copyright © Amazon Web Services, Inc. and/or its affiliates. All rights reserved. Amazon's trademarks and trade dress may not be used in connection with any product or service that is not Amazon's, in any manner that is likely to cause confusion among customers, or in any manner that disparages or discredits Amazon. All other trademarks not owned by Amazon are the property of their respective owners, who may or may not be affiliated with, connected to, or sponsored by Amazon. Amazon Mechanical Turk Developer Guide Table of Contents What is Amazon Mechanical Turk? ........................................................................................................ 1 Mechanical Turk marketplace ....................................................................................................... 1 Marketplace rules ............................................................................................................... 2 The sandbox marketplace .................................................................................................... 2 Tasks that work well on Mechanical Turk ...................................................................................... 3 Tasks can be completed within a web browser ....................................................................... 3 Work can be broken into distinct, bite-sized tasks .................................................................
    [Show full text]