- Newest
- Most votes
- Most comments
Based on your requirements and the options you're considering, here's a recommendation for your AWS database solution:
Amazon DynamoDB would likely be the best fit for your use case. It's a NoSQL database that excels at handling simple data structures and provides fast, consistent performance at any scale. For your project with 60K rows of text-based data across 4-6 columns, DynamoDB would be more than capable and cost-effective.
Key advantages of DynamoDB for your project:
-
Scalability: DynamoDB can easily handle your current data volume and scale as needed without performance degradation.
-
Performance: It offers single-digit millisecond latency, which is crucial for your duplicate checking operations from Google Sheets.
-
Simplicity: As a fully managed service, you don't need to worry about database administration tasks.
-
Cost-effectiveness: You only pay for the resources you use, making it potentially more economical than running a relational database for your relatively simple data structure.
-
Flexible querying: While not as flexible as SQL databases, DynamoDB supports both key-value and document data models, which should be sufficient for your duplicate checking needs.
Regarding your other options:
Amazon RDS (MySQL) or Aurora would be overkill for your current requirements. These relational databases are more suitable for complex data structures and relationships, which your project doesn't seem to need. They also come with higher operational complexity and potentially higher costs.
For the free tier usage, DynamoDB offers a generous free tier that includes 25 GB of storage and enough read and write capacity for most small-scale applications. This should be sufficient for your initial setup and testing. You can indeed use a shared account for a developer to set it up, but ensure you follow AWS best practices for account security and access management.
To integrate DynamoDB with Google Sheets via Google Scripts, you'll need to use AWS SDK for JavaScript. While this might require a bit more setup compared to querying another Google Sheet, it will significantly improve performance and reliability.
For further guidance and support, AWS provides extensive documentation for DynamoDB. You can also leverage AWS re:Post (formerly AWS Forums) for community support. Amazon IQ is a good option if you need personalized expert help for implementation.
Remember to design your DynamoDB table structure carefully to optimize for your most frequent query patterns, particularly for duplicate checking. This might involve creating composite keys or using secondary indexes to enable efficient querying on multiple attributes.
Sources
Database - AWS Well-Architected Framework (2022-03-31)
Database - AWS Well-Architected Framework (2023-04-10)
Choosing an AWS database service - Choosing an AWS database service
Database configuration, backup, and failover - Web Application Hosting in the AWS Cloud
Hi. Based on your requirements I agree with the previous response, I would also suggest to use DynamoDB. However, you need to be aware of a few things:
- Indexes. If you want to query data in DynamoDB on multiple fields, you will need to create an index for each field. This usually leads to a higher price of DynamoDB
- Data synchronization. As I understood, your team inserts data into sheets while you want to check duplicates in the Database connected to the sheet. This might lead to data loss due to multiple sources of truth. You need to have one source of truth, either a Google Sheet or a database.
- In general, there is no direct integration of Google Sheets with DynamoDB. You would have to have some middleware custom application in between.
- As an alternative you might want to look at other databases with more native integration with Google Sheets. Google Big
Using SQL (relational) database might also be an option, in case you will want to use this data in other applications and in case your data schema grows in a way, that relational models will be more efficient.
Relevant content
- AWS OFFICIALUpdated 2 years ago
- AWS OFFICIALUpdated 2 years ago
- AWS OFFICIALUpdated 2 months ago
Thanks for this - would be looking for someone to validate this and let us know which may be best! Super grateful for any and all help - thanks in advance!!