February 2022 Summaries
10 posts from PlanetScale
Filter
Month:
Year:
Post Summaries
Back to Blog
PlanetScale, a serverless database provider, has been working to improve its product and address user feedback since its inception. The company recently introduced several features, including database branching and query statistics, with more updates planned for March. To help users better understand pricing, PlanetScale is making changes to its pricing plans, which will now include more reads and be easier to predict, starting March 1st. The new pricing includes a significant increase in read limits across all plans, with the Scaler plan offering 100 billion reads included for $29/month. These updates aim to make using the database product more affordable and predictable for users.
Feb 24, 2022
171 words in the original blog post.
At PlanetScale, they've built an internal tool called Beam that serves as a central hub for company updates and announcements, replacing their previous tool Team which was used at GitHub for over a decade. Beam allows users to post updates in Markdown format with images and respond with emojis or comments, and it has proven useful in keeping the distributed team connected and informed. The tool is now being open-sourced on GitHub, allowing others to use and customize it as needed, and can be easily spun up on Vercel with authentication options for GitHub or Okta.
Feb 23, 2022
307 words in the original blog post.
Vitess 13 is now generally available, with improvements made in query serving and cluster management, including enhanced compatibility and better support for multi-column vindexes. The release also brings significant enhancements to the VTOrc component, allowing for more robust user-initiated emergency failovers and improved GTID detection. Additionally, versioned documentation is now available on the website, making it easier for users to find relevant information for their specific Vitess release.
Feb 22, 2022
257 words in the original blog post.
The author aims to dispel misconceptions about the compatibility of relational databases and the Jamstack ecosystem. The Jamstack, which emerged from the dissatisfaction with the performance challenges of MEAN stack applications, is about compiling as much as possible upfront, using static pages and assets in a CDN, and pulling in data as needed. However, this approach does not exclude the use of relational databases like MySQL or Postgres. In fact, many Jamstack applications rely on these databases for dynamic content, user-generated content, dashboards, e-commerce functionality, and SaaS applications. Despite initial misconceptions, relational databases can be used effectively in Jamstack applications, especially with connection pooling and other tools to manage connections. The author also highlights the flexibility of connecting to a database without relying solely on query APIs provided by the database provider, using clients or object-relational mapping tools instead.
Feb 22, 2022
1,475 words in the original blog post.
When building PlanetScale, the team had two hard requirements for their background job system: data loss would not impact functionality and a single failed job would be automatically re-run. To achieve this, they used Sidekiq as their background queueing system. The core design decision was to set up another job whose responsibility is to schedule the original job to run, allowing the system to self-heal if jobs are lost or fail. They stored state in the database to ensure that even if a user action fails, the job can still be re-run automatically. Additionally, they added middleware to disable scheduled jobs at any time and implemented bulk scheduling of jobs to improve performance when dealing with large numbers of jobs. The team also handled uniqueness by storing state in the database, using database locks, and utilizing Sidekiq's unique job feature.
Feb 17, 2022
856 words in the original blog post.
This summary provides an overview of the tutorial, covering key points such as creating a mood tracker application with Laravel 9 and connecting it to a PlanetScale MySQL database. The tutorial covers topics including CRUD functionality, form validation, Eloquent ORM, and deploying changes to production using PlanetScale's branching feature. It also discusses the importance of caching and performance optimization in Laravel applications.
Feb 15, 2022
6,337 words in the original blog post.
This summary provides an overview of the process of seeding a PlanetScale database using Prisma in a Next.js project. The tutorial explains the importance of database seeding and how it can be used for initial project setup and automated testing. It then guides the reader through setting up the project, creating the seed script, and configuring the seed command. The summary highlights the key steps involved in creating the seed script, including importing PrismaClient, generating a new client, defining the load function, and handling errors. It also mentions that the seed script can be configured to run automatically using the `prisma.seed` property in the package.json file or by adding a custom script in the scripts section of the package.json file.
Feb 11, 2022
1,371 words in the original blog post.
Database maturity model is a framework that outlines the stages of database growth that companies like GitHub, DigitalOcean, and Etsy have experienced. This model helps businesses understand the key issues they may face at each stage of their development and provides guidance on how to address them effectively.
Feb 10, 2022
67 words in the original blog post.
This application uses caching to optimize performance by storing frequently accessed data in memory instead of retrieving it from the database on each request, reducing the time it takes to display data on an e-commerce admin dashboard. Laravel's built-in caching functionality makes it easy to implement caching in the application. The application initially retrieves all data from the database and caches it for a specified time period, but this approach has limitations as it does not account for changes made to the data after it is cached. To address this issue, the application uses the `booted` method on the Quote model to clear the cache when new or updated data is saved, ensuring that the displayed data is always up-to-date. The application also discusses other caching strategies, including write caching and the importance of considering factors such as data consistency and update frequency when implementing caching in an application.
Feb 09, 2022
2,422 words in the original blog post.
Placing a database schema in an isolated environment separate from production can aid development and testing processes by allowing for changes to be made and tested without affecting the live application. To accomplish this, GitHub Actions can be used in conjunction with PlanetScale's CLI to automate the process of creating a new branch in PlanetScale whenever a branch is created or pushed to a specific repository in GitHub. The process involves setting up a workflow file that triggers when a branch starts with `db/` and creates a new database branch using the `pscale` command-line interface, as well as authenticating with PlanetScale using a service token stored in GitHub Secrets. Once the database is created, a deploy request can be opened to propose schema changes, allowing for feedback from the team before merging the change into the main branch. The process also includes creating shell scripts that handle logic and error handling for the workflow, such as authenticating with PlanetScale and extracting parameters from the GitHub event inputs. By automating this process, developers can increase productivity and reduce manual effort when working with databases in their development and testing workflows.
Feb 03, 2022
2,221 words in the original blog post.