Re: Oracle to PostgreSQL Migration

2023-03-24 Thread Inzamam Shafiq
Hi Umair,

Thanks, oracle_fdw can be used, but it doesn't provide real time sync, we have 
to schedule jobs to insert data in actual schema from foreign tables, so some 
delay might be there.

Regards,

Inzamam Shafiq

From: Umair Shahid 
Sent: Tuesday, March 21, 2023 3:48 PM
To: Inzamam Shafiq 
Cc: Thomas Kellerer ; pgsql-general@lists.postgresql.org 

Subject: Re: Oracle to PostgreSQL Migration

Could oracle_fdw help in your use case? 
You could consider setting up a job to pull data into PostgreSQL live and then 
cut over when you are ready.

- Umair

On Tue, Mar 21, 2023 at 10:36 AM Inzamam Shafiq 
mailto:inzamam.sha...@hotmail.com>> wrote:
Hi Thomas,

We have tried kafka, but in that we stuck in CDC part, update/delete was not 
working due to some NULL value issue. Do you have any helping material for 
Oracle to PostgreSQL data migration using debezium?

Regards,

Inzamam Shafiq
Sr. DBA

From: Thomas Kellerer mailto:sham...@gmx.net>>
Sent: Monday, March 20, 2023 7:21 PM
To: 
pgsql-general@lists.postgresql.org 
mailto:pgsql-general@lists.postgresql.org>>
Subject: Re: Oracle to PostgreSQL Migration

Inzamam Shafiq schrieb am 20.03.2023 um 13:57:
> We have an Oracle DB which is around 1TB and we want to migrate to
> PostgreSQL that have a new table structure, so we want to perform
> data transformation and real time CDC from Oracle to PostgreSQL. Do
> we have any good open source tool to achieve this with No Coding
> involved.??


You could try debezium, but I don't know how good it works and if it qualifies 
as "no coding involved"





Re: Convert pg_constraint.conkey array to same-order array of column names

2023-03-24 Thread Dominique Devienne
On Thu, Mar 23, 2023 at 4:20 PM Adrian Klaver 
wrote:

> On 3/23/23 04:12, Dominique Devienne wrote:
> > CROSS JOIN LATERAL UNNEST(cnstr.conkey) WITH ORDINALITY AS cols(value,
> rank)
> >   ORDER BY cols.rank
> A before coffee solution:
>

Thanks for answering Adrian. And sorry for the delay in responding.


> WITH ck AS (
>  SELECT
>  conrelid,
>  unnest(conkey) AS ky
>  FROM
>  pg_constraint
>  WHERE
>  conrelid = 'cell_per'::regclass
> )
>

This part surprised me. I didn't know a table-valued function could be used
like this on the select-clause.

Both queries below yield the same rows for me, in the same order:

=> select conname, unnest(conkey), conrelid::regclass::text from
pg_constraint where conrelid::regclass::text like ... and
cardinality(conkey) = 8;
=> select conname, key.value, conrelid::regclass::text from pg_constraint
cross join lateral unnest(conkey) as key(value) where
conrelid::regclass::text like ... and cardinality(conkey) = 8;

So your compact form is equivalent to the second form?
What about the order? Is it guaranteed?
I was "raised" on the "order is unspecified w/o an order-by-clause". Why
would be it be different here?
In our case, the query is more complex, with joins on pg_namespace,
pg_class, and pg_attribute, on
all constraints of a schema, and the order came out wrong w/o adding WITH
ORDINALITY and ordering on it.

Thus I worry the order is plan-dependent, and not guaranteed. Am I wrong to
worry?
The form you provide seems no different from our old form, to my non-expert
eye. --DD


Re: Convert pg_constraint.conkey array to same-order array of column names

2023-03-24 Thread Alvaro Herrera
On 2023-Mar-23, Dominique Devienne wrote:

> We have a query returning 1 row per constraint column,
> which until recently we didn't realize wasn't preserving order of the
> columns.
> 
> A colleague fixed that, with something like below:
> 
> SELECT ...
> FROM pg_catalog.pg_constraint cnstr
> ...
> CROSS JOIN LATERAL UNNEST(cnstr.conkey) WITH ORDINALITY AS cols(value, rank)
>  ORDER BY cols.rank
> 
> But I'm wondering about getting 1 row per constraint instead,
> and fetching an array of column names.

IIRC you can use array_agg(unnest ORDER BY ordinality), grouping by
constraint OID or name.

-- 
Álvaro Herrera   48°01'N 7°57'E  —  https://www.EnterpriseDB.com/
"La espina, desde que nace, ya pincha" (Proverbio africano)




PostgreSQL vs MariaDB

2023-03-24 Thread Inzamam Shafiq
Hi Team,

Hope you are doing well.

Can someone please list pros and cons of MariaDB vs PostgreSQL that actually 
needs serious consideration while choosing the right database for large OLTP 
DBs (Terabytes)?

Thanks.

Regards,

Inzamam Shafiq
Sr. DBA


Re: Convert pg_constraint.conkey array to same-order array of column names

2023-03-24 Thread Dominique Devienne
On Fri, Mar 24, 2023 at 11:51 AM Alvaro Herrera 
wrote:

> On 2023-Mar-23, Dominique Devienne wrote:
> > But I'm wondering about getting 1 row per constraint instead,
> > and fetching an array of column names.
>
> IIRC you can use array_agg(unnest ORDER BY ordinality), grouping by
> constraint OID or name.
>

Thanks. This lead me to a better search, yielding two informative results:
https://stackoverflow.com/questions/60877627/perform-unnest-inner-join-and-then-array-agg-as-part-of-an-update-query
http://amyszczepanski.com/2019/03/25/unnest-and-array-agg-respecting-order.html


Re: Oracle to PostgreSQL Migration

2023-03-24 Thread Christophe Pettus
> We have an Oracle DB which is around 1TB and we want to migrate to
> PostgreSQL that have a new table structure, so we want to perform
> data transformation and real time CDC from Oracle to PostgreSQL. Do
> we have any good open source tool to achieve this with No Coding
> involved.??

To meet all of your requirements, you are almost certainly going to need to 
look at a commercial solution such as:

* EDB's xDB.
* Oracle's Golden Gate.
* FiveTran's HVR.

We've used xDB successfully in the past for this type of migration.

One open-source change capture tool that you might investigate is:

https://www.symmetricds.org

I personally don't have experience with it, but it might be suitable.

Best,
-- Christophe





Re: PostgreSQL vs MariaDB

2023-03-24 Thread Ben Chobot

Inzamam Shafiq wrote on 3/24/23 4:07 AM:

Hi Team,

Hope you are doing well.

Can someone please list pros and cons of MariaDB vs PostgreSQL that 
actually needs serious consideration while choosing the right database 
for large OLTP DBs (Terabytes)?


That's a very broad question, which will take far more effort to answer 
than most people are willing to provide.


I would suggest describing your specific use case and asking how well 
PostgreSQL will fit it. You clearly have a lot of data, for example, so 
is that distributed across many tables? Large blobs or lots of rows? 
Lots of inserts? Reads? Updates? Those sorts of things.


Maybe somebody on this PostgreSQL list might even know MariaDB well 
enough to compare and contrast the two for you.


Re: PostgreSQL vs MariaDB

2023-03-24 Thread Jeffrey Walton
On Fri, Mar 24, 2023 at 7:07 AM Inzamam Shafiq
 wrote:
>
> Can someone please list pros and cons of MariaDB vs PostgreSQL that actually 
> needs serious consideration while choosing the right database for large OLTP 
> DBs (Terabytes)?
>

For me, security is important. I don't want to do a lot of late night
patching, and I don't want to cleanup after a data breach. When
vendors pitch a product with a database, I insist on a PostgreSQL
backend.

MySQL makes regular appearances on BugTraq. MySQL has over 1700 CVEs
going back to 1999.[1] It tells me there are problems with the
engineering process.

MariaDB adds additional CVEs on top of MySQL, but the count appears
low. I have never separated the purely MariaDB flaws from the
underlying MySQL flaws.

In contrast, PostgreSQL has about 240 CVEs going back to 1999.[2] It
tells me PostgreSQL has a better engineering process.

Jeff

[1] https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=MySQL
[2] https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=PostgreSQL




Re: PostgreSQL vs MariaDB

2023-03-24 Thread Dominique Devienne
On Fri, Mar 24, 2023 at 3:50 PM Jeffrey Walton  wrote:

> On Fri, Mar 24, 2023 at 7:07 AM Inzamam Shafiq
> > Can someone please list pros and cons of MariaDB vs PostgreSQL [...]
> >
>
> [...] MySQL has over [1700 CVEs going back to 1999.][1]
> In contrast, PostgreSQL has about [240 CVEs going back to 1999.][2]
>
> [1]: https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=MySQL
> [2]: https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=PostgreSQL


OTOH, I checked a few, and they are not about PostgreSQL per-se,
but projects using PostgreSQL or extensions to PostgreSQL.
Thus I assume the same happens for MySQL.

Of course, I didn't check that many, just a small sample.

Also, there seems to be a low signal-to-noise ratio on CVEs.
See what [Richard Hipp of SQLite fame says about CVEs][3].
This (low quality of CVEs) comes up often on the SQLite Forum. FWIW.

Still, your input is insightful, qualitatively. Thanks, --DD

[3]: https://sqlite.org/cves.html


Re: PostgreSQL vs MariaDB

2023-03-24 Thread Sumit Sengupta
Here is an EDB presentation on this from 2019
https://www.enterprisedb.com/blog/postgresql-vs-mysql-360-degree-comparison-syntax-performance-scalability-and-features
PostgreSQL vs. MySQL: A 360-degree Comparison [Syntax, Performance, Scalability 
and 
Features]
In this blog, we will discuss the key differences in terms of performance, 
syntax, scalability, and features between PostgreSQL and Mysql. PostgreSQL and 
MySQL are both immensely popular open-source databases, and a variety of 
real-time applications today utilize both. MySQL is known to be the world’s 
most popular database, whereas PostgreSQL is known as the world’s most advanced 
RDBMS database.
www.enterprisedb.com


From: Jeffrey Walton 
Sent: Friday, March 24, 2023 10:49 AM
To: Inzamam Shafiq 
Cc: pgsql-general@lists.postgresql.org 
Subject: Re: PostgreSQL vs MariaDB

On Fri, Mar 24, 2023 at 7:07 AM Inzamam Shafiq
 wrote:
>
> Can someone please list pros and cons of MariaDB vs PostgreSQL that actually 
> needs serious consideration while choosing the right database for large OLTP 
> DBs (Terabytes)?
>

For me, security is important. I don't want to do a lot of late night
patching, and I don't want to cleanup after a data breach. When
vendors pitch a product with a database, I insist on a PostgreSQL
backend.

MySQL makes regular appearances on BugTraq. MySQL has over 1700 CVEs
going back to 1999.[1] It tells me there are problems with the
engineering process.

MariaDB adds additional CVEs on top of MySQL, but the count appears
low. I have never separated the purely MariaDB flaws from the
underlying MySQL flaws.

In contrast, PostgreSQL has about 240 CVEs going back to 1999.[2] It
tells me PostgreSQL has a better engineering process.

Jeff

[1] https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=MySQL
[2] https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=PostgreSQL




Re: PostgreSQL vs MariaDB

2023-03-24 Thread Thomas Kellerer

Inzamam Shafiq schrieb am 24.03.2023 um 12:07:

Can someone please list pros and cons of MariaDB vs PostgreSQL that
actually needs serious consideration while choosing the right
database for large OLTP DBs (Terabytes)?


As others have pointed out, this is really hard to quantify.

For large databases, I would assume that Postgres' parallel
queries is a major advantage over MariaDB

From a management perspective, having transactional DDL makes
a lot of things easier (or more robust)

I am maintaining a very high-level overview, if you are interested

  https://www.sql-workbench.eu/dbms_comparison.html

I do not claim that this is complete or 100% accurate. And it focuses
on SQL level features. Not so much on management or monitoring features
which are typically a major concern in large scale databases.

In the end, each database product has its quirks and problems
(some more than others).

I think Postgres' weakest point is the MVCC implementation.
Which typically is not really a problem, but there are usage
patterns where it can become a problem, especially if not dealt
with properly.

Thomas




Re: Convert pg_constraint.conkey array to same-order array of column names

2023-03-24 Thread Adrian Klaver

On 3/24/23 03:28, Dominique Devienne wrote:
On Thu, Mar 23, 2023 at 4:20 PM Adrian Klaver > wrote:


On 3/23/23 04:12, Dominique Devienne wrote:
 > CROSS JOIN LATERAL UNNEST(cnstr.conkey) WITH ORDINALITY AS
cols(value, rank)
 >   ORDER BY cols.rank
A before coffee solution:


Thanks for answering Adrian. And sorry for the delay in responding.

WITH ck AS (
      SELECT
          conrelid,
          unnest(conkey) AS ky
      FROM
          pg_constraint
      WHERE
          conrelid = 'cell_per'::regclass
)


This part surprised me. I didn't know a table-valued function could be 
used like this on the select-clause.


Both queries below yield the same rows for me, in the same order:

=> select conname, unnest(conkey), conrelid::regclass::text from 
pg_constraint where conrelid::regclass::text like ... and 
cardinality(conkey) = 8;
=> select conname, key.value, conrelid::regclass::text from 
pg_constraint cross join lateral unnest(conkey) as key(value) where 
conrelid::regclass::text like ... and cardinality(conkey) = 8;


So your compact form is equivalent to the second form?
What about the order? Is it guaranteed?
I was "raised" on the "order is unspecified w/o an order-by-clause". Why 
would be it be different here?
In our case, the query is more complex, with joins on pg_namespace, 
pg_class, and pg_attribute, on
all constraints of a schema, and the order came out wrong w/o adding 
WITH ORDINALITY and ordering on it.


Your original question was:

"But I'm wondering about getting 1 row per constraint instead,
and fetching an array of column names.

So is there a way to "convert" int2[] conkey array into a text[] of those
column names?"

That is what I showed as a simple example.



Thus I worry the order is plan-dependent, and not guaranteed. Am I wrong 
to worry?
The form you provide seems no different from our old form, to my 
non-expert eye. --DD


--
Adrian Klaver
adrian.kla...@aklaver.com





Re: Convert pg_constraint.conkey array to same-order array of column names

2023-03-24 Thread Dominique Devienne
On Fri, Mar 24, 2023 at 5:40 PM Adrian Klaver 
wrote:

> On 3/24/23 03:28, Dominique Devienne wrote:
> > On Thu, Mar 23, 2023 at 4:20 PM Adrian Klaver  > > wrote:
> Your original question was:
>
> "But I'm wondering about getting 1 row per constraint instead,
> and fetching an array of column names.
>
> So is there a way to "convert" int2[] conkey array into a text[] of those
> column names?"
>
> That is what I showed as a simple example.
>

Sorry, didn't mean to offend you.

My post started with "preserving order of the columns",
but I probably didn't make it clear enough preserving the source array's
order was also a requirement.


Re: Convert pg_constraint.conkey array to same-order array of column names

2023-03-24 Thread Adrian Klaver

On 3/24/23 9:44 AM, Dominique Devienne wrote:
On Fri, Mar 24, 2023 at 5:40 PM Adrian Klaver > wrote:


On 3/24/23 03:28, Dominique Devienne wrote:
 > On Thu, Mar 23, 2023 at 4:20 PM Adrian Klaver
mailto:adrian.kla...@aklaver.com>
 > >> wrote:
Your original question was:

"But I'm wondering about getting 1 row per constraint instead,
and fetching an array of column names.

So is there a way to "convert" int2[] conkey array into a text[] of
those
column names?"

That is what I showed as a simple example.


Sorry, didn't mean to offend you.


There was no offense taken, it was about confusion as to what was being 
asked?




My post started with "preserving order of the columns",
but I probably didn't make it clear enough preserving the source array's 
order was also a requirement.



--
Adrian Klaver
adrian.kla...@aklaver.com




Re: PostgreSQL vs MariaDB

2023-03-24 Thread Miles Elam
On Fri, Mar 24, 2023 at 4:07 AM Inzamam Shafiq
 wrote:
>
> Can someone please list pros and cons of MariaDB vs PostgreSQL that actually 
> needs serious consideration while choosing the right database for large OLTP 
> DBs (Terabytes)?

Think about what you want/need from the database for your project and
then see which engine best satisfies those requirements. All modern
RDBMS engines can handle terabytes of data. Relatively static data
(mostly reads) or heavy insert will be fine with either. With large
databases, UPDATEs and DELETEs may require more maintenance with
Postgres in the form of tweaking autovacuum settings.

https://www.sql-workbench.eu/dbms_comparison.html

For a basic comparison of Postgres vs MariaDB, just uncheck all the
other engines at the top. Go down the list of rows, especially the
ones where only one of the two support a feature. If you don't know
what a feature does or what use cases it would be for, this would
provide an excellent opportunity to become better acquainted with it.

For example, if you end up needing bitemporal temporal table support
out of the box, go with MariaDB. On the other hand if you want the
most flexibility in data types and modeling your data, Postgres is
going to win out.

 * Transactional DDL
 * Clustered indexes
 * DDL event triggers
 * Alter table used in a view

Go down the list. What do you need? What do you think you'll need?
What would be nice to have?

Do you want to host it yourself or go to one of the cloud providers
for a fully managed option? If self-hosted, use whatever you like.
Hack it to your specs. If managed in the cloud, Postgres and MySQL are
more commonly available than MariaDB, but worth checking out ahead of
time.


Cheers,

Miles




psql \copy with multi-line query

2023-03-24 Thread Rob Sargent
Using version 13 psql on version 14 server and having trouble sending a 
multi-line select in the \copy.  I don't see any remark about this in 
the man page.


\copy (
select a.mrn, a.relationship,a.relation_mrn,a.provided_relationship
from actual_and_inf_rel_part1_unique_clean a
join family_ids f on f.individual_id in (a.mrn, a.relation_mrn)
where f.family_id = 1954 and relationship != 'Child'
union
select a.relation_mrn, case when d.sex = 'M' then 'Father' when d.sex = 
'F' then 'Mother' else 'Parent' end, a.mrn, a.provided_relationship

from actual_and_inf_rel_part1_unique_clean a
join family_ids f on f.individual_id in (a.mrn, a.relation_mrn)
join pt_demog d on a.mrn = d.mrn
where f.family_id = 1954 and relationship = 'Child'
)
to /some/long/path/emp1954/1954rel.csv  csv header delimiter E'\t'

\copy: parse error at end of line

select a.mrn, a.relationship,a.relation_mrn,a.provided_relationship
from actual_and_inf_rel_part1_unique_clean a
join family_ids f on f.individual_id in (a.mrn, a.relation_mrn)
where f.family_id = 1954 and relationship != 'Child'
union
select a.relation_mrn, case when d.sex = 'M' then 'Father' when d.sex = 
'F' then 'Mother' else 'Parent' end, a.mrn, a.provided_relationship

from actual_and_inf_rel_part1_unique_clean a
join family_ids f on f.individual_id in (a.mrn, a.relation_mrn)
join pt_demog d on a.mrn = d.mrn
where f.family_id = 1954 and relationship = 'Child';

   mrn   |   relationship   | relation_mrn | 
provided_relationship

-+--+--+---
 70971   | Great-grandchild | 2673727 |
 1518425 | Mother   | 70971 
| 1
 851744  | Mother   | 918639 
| 1
 2629602 | Father   | 959532 
| 1
 2981293 | Mother   | 1135789 
| 1
 2629602 | Mother   | 439681 
| 1

 70971   | Great-grandchild | 2811064 |
 2714530 | Father   | 851744 
| 1
 2520718 | Grandchild   | 2029421 
| 1
 339921  | Mother   | 1135789 
| 1

 2520718 | Grandchild   | 339921 |
 2981293 | Father   | 851744 
| 1
 2029421 | Mother   | 439681 
| 1

 918639  | Grandchild   | 3696817 |
 70971   | Great-grandchild | 339921 |
 439681  | Spouse   | 959532 
| 1
 339921  | Father   | 851744 
| 1

 2520718 | Grandchild/Grandchild-in-law | 3731101 |
 2520718 | Grandchild   | 2673727 |
 918639  | Grandchild   | 2673727 |
 70971   | Great-grandchild | 2981293 |
 918639  | Grandchild   | 339921 |
 1341357 | Spouse   | 2520718 
| 1

 70971   | Grandchild   | 1135789 |
 2520718 | Grandchild   | 2981293 |
 3696817 | Father   | 851744 
| 1
 2520718 | Mother   | 70971 
| 1
 1135789 | Mother   | 2520718 
| 1

 918639  | Grandchild   | 2714530 |
 3468386 | Mother   | 2694687 
| 1
 3594047 | Mother   | 2694687 
| 1
 1552075 | Spouse   | 3731101 
| 1
 2714530 | Mother   | 2694687 
| 1
 2673727 | Mother   | 1135789 
| 1
 1135789 | Nephew/Niece | 3731101 
| 1

 70971   | Great-grandchild | 2029421 |
 918639  | Grandchild   | 2981293 |
 70971   | Great-grandchild/Great-grandchild-in-law | 3731101 |
 2520718 | Grandchild   | 2811064 
