Fix formatting on pg_array_column_postgrest
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>
This commit is contained in:
parent
4f0a08ac18
commit
5c96c94175
1 changed files with 7 additions and 7 deletions
|
@ -1,5 +1,5 @@
|
|||
Using the array type for user and package queries
|
||||
===============================
|
||||
Using the array type for user and package queries
|
||||
=================================================
|
||||
|
||||
Currently, we use auxiliary tables to query for messages related to packages or users,
|
||||
in the standard RDBS fashion.
|
||||
|
@ -29,7 +29,7 @@ To add new column
|
|||
To populate it
|
||||
::
|
||||
|
||||
update messages2 set packages=t_agg.p_agg from
|
||||
update messages2 set packages=t_agg.p_agg from
|
||||
(select msg, array_agg(package) as p_agg from package_messages group by msg) as t_agg where messages.id=t_agg.msg;
|
||||
|
||||
We need to enable the btree_gin extension to be able to create index with array as well as timestamp
|
||||
|
@ -58,13 +58,13 @@ A simple membership:
|
|||
A simple membership ordered by time.
|
||||
::
|
||||
|
||||
/messages_ts?order=timestamp.desc&packages=ov.{{kernel}}
|
||||
/messages_ts?order=timestamp.desc&packages=ov.{{kernel}}
|
||||
|
||||
Findings
|
||||
--------
|
||||
|
||||
Querying just the package membership
|
||||
~~~~~~~~~~~~~~~~~
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
The queries were surprisingly fast, with maximum under 4 seconds and
|
||||
mean around half a second. This encouraged us to do further experiments.
|
||||
|
@ -78,7 +78,7 @@ Results ::
|
|||
Time per Request - mean: 0.522946, min: 0.000000, max: 3.907548
|
||||
|
||||
Querying just the package membership ordered by timestamp desc
|
||||
~~~~~~~~~~~~~~~~~
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Usually we want to see most recent messages. So we ammended the query,
|
||||
to include "order by timestamp desc". The result was less encouraging,
|
||||
|
@ -95,7 +95,7 @@ Results ::
|
|||
Time per Request - mean: 7.474040, min: 0.000000, max: 99.880939
|
||||
|
||||
Conclusion
|
||||
--------------
|
||||
----------
|
||||
|
||||
While array support seems interesting, and for simple queries very fast, indexes that require ordering
|
||||
don't seem to be supported. This makes strong case against using them.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue