thắc mắc Hỏi về tương lai của PostgreSQL ở VN.

Không xài MySQL nhảy qua MariaDB vẫn ổn, ông tác giả của MySQL clone thằng MariaDB, hàng free hoàn toàn.
Client library của mysql và mariadb như nhau mà, đều là sở hữu của oracle. Bây giờ ko biết mariadb có client library riêng chưa, và license thế nào.
Nói chung dính tới license, sợ rắc rối nên mấy tay to bỏ chạy hết.
 
Client library của mysql và mariadb như nhau mà, đều là sở hữu của oracle. Bây giờ ko biết mariadb có client library riêng chưa, và license thế nào.
Nói chung dính tới license, sợ rắc rối nên mấy tay to bỏ chạy hết.
MySQL license của nó là GPL, còn MariaDB hình như là LGPL. Nói chung MariaDB xài vô tư.
 
em thích Postgresql hơn chỗ có thêm mấy kiểu dữ liệu như JSON, array. Với em có đọc về cái MVCC của nó thì thấy khá hay. Một phần có thể do em tìm hiểu về PostgreSQL nhiều nên em thấy thích nó hơn :D
Json thì mysql 5.7+ cũng hỗ trợ rồi bác. Mà thực ra cái json n cũng là string thôi. Lưu vào db là string rồi lúc lấy ra thì thêm bước convert là được

Sent from vsmart Live via nextVOZ
 
postgre em thấy dump lởm hơn mysql nhiều hay do em ít sử dụng nhỉ? mysql dump xong restore em thấy chạy ngon chứ thằng postgre đôi lúc cả psql lẫn pg_restore đều không nhận bản dump chứ mysql thì chưa thấy bị bao giờ
 
Json thì mysql 5.7+ cũng hỗ trợ rồi bác. Mà thực ra cái json n cũng là string thôi. Lưu vào db là string rồi lúc lấy ra thì thêm bước convert là được

Sent from vsmart Live via nextVOZ
JSON của MySQL < 8 & MariaDB 10.4 chỉ là text string không có nhiều chức năng advanced như Postgres. Hiện tại thì không rõ đã có cải tiến thì hay chưa.

Bên Postgres nó phân ra là JSON (text string) và JSONB (binary). JSONB nó có DSL riêng, hỗ trợ indexing, hỗ trợ validation... Trong Postgres 15 sắp tới có thể dùng SQL để query trực tiếp trên JSONB.
 
postgre em thấy dump lởm hơn mysql nhiều hay do em ít sử dụng nhỉ? mysql dump xong restore em thấy chạy ngon chứ thằng postgre đôi lúc cả psql lẫn pg_restore đều không nhận bản dump chứ mysql thì chưa thấy bị bao giờ
Thường thì issue của dump nó phát sinh do permission, version. Postgres bản thân nó phức tạp hơn MySQL nhiều nên phải chú ý nhiều mấy thứ khác hơn.
 
Cách đây vài năm đi phỏng vấn
  • Him: em xài những RDBMS SQL nào rồi
  • Me: em xài nhiều loại lắm. Postgresql, MySQL, Oracle vs MS SQL
  • Him: em biết nó chúng khác gì nhau không?
  • Me: em thấy chúng chỉ khác nhau vài cái syntax 1 số câu lệnh đặc biệt, còn lại thì em query CRUD như nhau cả, chả khác gì. Khách hàng bảo dùng cái gì thì xài cái đấy

///
lần đó mình tạch TT
 
Cách đây vài năm đi phỏng vấn
  • Him: em xài những RDBMS SQL nào rồi
  • Me: em xài nhiều loại lắm. Postgresql, MySQL, Oracle vs MS SQL
  • Him: em biết nó chúng khác gì nhau không?
  • Me: em thấy chúng chỉ khác nhau vài cái syntax 1 số câu lệnh đặc biệt, còn lại thì em query CRUD như nhau cả, chả khác gì. Khách hàng bảo dùng cái gì thì xài cái đấy

///
lần đó mình tạch TT
Có khi tạch do cái khác thì sao fen. 😏
 
Chào các bác,
Em đã dùng MySQL khi học ở trên trường và đang dùng PostgreSQL khi đi làm, cá nhân em thấy PostgreSQL nhỉnh hơn (cá nhân em ạ, bác nào bên MySQL đừng blame em) nhưng mà khi tìm kiếm thử trên ITViec với từ khóa PostgreSQL ra được 21 jobs và MySQl ra 122 jobs, chênh lệch khá lớn. Em biết một phần lý do là vì các dự án từ ngày xưa được viết bằng MySQL cần maintain và do team mạnh về MySQL hơn nên chọn MySQL.
Các bác cho em hỏi trong tương lai (5-10 năm) PostgreSQL có phát triển mạnh ở VN không ạ? Em còn 1 năm nữa là ra trường nên muốn chuẩn bị tốt về stechstack để khi ra trường kiếm việc cho tiện ạ :D
Sở dĩ thím thấy job MySQL nó nhiều hơn do MySQL nó phổ biến hơn thôi. Chứ PostgreSQL nó mới nổi mấy năm gần đây. Nói chung 2 thằng này vẫn phát triển, cùng với các thằng khác nên không đáng lo ngại. Với lại ngoài Oracle ra không ai chỉ tuyển mỗi MySQL hay PostgreSQL đâu. Ít nhất là phải biết 1 cái, 2 cái thì càng tốt. Sau này đi làm đâu phải thích đc làm cái nào là làm đâu. Đầu tiên là phải theo khách hàng, 2 là theo thằng TechLead, Leader, ko biết thì tìm hiểu.
 
Thực ra bình thường không nhớ hết được trừ mấy ông DBA. Mình google ra link này https://developer.okta.com/blog/2019/07/19/mysql-vs-postgres
Để tóm gọn giúp bạn:
  • chọn cái nào có features đặc thù mà mình cần
  • chọn cái nào mà backend framework của bọn tích hợp tốt hơn
  • nếu không có thì 2 cái như nhau

Đặc thù
- PostgreSQL: là object-relation database (không phải pure RDBMS)
- concurrent index creation (non-blocking)
- partial index (index with condition)
- table inheritance
- function overloadding
- free, không cần mua license
- lưu json hoặc array data types

- MySQL: pure RDBMS
- nhanh hơn PostgreSQL nếu workload là read heavy
- replication nhanh hơn (ở logical layer thay vì physical layer như Postgres < 10)
- zero downtime upgrade (Postgres upgrade sau 10.x có thể near zero downtime upgrade)
 
Thực ra bình thường không nhớ hết được trừ mấy ông DBA. Mình google ra link này https://developer.okta.com/blog/2019/07/19/mysql-vs-postgres
Để tóm gọn giúp bạn:
  • chọn cái nào có features đặc thù mà mình cần
  • chọn cái nào mà backend framework của bọn tích hợp tốt hơn
  • nếu không có thì 2 cái như nhau

Đặc thù
- PostgreSQL: là object-relation database (không phải pure RDBMS)
- concurrent index creation (non-blocking)
- partial index (index with condition)
- table inheritance
- function overloadding
- free, không cần mua license
- lưu json hoặc array data types

- MySQL: pure RDBMS
- nhanh hơn PostgreSQL nếu workload là read heavy
- replication nhanh hơn (ở logical layer thay vì physical layer như Postgres < 10)
- zero downtime upgrade (Postgres upgrade sau 10.x có thể near zero downtime upgrade)
Thanks thím :)
 
Back
Top