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 < ag1567...@gmail.com> 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, <ronljohnso...@gmail.com> > 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 < >> ag1567...@gmail.com> 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.kla...@aklaver.com> >>> 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, >>>> > <ag1567...@gmail.com <mailto:ag1567...@gmail.com>> 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.kla...@aklaver.com <mailto:adrian.kla...@aklaver.com>> >>>> 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.kla...@aklaver.com <mailto:adrian.kla...@aklaver.com> >>>> > >>>> >>>> -- >>>> Adrian Klaver >>>> adrian.kla...@aklaver.com >>>> >>>> >> >> -- >> 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!