Search Postgresql Archives

Re: Need help in database design

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



As I expected.

Next:
1) Will all 50 of those k/v pairs be populated when you insert the record?
2) Will there be updates?
3) In each row, will some of those 50 pairs stay empty?
4) When querying a row, will the app care about all 50 k/v pairs at the same time, or just one -- or even some -- of them?


On Mon, Dec 23, 2024 at 12:07 PM Divyansh Gupta JNsThMAudy <ag1567827@xxxxxxxxx> wrote:

Each row have a PK (gdid) that will uniquely refrence 50 k/v pair set


On Mon, 23 Dec 2024, 10:35 pm Ron Johnson, <ronljohnsonjr@xxxxxxxxx> wrote:
How do you uniquely reference each set of 50 k/v pairs?

On Mon, Dec 23, 2024 at 12:01 PM Divyansh Gupta JNsThMAudy <ag1567827@xxxxxxxxx> wrote:

Sure , for example, I have 50 key with name as t1 , t2 ,t3 .......t50

Now each key could have values from 0 to 3 

So let suppose we have JSONB like that for row r1

{

t1: 1

t2: 2

t3 : 3

}


As if I convert it into columns so r1 will have

t1 column will contain 1

t2 column will contain 2

...... So on


So here my question is considering one JSONB column is perfect or considering 50 columns will be more optimised.



On Mon, 23 Dec 2024, 10:24 pm Adrian Klaver, <adrian.klaver@xxxxxxxxxxx> wrote:
On 12/23/24 08:46, Divyansh Gupta JNsThMAudy wrote:
> Also as you ask how 50 pairs turns into 50 column so each column will be
> a key and the value of that key will store inside their respective
> column for each row

My problem with understanding this is 50 pairs = 100 values, I don't
understand how that can fit in 50 columns that can only handle 1 value
each. You need to provide some example data showing what you want to
achieve. It does not need to be the full 50, just something to show the
process.


>
>
> On Mon, 23 Dec 2024, 10:14 pm Divyansh Gupta JNsThMAudy,
> <ag1567827@xxxxxxxxx <mailto:ag1567827@xxxxxxxxx>> wrote:
>
>     As per the discussion with other team members they suggested if we
>     store 50 values for keys in an individual column that will provide
>     better performance as the data type is native (INT2) on the other
>     hand if we store all the key value pair in a single JSONB column the
>     performance will degrade even after applying a GIN index on that
>     however the statement sounds funny but I want to take everyone openion?
>
>
>     On Mon, 23 Dec 2024, 10:05 pm Adrian Klaver,
>     <adrian.klaver@xxxxxxxxxxx <mailto:adrian.klaver@xxxxxxxxxxx>> wrote:
>
>         On 12/23/24 07:53, Divyansh Gupta JNsThMAudy wrote:
>          > Hii Community,
>          >
>          > I need to provide a support for some functionality for my
>         application
>          > for that I need to store 50 key value pair set, so I am in a
>         dilemma,
>          > weather I create 50 new columns of int2 data type each column
>         will
>
>         This is unclear, I am trying to figure out you go from '50 key
>         value
>         pair set' to '50 new columns of int2'.
>
>         In other words how 50 pairs turn into 50 columns?
>
>         Then there is the question of why 50 keys per row in the first
>         place?
>
>
>          > contain value of a specific key or should I go with JSONB
>         data type with
>          > 50 key value pair, the table on which I am going to do that
>         all contains
>          > 1 Billion rows of data and have 84 hash partitions, I have
>         gone through
>          > multiple articles some of them mentioned it's a good approach
>         to create
>          > 50 new columns and some states that creating one JSONB would
>         be best
>          > that's why I need your help to move forward, also I am ready
>         to make
>          > H-Store instead of JSONB if it provides better performance.
>          > Please help me to comes out from that dilemma.
>          >
>          > Regards,
>          > Divyansh Gupta,
>          > Database Administrator
>
>         --
>         Adrian Klaver
>         adrian.klaver@xxxxxxxxxxx <mailto:adrian.klaver@xxxxxxxxxxx>
>

--
Adrian Klaver
adrian.klaver@xxxxxxxxxxx



--
Death to <Redacted>, and butter sauce.
Don't boil me, I'm still alive.
<Redacted> lobster!


--
Death to <Redacted>, and butter sauce.
Don't boil me, I'm still alive.
<Redacted> lobster!

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux