Files
awesome-kubernetes/docs/databases.md
Inaki Fernandez e728230e9b udpate
2024-08-21 18:41:02 +02:00

46 KiB
Raw Permalink Blame History

Databases on Kubernetes. Database DevOps

  1. Introduction
  2. How to choose the right database for your service
  3. Database Load Balancer
  4. SQL
    1. Alternatives to SQL
  5. Stored Procedures
  6. Performance
  7. Stateful and Stateless Applications
  8. Serverless Databases
  9. DataOps
  10. Database Continuous Integration
  11. Databases on Kubernetes
  12. Database DevOps
  13. Database Mesh
  14. KubeDB Cloud Native Postgress Database
  15. Cockroach Cloud Native Database
  16. Operator Lifecycle Manager (OLM)
  17. Spilo PostgreSQL Operator
  18. Zalando PostgreSQL Operator
  19. Crunchy Data PostgreSQL Operator
  20. Oracle 12c on OpenShift Container Platform
  21. Oracle Database Operator for Kubernetes
  22. SQL Server
  23. MySQL
  24. MariaDB
  25. PostgreSQL
  26. Percona MySQL
  27. Percona PostgreSQL Operator
  28. Redis
  29. Rockset
  30. PysonDB
  31. Clickhouse
  32. Apache Ignite
  33. Apache Druid
  34. Dolt is Git for Data
  35. VictoriaMetrics and VictoriaLogs
  36. Tools
  37. Time-Series Database
  38. Data Analytics and Visualization Tools
  39. Data Lakes
  40. Graph Databases
  41. Excel
  42. Videos
  43. Tweets

Introduction

How to choose the right database for your service

Database Load Balancer

SQL

Alternatives to SQL

Stored Procedures

Performance

Stateful and Stateless Applications

[![Statefull and Stateless Aplications](images/stateful-and-stateless-applications.png)](https://www.xenonstack.com/insights/stateful-and-stateless-applications/)

Serverless Databases

DataOps

Database Continuous Integration

Databases on Kubernetes

Database DevOps

Database Mesh

KubeDB Cloud Native Postgress Database

  • kubedb.com Run production-grade databases easily on Kubernetes

Cockroach Cloud Native Database

Operator Lifecycle Manager (OLM)

Spilo PostgreSQL Operator

Zalando PostgreSQL Operator

Crunchy Data PostgreSQL Operator

Oracle 12c on OpenShift Container Platform

Oracle Database Operator for Kubernetes

SQL Server

MySQL

MariaDB

PostgreSQL

Percona MySQL

Percona PostgreSQL Operator

Redis

Rockset

PysonDB

Clickhouse

Apache Ignite

Apache Druid

Dolt is Git for Data

VictoriaMetrics and VictoriaLogs

Tools

Time-Series Database

Data Analytics and Visualization Tools

Data Lakes

Graph Databases

Excel

Videos

??? note "Click to expand!"

<center>
<iframe width="560" height="315" src="https://www.youtube.com/embed/OqCK95AS-YE" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
<iframe width="560" height="315" src="https://www.youtube.com/embed/SxsMgHFNvWg" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
<iframe width="560" height="315" src="https://www.youtube.com/embed/W_Knpfhv0Qg" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
<iframe width="560" height="315" src="https://www.youtube.com/embed/OJySfiMKXLs" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
</center>

Tweets

Click to expand!

Kubernetes has made huge improvements in the ability to run stateful workloads including databases and message queues, but I still prefer not to run them on Kubernetes.

— Kelsey Hightower (@kelseyhightower) February 13, 2018
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Postgres is what happens when tech gets so good, for so long, it becomes boring. Dope since the 80s. https://t.co/zeoagBfMvW

— Kelsey Hightower (@kelseyhightower) December 28, 2020
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Stack Overflow's SQL Server is at 4% CPU with 500M queries/day https://t.co/wX9Od749ik https://t.co/1BAuEV9VgT

— Lukas Eder (@lukaseder) August 18, 2021
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

PostgreSQL for relational.
PromQL for monitoring.

Two big alignments across the industry.

— Jaana Dogan at KubeCon ヤナ ドガン (@rakyll) October 13, 2021
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

I'm super curious, how many people have successfully migrated their databases from Oracle to Postgres in production? I'm talking 100% migration with Oracle being turned off at the end.

— Kelsey Hightower (@kelseyhightower) November 1, 2021
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Kubernetes can only meet stateful services half way. We need direct changes in databases, message brokers, and other stateful systems if we want to see a future where Kubernetes becomes the preferred destination to run them. The @vectorizedio team is doing their part. https://t.co/w94Q56nnXM

— Kelsey Hightower (@kelseyhightower) November 8, 2021
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Sometimes we work for a database and need to connect to another (#migration ;) so I explained to a colleague the difference between Oracle SERVICE_NAME and SID. Pasting it here in case it helps 🧵

— Franck Pachot 🚀 (@FranckPachot) February 2, 2022
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Kubernetes Database Operator is useful for building scalable database servers as a database cluster. But migrating existing databases to k8s requires a lot of manual work due to having to create new artifacts.

At our next meetup, we'll demo an open-source tool to solve this. pic.twitter.com/o55vnyITV2

— konveyor.io (@Konveyor_io) February 4, 2022
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Surprising number of devs today don't seem to know how to write their own database schemas. Is SQL really that out of fashion?

— Joyce Park (@troutgirl) April 2, 2022
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

It is often surprising how little is known about how databases operate at a surface level, considering they store almost all of the states in our applications. Things You Should Know About Databases. pic.twitter.com/SAX5wHaS3m

— Architecture Notes (@arcnotes) October 27, 2022
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

Partitioning is the process of storing a large database across multiple machines.

Here are the popular partitioning architectures with their benefits and costs: {1/8} ↓ pic.twitter.com/85JdhcISJq

— Fernando 🇮🇹🇨🇭 (@Franc0Fernand0) December 17, 2022
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

What is the 𝗦𝗤𝗟 𝗤𝘂𝗲𝗿𝘆 𝗼𝗿𝗱𝗲𝗿 𝗼𝗳 𝗘𝘅𝗲𝗰𝘂𝘁𝗶𝗼𝗻?

There are many steps involved in optimising your SQL Queries. It is helpful to understand the order of SQL Query Execution as we might have constructed a different picture mentally.

The actual order is as… pic.twitter.com/ApvRbkH652

— Aurimas Griciūnas (@Aurimas_Gr) May 9, 2023
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

State of Database 2023 https://t.co/uXd2sM7dq9 pic.twitter.com/sGBmXqT3CA

— Architecture Notes (@arcnotes) August 6, 2023
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>