At this point in the book, we have all the elements necessary to partition data. In the previous chapter, we learned how to use triggers and rules to move data between tables. In this chapter, we just learned that it is possible using inheritance to query a parent table and manage the data of child tables. In the next section, we will do partitioning using the declarative partitioning method, available on PostgreSQL starting from version 10.x.
An example of list partitioning
In this first example, we will try to create a partitioned table using the list partitioning logic. In the next section, we will create a partitioned table using the range partitioning logic, starting from a table such as the following:
pk | tag | level |
1 | vegetables | 0 |
2 | fruits | 0 |
3 | orange | 1 |
4 | apple | 1 |
5 | red apple | 2 |
Our goal is to split our data using the value of the level field. The goal that we want to reach is to have 4 levels and we want to have 1 table for...