| 1
 2673727 | Father   | 851744 
| 1

(40 rows)


Re: psql \copy with multi-line query

2023-03-24 Thread David G. Johnston
On Fri, Mar 24, 2023 at 4:04 PM Rob Sargent  wrote:

> Using version 13 psql on version 14 server and having trouble sending a
> multi-line select in the \copy.  I don't see any remark about this in the
> man page.
>

The copy meta-command cannot contain newlines.  You should use "COPY ... TO
STDOUT" directly instead.

All of this is discussed under "\copy" in the documentation (including
notes).

https://www.postgresql.org/docs/current/app-psql.html

David J.


Re: psql \copy with multi-line query

2023-03-24 Thread Rob Sargent

On 3/24/23 17:14, David G. Johnston wrote:

On Fri, Mar 24, 2023 at 4:04 PM Rob Sargent  wrote:

Using version 13 psql on version 14 server and having trouble
sending a multi-line select in the \copy.  I don't see any remark
about this in the man page.


The copy meta-command cannot contain newlines.  You should use "COPY 
... TO STDOUT" directly instead.


All of this is discussed under "\copy" in the documentation (including 
notes).


https://www.postgresql.org/docs/current/app-psql.html

David J.


Thank you.  I realize now I went to COPY not \copy docs.



Re: PostgreSQL vs MariaDB

2023-03-24 Thread Inzamam Shafiq
Hi Ben,

We have a complex running, and we will be having a lot of Insert, update and 
deletes. We have many partitioned tables with huge data and some complex SQL is 
written at the application logic, some analytical functions, union/intersect 
etc. clauses and also we have materialized views used at the DB level. There 
are some triggers and complex procedures as well.

Regards,

Inzamam Shafiq
Sr. DBA

From: Ben Chobot 
Sent: Friday, March 24, 2023 7:08 PM
To: Inzamam Shafiq 
Cc: pgsql-general@lists.postgresql.org 
Subject: Re: PostgreSQL vs MariaDB

Inzamam Shafiq wrote on 3/24/23 4:07 AM:
Hi Team,

Hope you are doing well.

Can someone please list pros and cons of MariaDB vs PostgreSQL that actually 
needs serious consideration while choosing the right database for large OLTP 
DBs (Terabytes)?

That's a very broad question, which will take far more effort to answer than 
most people are willing to provide.

I would suggest describing your specific use case and asking how well 
PostgreSQL will fit it. You clearly have a lot of data, for example, so is that 
distributed across many tables? Large blobs or lots of rows? Lots of inserts? 
Reads? Updates? Those sorts of things.

Maybe somebody on this PostgreSQL list might even know MariaDB well enough to 
compare and contrast the two for you.


Re: PostgreSQL vs MariaDB

2023-03-24 Thread Ron

What RDBMS is your data currently on?

On 3/25/23 01:15, Inzamam Shafiq wrote:

Hi Ben,

We have a complex running, and we will be having a lot of Insert, update 
and deletes. We have many partitioned tables with huge data and some 
complex SQL is written at the application logic, some analytical 
functions, union/intersect etc. clauses and also we have materialized 
views used at the DB level. There are some triggers and complex procedures 
as well.


Regards,

/Inzamam Shafiq/
/Sr. DBA/

*From:* Ben Chobot 
*Sent:* Friday, March 24, 2023 7:08 PM
*To:* Inzamam Shafiq 
*Cc:* pgsql-general@lists.postgresql.org 
*Subject:* Re: PostgreSQL vs MariaDB
Inzamam Shafiq wrote on 3/24/23 4:07 AM:

Hi Team,

Hope you are doing well.

Can someone please list pros and cons of MariaDB vs PostgreSQL that 
actually needs serious consideration while choosing the right database 
for large OLTP DBs (Terabytes)?


That's a very broad question, which will take far more effort to answer 
than most people are willing to provide.


I would suggest describing your specific use case and asking how well 
PostgreSQL will fit it. You clearly have a lot of data, for example, so is 
that distributed across many tables? Large blobs or lots of rows? Lots of 
inserts? Reads? Updates? Those sorts of things.


Maybe somebody on this PostgreSQL list might even know MariaDB well enough 
to compare and contrast the two for you.


--
Born in Arizona, moved to Babylonia.