title | metaTitle | metaDescription | hidePage | toc |
---|---|---|---|---|
Prisma's Data Guide - Articles to make databases more approachable |
Intro, Data Modeling, Databases | Prisma's Data Guide |
Learn how databases work, how to choose the right one, and how to use databases with your applications to their full potential. |
false |
true |
Learn the basics of what databases are, why they are so important for most software, and which types of databases are best for different use cases. Start from the fundamentals to give yourself a solid foundation.
<DocLink icon="file" text="What are databases?" href={'/intro/what-are-databases'} /> <DocLink icon="file" text="Comparing database types: how database types evolved to meet different needs" href={'/intro/comparing-database-types'} /> <DocLink icon="file" text="Introduction to database schemas" href={'/intro/intro-to-schemas'} /> <DocLink icon="file" text="Glossary of common database terminology" href={'/intro/database-glossary'} />
A crash course in (relational, although not ignoring others) designing data models. Concentrating first on situating databases and data modeling problems in an organization and systems design context before moving on to some of the less-prominent areas of database functionality. Published in partnership with Dian Fay.
<DocLink icon="file" text="Intro (don't panic)" href={'/datamodeling/intro-dont-panic'} /> <DocLink icon="file" text="Know your problem space" href={'/datamodeling/know-your-problem-space'} /> <DocLink icon="file" text="Tables, tuples, types" href={'/datamodeling/tables-tuples-types'} /> <DocLink icon="file" text="Correctness and constraints" href={'/datamodeling/correctness-constraints'} /> <DocLink icon="file" text="Making connections" href={'/datamodeling/making-connections'} /> <DocLink icon="file" text="Functional units" href={'/datamodeling/functional-units'} /> <DocLink icon="file" text="In vivo: information ecosystems" href={'/datamodeling/in-vivo'} />
Each style of database has its own strengths and weaknesses. Learn more about common database types to help choose which one is best for you.
<DocLink icon="file" text="Comparing relational and document databases" href={'/types/relational-vs-document-databases'} />
Relational databases are great at handling highly structured data and making it accessible through flexible querying. Discover why the relational paradigm has stood the test of time.
<DocLink icon="file" text="What is an ORM?" href={'/types/relational/what-is-an-orm'} /> <DocLink icon="file" text="Comparing SQL, query builders, and ORMs" href={'/types/relational/comparing-sql-query-builders-and-orms'} /> <DocLink icon="file" text="What are database migrations?" href={'/types/relational/what-are-database-migrations'} /> <DocLink icon="file" text="Strategies for deploying database migrations" href={'/types/relational/migration-strategies'} /> <DocLink icon="file" text="Using the expand and contract pattern for schema changes" href={'/types/relational/expand-and-contract-pattern'} /> <DocLink icon="file" text="Comparing common database infrastructure patterns" href={'/types/relational/infrastructure-architecture'} /> <DocLink icon="file" text="What are JOINs in SQL?" href={'/types/relational/what-are-joins-in-sql'} />
Document databases are a great way for working flexibly with data with high scalability and agility. Discover why document databases continue to gain in popularity.
<DocLink icon="file" text="What are document databases?" href={'/types/document/what-are-document-dbs'} />
PostgreSQL is a feature rich object-relational database that offers incredible power and flexibility while maintaining standards compliance. Learn how to configure and use PostgreSQL to take advantage of its best features.
<DocLink
icon="file"
text="The benefits of PostgreSQL"
href={'/postgresql/benefits-of-postgresql'}
/>
<DocLink
icon="file"
text="Getting to know PostgreSQL"
href={'/postgresql/getting-to-know-postgresql'}
/>
<DocLink
icon="file"
text="5 ways to host PostgreSQL databases"
href={'/postgresql/5-ways-to-host-postgresql'}
/>
<DocLink
icon="file"
text="Setting up a local PostgreSQL database"
href={'/postgresql/setting-up-a-local-postgresql-database'}
/>
<DocLink
icon="file"
text="How to configure a PostgreSQL database on RDS"
href={'/postgresql/setting-up-postgresql-on-rds'}
/>
<DocLink
icon="file"
text="Connecting to PostgreSQL databases"
href={'/postgresql/connecting-to-postgresql-databases'}
/>
<DocLink
icon="file"
text="Authentication and authorization"
href={'/postgresql/authentication-and-authorization'}
/>
<DocLink
icon="file"
text="βββ’Β An introduction to authorization and authentication in PostgreSQL"
href={'/postgresql/authentication-and-authorization/intro-to-authn-and-authz'}
/>
<DocLink
icon="file"
text="βββ’Β Managing roles and role attributes in PostgreSQL"
href={'/postgresql/authentication-and-authorization/role-management'}
/>
<DocLink
icon="file"
text="βββ’Β Configuring PostgreSQL user authentication"
href={
'/postgresql/authentication-and-authorization/configuring-user-authentication'
}
/>
<DocLink
icon="file"
text="βββ’Β Managing privileges in PostgreSQL with grant and revoke"
href={'/postgresql/authentication-and-authorization/managing-privileges'}
/>
<DocLink
icon="file"
text="How to create and delete databases and tables in PostgreSQL"
href={'/postgresql/create-and-delete-databases-and-tables'}
/>
<DocLink
icon="file"
text="An introduction to PostgreSQL data types"
href={'/postgresql/introduction-to-data-types'}
/>
<DocLink
icon="file"
text="An introduction to PostgreSQL column and table constraints"
href={'/postgresql/column-and-table-constraints'}
/>
<DocLink
icon="file"
text="Inserting and modifying data"
href={'/postgresql/inserting-and-modifying-data'}
/>
<DocLink
icon="file"
text="βββ’Β How to insert and delete data in PostgreSQL"
href={'/postgresql/inserting-and-modifying-data/inserting-and-deleting-data'}
/>
<DocLink
icon="file"
text="βββ’Β How to update existing data in PostgreSQL"
href={'/postgresql/inserting-and-modifying-data/updating-existing-data'}
/>
<DocLink
icon="file"
text="βββ’Β How to use INSERT ON CONFLICT
to upsert data in PostgreSQL"
href={'/postgresql/inserting-and-modifying-data/insert-on-conflict'}
/>
<DocLink
icon="file"
text="βββ’Β Importing and exporting data in PostgreSQL"
href={
'/postgresql/inserting-and-modifying-data/importing-and-exporting-data-in-postgresql'
}
/>
<DocLink
icon="file"
text="βββ’Β Understanding and using transactions in PostgreSQL"
href={'/postgresql/inserting-and-modifying-data/using-transactions'}
/>
<DocLink
icon="file"
text="Reading and querying data"
href={'/postgresql/reading-and-querying-data'}
/>
<DocLink
icon="file"
text="βββ’Β How to perform basic queries with SELECT
in PostgreSQL"
href={'/postgresql/reading-and-querying-data/basic-select'}
/>
<DocLink
icon="file"
text="βββ’Β How to filter query results in PostgreSQL"
href={'/postgresql/reading-and-querying-data/filtering-data'}
/>
<DocLink
icon="file"
text="βββ’Β Using joins to combine data from different tables in PostgreSQL"
href={'/postgresql/reading-and-querying-data/joining-tables'}
/>
<DocLink icon="file" text="βββ’Β Introduction to optimizing PostgreSQL performance" href={'/postgresql/reading-and-querying-data/optimizing-postgresql'} />
<DocLink icon="file" text="Short guides" href={'/postgresql/short-guides'} /> <DocLink icon="file" text="βββ’Β How to use single and double quotes in PostgreSQL" href={'/postgresql/short-guides/quoting-rules'} /> <DocLink icon="file" text="βββ’Β How to create and delete users in PostgreSQL" href={'/postgresql/short-guides/creating-deleting-users'} /> <DocLink icon="file" text="βββ’Β Introduction to PostgreSQL connection URIs" href={'/postgresql/short-guides/connection-uris'} /> <DocLink icon="file" text="βββ’Β How to export database and table schemas in PostgreSQL" href={'/postgresql/short-guides/exporting-schemas'} /> <DocLink icon="file" text="Working with dates in PostgreSQL" href={'/postgresql/date-types'} />
MySQL is one of the most popular relational databases in the world, offering fast performance and production-ready power. Learn how to take advantage of MySQL's features for your project or website.
<DocLink
icon="file"
text="5 ways to host MySQL databases"
href={'/mysql/5-ways-to-host-mysql'}
/>
<DocLink
icon="file"
text="Setting up a local MySQL database"
href={'/mysql/setting-up-a-local-mysql-database'}
/>
<DocLink
icon="file"
text="Connecting to MySQL databases"
href={'/mysql/connecting-to-mysql-databases'}
/>
<DocLink
icon="file"
text="Authentication and authorization"
href={'/mysql/authentication-and-authorization'}
/>
<DocLink
icon="file"
text="βββ’Β An introduction to authorization and authentication in MySQL"
href={'/mysql/authentication-and-authorization/intro-to-authn-and-authz'}
/>
<DocLink
icon="file"
text="βββ’Β How to manage users and authentication in MySQL"
href={
'/mysql/authentication-and-authorization/user-management-and-authentication'
}
/>
<DocLink
icon="file"
text="βββ’Β How to use GRANT
and REVOKE
to manage privileges in MySQL"
href={'/mysql/authentication-and-authorization/privilege-management'}
/>
<DocLink
icon="file"
text="βββ’Β How to manage privileges with roles in MySQL"
href={'/mysql/authentication-and-authorization/role-management'}
/>
<DocLink
icon="file"
text="How to create and delete databases and tables in MySQL"
href={'/mysql/create-and-delete-databases-and-tables'}
/>
<DocLink
icon="file"
text="An introduction to MySQL data types"
href={'/mysql/introduction-to-data-types'}
/>
<DocLink
icon="file"
text="An introduction to MySQL column and table constraints"
href={'/mysql/column-and-table-constraints'}
/>
<DocLink
icon="file"
text="Inserting and modifying data"
href={'/mysql/inserting-and-modifying-data'}
/>
<DocLink
icon="file"
text="βββ’Β How to insert and delete data in MySQL"
href={'/mysql/inserting-and-modifying-data/inserting-and-deleting-data'}
/>
<DocLink
icon="file"
text="βββ’Β How to update existing data in MySQL"
href={'/mysql/inserting-and-modifying-data/updating-existing-data'}
/>
<DocLink
icon="file"
text="βββ’Β How to use ON DUPLICATE KEY UPDATE
to upsert data in MySQL"
href={'/mysql/inserting-and-modifying-data/insert-on-duplicate-key-update'}
/>
<DocLink
icon="file"
text="βββ’Β Importing and exporting data in MySQL"
href={
'/mysql/inserting-and-modifying-data/importing-and-exporting-data-in-mysql'
}
/>
<DocLink
icon="file"
text="βββ’Β Understanding and using transactions in MySQL"
href={'/mysql/inserting-and-modifying-data/using-transactions'}
/>
<DocLink
icon="file"
text="Reading and querying data"
href={'/mysql/reading-and-querying-data'}
/>
<DocLink
icon="file"
text="βββ’Β How to perform basic queries with SELECT
in MySQL"
href={'/mysql/reading-and-querying-data/basic-select'}
/>
<DocLink
icon="file"
text="βββ’Β How to filter query results in MySQL"
href={'/mysql/reading-and-querying-data/filtering-data'}
/>
<DocLink
icon="file"
text="βββ’Β Using joins to combine data from different tables in MySQL"
href={'/mysql/reading-and-querying-data/joining-tables'}
/>
<DocLink
icon="file"
text="βββ’Β Identifying slow queries in MySQL"
href={'/mysql/reading-and-querying-data/identifying-slow-queries'}
/>
<DocLink
icon="file"
text="βββ’Β Profiling and optimizing slow queries in MySQL"
href={'/mysql/reading-and-querying-data/optimizing-slow-queries'}
/>
<DocLink icon="file" text="Tools and utilties" href={'/mysql/tools'} />
<DocLink
icon="file"
text="βββ’Β Using mysql_config_editor
to manage MySQL credentials"
href={'/mysql/tools/mysql-config-editor'}
/>
<DocLink icon="file" text="Short guides" href={'/mysql/short-guides'} />
<DocLink
icon="file"
text="βββ’Β How to create and delete users in MySQL"
href={'/mysql/short-guides/creating-deleting-users'}
/>
<DocLink
icon="file"
text="βββ’Β How check your MySQL configuration for syntax errors"
href={'/mysql/short-guides/validate-configuration'}
/>
<DocLink
icon="file"
text="βββ’Β How to export database and table schemas in MySQL"
href={'/mysql/short-guides/exporting-schemas'}
/>
SQLite is a collection of a library, file format, and command line utility that provides self-contained relational database capabilities in local environments. Learn how to care for your application's data using SQLite's versatile, reliable data management capabilities.
<DocLink
icon="file"
text="Setting up a local SQLite database"
href={'/sqlite/setting-up-a-local-sqlite-database'}
/>
<DocLink
icon="file"
text="Importing and exporting data in SQLite"
href={'/sqlite/importing-and-exporting-data-in-sqlite'}
/>
<DocLink
icon="file"
text="Creating and deleting databases and tables with SQLite"
href={'/sqlite/creating-and-deleting-databases-and-tables'}
/>
<DocLink
icon="file"
text="Inserting and deleting data with SQLite"
href={'/sqlite/inserting-and-deleting-data'}
/>
<DocLink
icon="file"
text="How to perform basic queries with SELECT
with SQLite"
href={'/sqlite/basic-select'}
/>
<DocLink
icon="file"
text="How to update existing data with SQLite"
href={'/sqlite/update-data'}
/>
<DocLink
icon="file"
text="How to export database and table schemas in SQLite"
href={'/sqlite/exporting-schemas'}
/>
Microsoft SQL Server is a powerful and mature relational database system that integrates well with the Microsoft ecosystem and other environments. Learn how to take advantage of the benefits offered by Microsoft SQL Server to power your next application.
<DocLink icon="file" text="Setting up a local SQL Server database" href={'/mssql/setting-up-a-local-sql-server-database'} />
MongoDB is a popular document database that is often praised for its practicality and its ability to allow for rapid prototyping and development. Learn how to use MongoDB to its fullest to take advantage of the performance and features that developers have grown to rely on.
<DocLink icon="file" text="What is MongoDB?" href={'/mongodb/what-is-mongodb'} /> <DocLink icon="file" text="Setting up a local MongoDB database" href={'/mongodb/setting-up-a-local-mongodb-database'} /> <DocLink icon="file" text="Connecting to MongoDB databases" href={'/mongodb/connecting-to-mongodb'} /> <DocLink icon="file" text="Introduction to provisioning MongoDB Atlas" href={'/mongodb/mongodb-atlas-setup'} /> <DocLink icon="file" text="How to manage users and authentication in MongoDB" href={'/mongodb/configuring-mongodb-user-accounts-and-authentication'} /> <DocLink icon="file" text="How to manage authorization and privileges in MongoDB" href={'/mongodb/authorization-and-privileges'} /> <DocLink icon="file" text="How to manage databases and collections in MongoDB" href={'/mongodb/creating-dbs-and-collections'} /> <DocLink icon="file" text="How to manage documents in MongoDB" href={'/mongodb/managing-documents'} /> <DocLink icon="file" text="How to query and filter documents in MongoDB" href={'/mongodb/querying-documents'} /> <DocLink icon="file" text="Introduction to MongoDB data types" href={'/mongodb/mongodb-datatypes'} /> <DocLink icon="file" text="Introduction to MongoDB indexes" href={'/mongodb/mongodb-indexes'} /> <DocLink icon="file" text="Introduction to MongoDB transactions" href={'/mongodb/mongodb-transactions'} /> <DocLink icon="file" text="Introduction to MongoDB connection URIs" href={'/mongodb/connection-uris'} /> <DocLink icon="file" text="Working with dates and times in MongoDB" href={'/mongodb/working-with-dates'} /> <DocLink icon="file" text="How MongoDB encrypts data" href={'/mongodb/mongodb-encryption'} /> <DocLink icon="file" text="Introduction to MongoDB database tools & utilities" href={'/mongodb/mongodb-database-tools'} /> <DocLink icon="file" text="How to sort query results in MongoDB" href={'/mongodb/mongodb-sorting'} /> <DocLink icon="file" text="Introduction to MongoDB Aggregation Framework" href={'/mongodb/mongodb-aggregation-framework'} />
Tools dedicated to improving your interactions with databases.
<DocLink icon="file" text="Top 11 Node.js ORMs, query builders & database libraries in 2022" href={'/database-tools/top-nodejs-orms-query-builders-and-database-libraries'} /> <DocLink icon="file" text="Top 8 TypeScript ORMs, query builders, & database libraries: evaluating type safety" href={'/database-tools/evaluating-type-safety-in-the-top-8-typescript-orms'} /> <DocLink icon="file" text="What is connection pooling and how does it work?" href={'/database-tools/connection-pooling'} />
Strategies and techniques for maintaining and managing databases in your environments.
<DocLink icon="file" text="Troubleshooting database outages and connection issues" href={'/managing-databases/database-troubleshooting'} /> <DocLink icon="file" text="How to spot bottlenecks in performance" href={'/managing-databases/how-to-spot-bottlenecks-in-performance'} /> <DocLink icon="file" text="Syncing development databases between team members" href={ '/managing-databases/syncing-development-databases-between-team-members' } /> <DocLink icon="file" text="Database replication" href={'/managing-databases/database-replication'} /> <DocLink icon="file" text="βββ’Β An introduction to database replication and its benefits" href={ '/managing-databases/database-replication/database-replication-introduction' } /> <DocLink icon="file" text="Introduction to OLAP and OLTP" href={'/managing-databases/introduction-to-OLAP-OLTP'} /> <DocLink icon="file" text="How microservices and monoliths impact the database" href={'/managing-databases/microservices-vs-monoliths'} /> <DocLink icon="file" text="Introduction to database caching" href={'/managing-databases/introduction-database-caching'} /> <DocLink icon="file" text="Introduction to testing in production" href={'/managing-databases/testing-in-production'} /> <DocLink icon="file" text="Introduction to database backup considerations" href={'/managing-databases/backup-considerations'} /> <DocLink icon="file" text="Introduction to full-text search" href={'/managing-databases/intro-to-full-text-search'} />
The serverless model represents a new way of designing applications by abstracting the infrastructure and focusing only on code execution. Learn more about about serverless concepts, providers, and terms to evaluate serverless for your next project.
<DocLink icon="file" text="What is serverless?" href={'/serverless/what-is-serverless'} /> <DocLink icon="file" text="Top 13 serverless computing and database providers" href={'/serverless/serverless-comparison'} /> <DocLink icon="file" text="Introduction to common serverless challenges" href={'/serverless/serverless-challenges'} /> <DocLink icon="file" text="Traditional databases vs serverless databases" href={'/serverless/traditional-vs-serverless-databases'} /> <DocLink icon="file" text="Serverless glossary" href={'/serverless/serverless-glossary'} />
A collection of interesting topics and research not pertaining to any specific topic but just for fun :)
<DocLink icon="file" text="The United States' most popular databases going into 2022" href={'/just-for-fun/us-most-popular-databases-by-states'} />