PostgreSQL vs MySQL: So sánh hiệu năng trong truy vấn phức tạp và CCU lớn | Trần Quốc Huy - Wecommit

  Рет қаралды 85,418

Learning Database with Tran Quoc Huy

Learning Database with Tran Quoc Huy

Күн бұрын

#WecommitxTop1Percent #tranquochuy
Mục Tiêu: Trong video này tôi giúp sẽ giúp anh em so sánh được hiệu năng khi sử dụng Database PostgreSQL và MySQL đối với những truy vấn phức tạp
Ghi chú: Bạn có thể tham gia hành trình trở thành Top 1% những lập trình viên thành công nhất cùng tôi bằng cách đăng ký tham dự chương trình Từ điển tối ưu 100x hiệu năng.
Trong chương trình này, bạn sẽ thu được các giá trị như sau:
- Cực kỳ tự tin dù ở bất kỳ công ty nào.
- Nổi bật, có năng lực (không phải chỉ ở mỗi chuyên môn mà nhiều khía cạnh)
- Tăng kinh nghiệm vù vù từ nhiều bài toán thực tế (cách đặc biệt của tôi).
- Trở thành con người quyết liệt trong hành động, làm việc có chiến lược.
- Năng lực tối ưu cơ sở dữ liệu của bạn sẽ vượt trội so với hàng nghìn lập trình viên khác. Bạn sẽ thuộc Top 1% những người giỏi nhất.
Xem chi tiết chương trình của tôi ở đây: wecommit.com.v...
Bạn có thể xem các dự án mà tôi đã trực tiếp thực hiện tại đây: wecommit.com.v...
🎯 Một số Video khác bạn có thể xem
- Bí mật TOP 1% những lập trình viên giỏi nhất | Trần Quốc Huy Wecommit : • Bí mật TOP 1% những lậ...
- Thiết kế hệ thống Search Engine xử lý 100 tỷ Web Page (Google, Bing...) | System Design Wecommit: • Thiết kế hệ thống Sear...
- Cách Quora thiết kế cơ sở dữ liệu để đáp ứng 400 triệu người dùng: • Thiết kế Database đáp ...
- Bí quyết tìm lái xe của Uber: • Bí quyết tìm lái xe tạ...
- Hiểu toàn bộ kiến thức về PostgreSQL trong 1h30 phút: • Hiểu toàn bộ PostgreSQ...
- Học SQL Server trong 60 phút : • Học SQL Server trong 6...
- Học MongoDB trọn vẹn trong 1 giờ 30 phút: • Học MongoDB trọn vẹn t...
- Tìm hiểu về Vector Database - loại Database giúp Generative AI bùng nổ: • Loại Database giúp Gen...
📱 Nếu bạn muốn liên hệ với tôi:
Linkedin: / huytq
Facebook: / tranquochuy.toiuu
#WecommitxTop1Percent #mysql #toiuu100x #tranquochuy #wecommit #databasedesign #databaseperformance #databasetutorial #algorithm #datastructureandalgorithm #systemdesignwecommit #toiuucosodulieu #thietkecosodulieu #thietkehethong #toiuusql #cautrucdulieuvagiaithuat #postgresql #postgres #postgresqltutorial #databasetutorial #databasetutorials

Пікірлер: 193
@tranquochuywecommit
@tranquochuywecommit 4 күн бұрын
Gửi mọi người Group Telegream Wecommit Public Community : www.wecommit.com.vn/wecommitcommunity ,anh em có thể trao đổi những câu hỏi , vấn đề khi xem Video và kết nối với tôi trong Group nhé (trường hợp click trực tiếp bị lỗi thì ae copy link ra browser nhé)
@silentknight46
@silentknight46 3 ай бұрын
Hay quá, làm dev lâu năm giờ mới biết được những kiến thức này
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
cảm ơn em nhé
@tranquochuywecommit
@tranquochuywecommit Ай бұрын
Công thức tạo dựng sự nghiệp không giới hạn của tôi - TOP 1% SECRET: www.top1percentsecret.com/
@vjcspy
@vjcspy 27 күн бұрын
nói thế này thì dìm hàng postgresql quá. với cả kiến thức cũng SAI. Khi đã nói đến MVCC thì bản chất cả 2 thằng nó đều dùng chung 1 cách cả thôi. Trừ khi mysql không sử dụng innodb ví dụ như dùng myisam thì mới có chuyện ghi đè dữ liệu. Với cả không có chuyện nó phải index lại toàn bộ các row khác =)) Học lại kiến thức cơ bản đi anh ooi.
@tranquochuywecommit
@tranquochuywecommit 27 күн бұрын
xem phân tích và demo đi anh em, anh em học ngọn không học gốc rồi, mình phân tích, dẫn chứng cụ thể chứ có nói vu vơ đâu
@chuannguyen1686
@chuannguyen1686 3 ай бұрын
E học đc rất nhiều thứ từ trang của a, từ kiến thức chuyên môn cho tới tư duy trong công việc.
@AnhNguyen-we1wt
@AnhNguyen-we1wt Ай бұрын
Cảm ơn kiến thức rất bổ ích từ bạn, mình xin hỏi một câu: Vậy tại sao PostgreSQL lại làm điều tưởng chừng "ngu ngốc" như vậy khi UPDATE, có chăng lý do nào có lợi ở mặt khác nên PostgreSQL đã chọn thiết kế như thế?
@dongphim
@dongphim 3 ай бұрын
Quá hay nếu anh không nói ra thì có lẽ sẽ mất thêm nhiều năm nữa để hiểu cơ chế của MYSQL và POSTGRES. Cảm ơn anh, chúc anh nhiều sức khỏe.
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
người anh em đăng ký kênh để nhận được thông tin sớm nhất của các video sắp tới nhé
@chieule4999
@chieule4999 3 ай бұрын
Em cảm ơn anh ạ. Anh giải thích rất chi tiết và giúp em rút ngắn được thời gian tìm hiểu và học tập về database rất nhiều
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
chào mừng em đến với kênh youtube của anh.
@duyetpham7924
@duyetpham7924 3 ай бұрын
Hay quá, cảm ơn a, e hiểu hơn vì sao Big data open source họ hay lấy Postgresql làm gốc
@dongpham6878
@dongpham6878 3 ай бұрын
Hay quá anh ạ. Mong anh ra nhiều videos hơn nữa nhé. Cảm ơn anh rất nhiều ạ
@HungNguyenVan-dd9qm
@HungNguyenVan-dd9qm 3 ай бұрын
Dev hơn 10 năm giờ mới nắm được kiến thức này. Cảm ơn anh ạ
@chuviet7865
@chuviet7865 3 ай бұрын
kiến thức quá tuyệt vời. cảm ơn đã chia sẻ. so sánh giữa PostgreSQL với SQL Server đi a.
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
Đang có 1 loạt ý tưởng, xem so sánh cái nào anh em ah 1. PostgreSQL vs Oracle 2. PostgreSQL vs MongoDB 3. SQL Server vs Oracle 4. MySQL vs Oracle
@quanghungnguyen3018
@quanghungnguyen3018 3 ай бұрын
​​@@tranquochuywecommit anh làm so sánh 3.mssql với oracle trước đi ạ
@hieuvan5278
@hieuvan5278 3 ай бұрын
Kiến thức quá hay, xem anh giải thích thấy cuốn thật sự :))
@Hanako67198
@Hanako67198 2 ай бұрын
e có 1 thắc mắc về clip oracle a có nói mySQL có tempdb chứ không có undo anh
@willnguyendev
@willnguyendev 3 ай бұрын
Có thể cho mình hỏi dùng phần mềm gì để present bằng apple pen ko ah?
@nguyenthethu7631
@nguyenthethu7631 3 ай бұрын
Anh Huy cho em hỏi tại sao Postgre lại dùng cơ chế tạo thêm dòng trong mvcc. Rõ ràng đây là một lỗ hổng trong hiệu năng của hệ thống. Postgre làm như đổi lại được điều gì?
@luanpham9114
@luanpham9114 3 ай бұрын
Mặc dù việc tạo thêm dòng trong MVCC có thể gây ra chi phí về không gian lưu trữ và yêu cầu thực hiện VACUUM để duy trì hiệu suất, lợi ích mà MVCC mang lại trong việc quản lý đồng thời và đảm bảo tính nhất quán dữ liệu vượt trội hơn nhiều so với các hạn chế này. Đây là lý do tại sao PostgreSQL chọn cơ chế MVCC, mang lại một hệ thống quản lý cơ sở dữ liệu mạnh mẽ và hiệu quả cho các ứng dụng hiện đại. 1. Tính nhất quán mà không khóa (Lock-free Consistency) MVCC cho phép các giao dịch đọc và ghi cùng lúc mà không cần chặn nhau. Điều này đạt được bằng cách tạo ra các phiên bản khác nhau của cùng một dòng dữ liệu: Đọc không khóa: Các giao dịch đọc có thể đọc dữ liệu phiên bản cũ ngay cả khi có các giao dịch ghi đang diễn ra, miễn là dữ liệu này phù hợp với thời gian snapshot của giao dịch. Ghi không chặn: Các giao dịch ghi có thể tạo phiên bản mới của dòng dữ liệu mà không làm gián đoạn các giao dịch đọc đang tồn tại. 2. Isolation Levels và Snapshot Isolation PostgreSQL cung cấp các mức độ cô lập khác nhau để quản lý sự cô lập của giao dịch, từ Read Uncommitted đến Serializable: Snapshot Isolation: Mỗi giao dịch nhìn thấy một "snapshot" của cơ sở dữ liệu tại thời điểm nó bắt đầu. Điều này giúp giảm hiện tượng đọc bẩn (dirty reads) và đọc không lặp lại (non-repeatable reads), cải thiện tính nhất quán mà không cần khóa nhiều. 3. Giảm xung đột (Conflict Reduction) MVCC giảm xung đột giữa các giao dịch đọc và ghi. Trong cơ chế khóa truyền thống, giao dịch đọc phải chờ cho giao dịch ghi hoàn thành, dẫn đến tình trạng nghẽn cổ chai. Với MVCC, nhiều giao dịch có thể diễn ra đồng thời, cải thiện hiệu suất tổng thể. 4. Lợi ích của Vacuum PostgreSQL sử dụng cơ chế VACUUM để dọn dẹp các phiên bản cũ của dòng dữ liệu: Dọn dẹp và tái sử dụng không gian: VACUUM xóa bỏ các phiên bản không còn cần thiết, tái sử dụng không gian đã được giải phóng. Phân mảnh giảm thiểu: Mặc dù VACUUM cần tài nguyên, nó giúp duy trì hiệu suất cơ sở dữ liệu bằng cách giảm phân mảnh và giữ cho kích thước cơ sở dữ liệu không tăng quá mức. 5. Độ tin cậy và khôi phục (Reliability and Recovery) MVCC giúp PostgreSQL khôi phục cơ sở dữ liệu một cách dễ dàng hơn: Khôi phục sau sự cố: Nếu hệ thống gặp sự cố, các giao dịch chưa hoàn thành sẽ không ảnh hưởng đến các phiên bản dữ liệu đã được xác nhận (committed). Tăng khả năng phục hồi: Cơ chế này giúp bảo vệ dữ liệu khỏi các lỗi phần cứng và phần mềm bằng cách duy trì nhiều phiên bản dữ liệu. 6. Tối ưu hóa hiệu suất cho các tải công việc cụ thể MVCC có thể tối ưu hóa cho các ứng dụng cụ thể: Ứng dụng nhiều đọc: Với các ứng dụng có tỷ lệ đọc cao, MVCC cho phép các giao dịch đọc thực thi nhanh chóng mà không bị chặn bởi các giao dịch ghi. Ứng dụng nhiều ghi: MVCC có thể xử lý tốt các ứng dụng ghi nhiều mà không ảnh hưởng nhiều đến hiệu suất đọc.
@PhatNguyen-eq5tm
@PhatNguyen-eq5tm 3 ай бұрын
Nếu cập nhật mà thêm record(đối với Posgres) thì thì sẽ lấy-gán ID như thế nào anh? Có giống như lúc insert? VÍ dụ last id = 100, sau đó 100 transaction update và không có cái nào commit thì id.nextVal() lúc này là 101 hay 201?
@realestatewebsingapore7276
@realestatewebsingapore7276 Ай бұрын
Anh em dev giờ chỉ có tập trung học tiếng Anh cho tốt.. rồi đọc tài liệu gốc tiếng Anh luôn.. chứ nghe kiểu này dịch ra ko bao giờ chính xác
@phamtienthanh445
@phamtienthanh445 3 ай бұрын
cảm ơn bác chia sẻ nhé ạ 😀
@bongakinhien2340
@bongakinhien2340 3 ай бұрын
Vậy Postgre phù hợp với các bài toán thực tế nào anh nhỉ? Với hệ thống ERP doanh nghiệp khoảng 100 user có ổn không? Cảm ơn anh
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
hệ thống mà nhỏ thì dùng loại nào cũng được anh em nhé
@bongakinhien2340
@bongakinhien2340 3 ай бұрын
@@tranquochuywecommit Vậy Postgre sẽ không ổn nếu số lượng concurrent user từ bao nhiêu trở lên ạ. Hệ thống ERP ạ
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
@@bongakinhien2340 xem kỹ phần PostgreSQL và MySQL phù hợp cái nào ở trong video nhé anh em.
@thiphung4995
@thiphung4995 3 ай бұрын
Cảm ơn anh ạ!
@pinterest1141
@pinterest1141 3 ай бұрын
hay quá sếp ơi, kênh nội dung chất lượng
@aken2802
@aken2802 3 ай бұрын
Cái tiến trình vancum mình có thể setting thời gian nó chạy được không nhỉ ! ví dụ set vao bản đêm ko phải giờ cao điểm để bớt giành tài nguyên của table
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
nếu nói chi tiết hơn về vacuum trong postgresql thì nó có 2 kiểu: tự động và thủ công. Anh em có thể điều chỉnh chiến lược và thời gian để tiến trình vacuum ảnh hưởng ít nhất tới hiệu năng.
@futhedude4848
@futhedude4848 3 ай бұрын
note ở đây để t2 quay lại ngâm cứu ạ.
@futhedude4848
@futhedude4848 3 ай бұрын
video start: 1:10
@hoangbon2806
@hoangbon2806 3 ай бұрын
sao nhóm vote làm về SQL vs Oracle rồi sao lại làm video này trước vậy sếp?
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
Kết quả theo số đông người chọn anh em ah. Vote trên nhiều nhóm + KZbin tab cộng đồng. Anh em xem trên tab cộng đồng youtube sẽ thấy đa số anh em chọn PostgreSQL vs MySQL. Video sau mình có làm về Oracle vs SQL Server đấy
@thoanguyenthi7135
@thoanguyenthi7135 2 ай бұрын
Các bạn tải cao cùng làm xao luong khác nhau các bạn
@LongLưuĐạt
@LongLưuĐạt 3 ай бұрын
chất
@quang.luu.179
@quang.luu.179 3 ай бұрын
👍👍👍
@chungtran2059
@chungtran2059 3 ай бұрын
"My SQL, SQL" tôi nghĩ nên phát âm chính xác hơn
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
cảm ơn người anh em đã bỏ qua phần phát âm để ủng hộ nội dung video nhé
@n4.nguyenmanhcuong8
@n4.nguyenmanhcuong8 3 ай бұрын
Mình nghĩ là ko cần thiết. Mình thấy phát âm như vậy dễ nghe hơn
@Phamviet008
@Phamviet008 3 ай бұрын
@@n4.nguyenmanhcuong8làm tech mà nói sai tên công nghệ thì hơi buồn cười ấy
@n4.nguyenmanhcuong8
@n4.nguyenmanhcuong8 3 ай бұрын
@@Phamviet008 Chả có gì buồn cười cả bạn ạ. Chúng ta là người Việt, đều nói tiếng Việt, video cũng dành cho người Việt. Mấy cái đấy nói lái sang tiếng Việt cho dễ nghe thì không có vấn đề gì cả bạn ạ. giống như bạn nói tiếng Anh với người nước ngoài thì ví dụ tên người. bạn sẽ đọc rõ chữ "Cường", hay sẽ nói lái sang là "Cuong" ?
@namnguyenpt
@namnguyenpt 3 ай бұрын
Cảm ơn anh Huy, kiến thức rất chất lượng, ngắn gọn xúc tích, hiểu luôn được bản chất vấn đề và có tư duy đánh giá lựa chọn database phù hợp. Tiện đây em có bổ sung thêm cho postgres database có cơ chế gọi là "Heap-Only Tuples (HOT)" giúp tái sử dụng lại các vùng dữ liệu cấp cũ, giúp giảm kích thước bảng, index và giảm gánh nặng cho vacuum (vacuum giống như 1 cô dọn vệ sinh trong trường học ). Nhờ "HOT" giúp các hạn chế mvcc của postgres được cải thiện khá nhiều ạ.
@duongxuana414
@duongxuana414 3 ай бұрын
Cảm ơn anh Huy giải thích rất chi tiết từ kiến trúc của 2 loại database ạ. Với hệ thống write nhiều và có nhiều index thì hiệu năng postgreSQL bị ảnh hưởng, tuy nhiên với những câu lệnh phức tạp thì để phân tích và đưa ra execution plan thì postgreSQL mạnh hơn MySQL. Do đó với hệ thống nhỏ, truy vấn đơn giản thì dùng ông nào cũng được, với hệ thống cần truy vấn những câu lệnh phức tạp thì PostgreSQL ngon hơn.
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
hiểu từ kiến trúc anh em sẽ rất tự tin và nhớ lâu. Một ngày tuyệt vời nhé em
@VV1-s2r
@VV1-s2r 3 ай бұрын
@@tranquochuywecommit "hệ thống write nhiều và có nhiều index" thì MySQL có cơ chế table riêng ngon hơn, vậy tại sao postgres ko sử dụng cơ chế tương tự? phải chăng làm thế thì nó ko phân tích và optimize đc câu query cho insert/update?
@Huynguyen-ew1ep
@Huynguyen-ew1ep 3 ай бұрын
Vì trong innoDB mysql thì index và dữ liệu là 1 thể thống nhất .Còn postgres thì index và dữ liệu lưu riêng biệt (mysql các bảng nó lưu trong 1 file có tên là .ibd còn postgresql thì phân chia phức tạp hơn và qua 1 thứ gọi là OID) Khi 1 truy vấn đi vào , cơ chế index tách riêng giúp postgresq có thể kết hợp các loại chỉ mục khác nhau trong câu truy vấn tốt hơn và không bị hạn chế I/O. Còn mysql thì ngược lại do index và dữ liệu là 1 thể thống nhất -> khi bạn search thực tế là nó quét luôn dòng dữ liệu và index 1 lúc làm tăng I/O cũng như không thể kết hợp các index với nhau được ( vì muốn kết hợp thì bắt buộc phải load toàn bộ data) Do vậy khi write -> cơ chế chỉ mục và dữ liệu là 1 thể thống nhất giúp cho việc nó chỉ write 1 lần duy nhất index bị ảnh hưởng thôi . Ngược lại khi tách dữ liệu và index , thì write -> bắt buộc phải write cho toàn bộ index . Đó là lí do tại sao postgresql bạn có thể làm việc tốt với dữ liệu json , vì bản chất nó chỉ tốn I/O cho việc load các dữ liệu có index thôi . Mysql thì nó phải load luôn cả dòng dữ liệu chứa json , điều này làm tăng I/O . Tóm tắt : Mysql khi load secondery index -> đối chiếu với primary key -> ra kết quả (tốn x2 công việc) Postgresql : load 1 lần duy nhất và không có khái niệm secondery index (bản chất là không có khóa chính) -> đẩy vào heap
@futhedude4848
@futhedude4848 3 ай бұрын
@@Huynguyen-ew1ep note ở đây để t2 quay lại ngâm cứu ạ.
@Huynguyen-ew1ep
@Huynguyen-ew1ep 3 ай бұрын
@@futhedude4848 Ok nha bạn . Nếu mình có phát biểu sai gì đó thì cho mình thêm thông tin nha . Cái này mình cũng chỉ nghiên cứu sơ qua có thể không chính xác ở các bản version khác nhau
@thanhnamdatabases8277
@thanhnamdatabases8277 2 ай бұрын
chạy 1 query là thế mạnh của thằng này thì thằng kia chẳng yếu thế hơn, dùng 1 query để chứng minh thằng kia không viết lại query thì chịu rồi =))
@vulam1821
@vulam1821 3 ай бұрын
A có thể chia sẻ nguồn bài viết được ko? Chưa từng nghe về ref column trong mvcc Khi update thì pg sẽ tạo new row version với transaction id, xmin,xmax Sở dĩ transaction khác ko đọc dc uncommited data là vì transaction khác read commited data từ snapshot trong quá khứ, ko phải snapshot mà current transaction đang dùng
@PLCTrainingforBeginners
@PLCTrainingforBeginners 3 ай бұрын
Thảo nào nhiều hệ thống lớn họ dùng Postgre
@VuKhacDiep084
@VuKhacDiep084 10 күн бұрын
Hay thật, mà nhạc to quá nghe khó tập trung dc 🎉
@gianduongnguyen1590
@gianduongnguyen1590 3 ай бұрын
cảm ơn anh ạ, anh cho em hỏi làm sao để anh tìm hiểu được những thứ như này vậy ạ, danh đọc source code, đọc docs hay làm gì khác vậy ạ
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
mọi thứ bắt nguồn từ sự tò mò và mong muốn tìm hiểu sâu trong lĩnh vực này em ạ. Anh học và đọc rất nhiều. Đọc documents là điều bắt buộc rồi, ngoài ra anh học từ nhiều thứ trong quá trình làm các dự án và nghiên cứu các vấn đề gặp phải trong dự án. Anh cũng có 1 cộng đồng chia sẻ các dự án với nhau, nên nhiều cơ hội để tìm hiểu.
@cunu1000
@cunu1000 Ай бұрын
Cảm ơn kiến thức a chia sẽ 🙏🙏🙏
@hunglai1419
@hunglai1419 14 күн бұрын
Ooooooooooooooooooooooooooooooooooo 0:36
@ichngohuy8775
@ichngohuy8775 2 ай бұрын
Không biết a có chuyên đề về Oracle?
@tranquochuywecommit
@tranquochuywecommit 2 ай бұрын
có đó anh em, trên kênh này luôn
@chauvuluan1926
@chauvuluan1926 3 ай бұрын
Cảm ơn anh , Video rất hay , anh hãy so sánh PostgreSQL vs Oracle đi anh .
@ThangNguyen-ic4ej
@ThangNguyen-ic4ej 3 ай бұрын
Hmm nếu thế trong MySQL, khi có 2 người cùng update mà chưa commit, vd như em update "Huy -> 1800", anh update "Huy -> 1500" thì lúc đó bảng sẽ lưu trữ cả 2 update mà chưa commit này như thế nào ạ?
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
2 ông cùng update 1 bản ghi đúng không em. Trường hợp đấy thì database sẽ sử dụng cơ chế LOCK. Người đầu tiên gõ lệnh UPDATE thì sẽ được thực hiện, ông thứ 2 thì bị LOCK, phải chờ ông đầu tiên update xong (commit hoặc rollback) thì mới được làm tiếp
@ThangNguyen-ic4ej
@ThangNguyen-ic4ej 3 ай бұрын
Up@@tranquochuywecommit Với nếu thế thì rất dễ xảy ra deadlock. Vd như có 2 câu lệnh Update của 2 người khác nhau: - Transaction 1: "Update bản ghi 1 Update bản ghi 2" - Transaction 2: "Update bản ghi 2 Update bản ghi 1" Trường hợp nhiều CCU thì có khả năng ô thứ 1 get dc lock của bản ghi 1, và ô thứ 2 get dc lock của bản ghi 2. Nếu thế thì deadlock xảy ra r mà nhỉ?
@HoanDuongVan-kd7ct
@HoanDuongVan-kd7ct 2 ай бұрын
Đấy cũng là yếu điểm của bọn này so với oracle phải k anh :))
@huynhat6252
@huynhat6252 Ай бұрын
hay quá
@LừCư-p2l
@LừCư-p2l 29 күн бұрын
😢😢😮😢😢. g
@NguyenQuang-vi9su
@NguyenQuang-vi9su 3 ай бұрын
Cũng từng tìm hiểu để xem thì cũng chỉ biết là postgres không nên sử dụng vào trong trường hợp ghi nhiều với các bài test chứ cũng chưa hiểu rõ vì sao. nay thấy video giải thích của anh rõ luôn
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
đi từ kiến trúc thì anh em sẽ thấy mọi thứ rất rõ ràng, vì thế anh luôn chia sẻ mọi thứ dưới góc độ này. Cảm ơn em đã ủng hộ video của anh nhé
@NguyenQuang-vi9su
@NguyenQuang-vi9su 3 ай бұрын
@@tranquochuywecommit có video của a là hiểu rõ vấn đề, e dùng nhiều về mysql cũng đã cài posgres bài toán to nên chưa gặp vấn đề về dữ liệu để phải suy nghĩ lựa chọn. với lại cái pgadmin quản lý đang hơi rườm rà.
@TruongCaoXuan
@TruongCaoXuan 3 ай бұрын
Việc chọn giữa MySQL và PostgreSQL phụ thuộc vào yêu cầu cụ thể của ứng dụng và môi trường sử dụng. -> Chọn MySQL trong trường hợp xây dựng một hệ thống OLTP như ứng dụng web cần hiệu suất cao và dễ quản lý, hoặc nếu ứng dụng của bạn có lượng truy vấn ghi (write) nhiều hơn đọc (read). -> Chọn PostgreSQL trong trường hợp xây dựng hệ thống OLAP như Data warehouse để xử lý các truy vấn đọc (read) phức tạp.
@NhanNguyen-ei7tr
@NhanNguyen-ei7tr 3 ай бұрын
Postgress cũng vẫn là OTLP, OLAP em nghĩ nên chọn 1 csdl chuyên OLAP anh ạ.
@futhedude4848
@futhedude4848 3 ай бұрын
note ở đây để t2 quay lại ngâm cứu ạ.
@tiendang5149
@tiendang5149 3 ай бұрын
1 video cực kì chất lượng, cảm ơn anh đã chia sẻ
@tridangvan5159
@tridangvan5159 3 ай бұрын
Kiến thức quá hay anh ơi. Cảm ơn ah đã chia sẻ ạ
@TranMai-ri8pc
@TranMai-ri8pc 2 ай бұрын
bên e dùng odoo, sao vẫn thấy tih thoảng họ lên lịch vaccum thủ công nhỉ @@, theo video trên thì e đang nghĩ vaccum là tự động :D
@nguyenduyuc6889
@nguyenduyuc6889 2 ай бұрын
Cảm ơn anh đã chia sẻ các kinh nghiệm phong phú, tiện đây em muốn hỏi là anh có thể thực hiện bài đánh giá cho SurrealDB, MongoDB và ScyllaDB không ạ?
@vietronaldo23w
@vietronaldo23w 3 ай бұрын
Đầu tiên e cảm ơn a vì những chia sẻ bổ ích của a. e có 1 câu hỏi ạ. Mysql: theo a nói thì những thằng khác (nhưng thằng không thực hiện lệnh update) thì sẽ lấy dữ liệu trong vùng undo đúng k ạ. vậy thì lúc không có thằng nào update thì vùng undo đấy nó có tồn tại không a. - nếu có thì tức là mỗi câu lệnh select nó đều phải check trước liệu data có trong undo trước đúng không ạ. - nếu không phải lúc nào cũng tồn tại thì làm sao để nó phân biệt được lúc nào cần check trong undo lúc nào query trực tiếp trong bảng thực ạ. Lần nữa cảm ơn a và nếu được a có thể đi kèm với documents về mvcc của postgres và mysql được không ạ.
@phivunguyen6536
@phivunguyen6536 3 ай бұрын
Cảm ơn anh Huy rất nhiều, kiến thức rất chất lượng ạ 😊
@theanhhoang5866
@theanhhoang5866 Ай бұрын
Video hay quá ạ Anh làm tiếp về MongoDB và Cassandra được không ạ
@vankhanhnguyen2514
@vankhanhnguyen2514 3 ай бұрын
Cảm ơn a Huy về bài chia sẻ, rất hay và áp dụng được liền vào các bài toán thực tế
@ThanhTran-gm6cy
@ThanhTran-gm6cy Ай бұрын
những kiến thức có lẽ chỉ có trong những khóa học phải bỏ tiền ra mua, thì lại miễn phí ở kênh của anh. thật sự cảm ơn anh rất nhiều
@tiepnguyenngoc2526
@tiepnguyenngoc2526 Ай бұрын
tôi đăng ký ba nick cho ông rồi đấy bởi vì kênh quá hay
@nguyenphucanh7523
@nguyenphucanh7523 3 ай бұрын
kiến thức của a rất bổ ích. em muốn hỏi thêm: microsoft SQL server thì sao a
@tachinguyen4dev
@tachinguyen4dev 3 ай бұрын
anh có thể làm bài so sánh MVCC postgresql với MSSQL không, bỏ qua vấn đề chi phí. Xin cám ơn anh
@damvv.ptit12
@damvv.ptit12 3 ай бұрын
Xem những video của anh Huy như nghe một câu chuyện, xem một bộ phim mà mình yêu thích. Muốn nuốt từng dòng đừng đoạn 1 😊😊😊. Kiến thức chuyên sâu và năng lượng chia sẻ tích cực làm người nghe phát sướng. Cảm ơn anh rất nhiều, cảm ơn anh đã chia sẻ.🤩🤩🤩
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
đọc bình luận của chú thú vị không kém. Cảm ơn Đam nhé
@damvv.ptit12
@damvv.ptit12 3 ай бұрын
@@tranquochuywecommit em luyện thành 1 chuyên gia cmt dạo được đấy a nhỉ
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
@@damvv.ptit12 được đấy chú, đã làm gì thỉ phải Top 1% trong việc mình làm. Hiệu quả đều đến cả
@harry-vu
@harry-vu 3 ай бұрын
hay quá ạ làm bao lâu rồi giờ mới được khai sáng ạ. Cảm ơn a đã chia sẻ những kiến thức chất lượng ạ 😁😁
@vuduchong
@vuduchong 3 ай бұрын
nghe cao thủ khác bọt thật, quá hay.
@oneprofun
@oneprofun 2 ай бұрын
mariadb cười nhẹ :)) lúc nào select * không điều kiện và ra hàng nghìn rows thậm chí hàng chục nghìn rows ấy thì lúc đó mới biết ai hơn ai.
@minhnguyenba7905
@minhnguyenba7905 2 ай бұрын
Giải thích kỹ hơn được không bạn
@solution-archiect
@solution-archiect 3 ай бұрын
anh Huy ơi, anh xài phần mềm gì để vẽ trên Ipad và record trực tiếp vậy ạ? Em đang muốn làm video kiểu như vậy.
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
goodnotes với obs anh em nhé. Anh em có thể kết bạn với tôi (thông tin trong phần bình luận), có gì giúp được tôi giúp cho
@solution-archiect
@solution-archiect 3 ай бұрын
@@tranquochuywecommit dạ vâng, em cảm ơn anh Huy nhiều.
@appornistudio2767
@appornistudio2767 3 ай бұрын
cho mình xin tên cái đèn chụp cao cao với nhé. Nhìn đẹp quá.
@ytnavi-m2h
@ytnavi-m2h 3 ай бұрын
So sánh thêm vs Oracle đi Huy
@grabtv4211
@grabtv4211 3 ай бұрын
A dùng phần mềm gì vẽ đẹp thế ạ ?
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
goodnotes anh em nhé
@HungHoang-di5gh
@HungHoang-di5gh 2 ай бұрын
Anh ơi không biết anh có thể làm về Apache Cassandra được không ạ
@tranquochuywecommit
@tranquochuywecommit 2 ай бұрын
em mong đợi nội dung nào trong đó?
@trunglehuynh
@trunglehuynh 3 ай бұрын
Video rất hay bạn cho mình hỏi, Nếu bản index cùng chỉ về 2 địa chỉ, ví dụ Hoàng -> [A, D], thì làm sao PostgreSQL biết phải sử dụng cái nào? Cảm ơn
@ngocanhnguyencong6854
@ngocanhnguyencong6854 2 ай бұрын
nó theo transaction mà bạn.
@trandungguitar3796
@trandungguitar3796 3 ай бұрын
Ông qua bên thuế làm csdl giúp cái, chứ nhiều ng tồn tại 2 mst mà lâu mới phát hiện ra
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
tôi quen anh em quản lý cơ sở dữ liệu bên đấy đấy, anh em có cần tôi kết nối cho không :))
@spacex92
@spacex92 3 ай бұрын
Thanks anh, PostgreSQL vs MySQL là những CSDL rất phổ biến và đặc biệt là miễn phí, do vậy trong các cty ae DEV thường làm từ a-z, rất cần những kiến thức hữu ích như vậy. Vote 5* cho video này.
@nhatnguyenhuu7822
@nhatnguyenhuu7822 3 ай бұрын
Em có thắc mắc là khi câu lệnh SQL của em không thay đổi trong các lần chạy tiếp theo, nhưng mà lúc sau em đánh Index trên bảng cần truy vấn, thì việc phân tích chiến lược thực thi có được phân tích lại không ạ? Em cảm ơn!
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
khi em bổ sung các thông tin mới, ví dụ như Index mà em nói, chiến lược thực thi sẽ được cân nhắc, đánh giá lại. Tuy nhiên việc lựa chọn vẫn dựa trên Cost ông nào thấp nhất, không phải cứ đánh Index là ngon. Chính vì thế, anh em lập trình lúc đánh index xong phải kiểm tra chiến lược thực thi xem câu lệnh nó có dùng được không nhé.
@trinhle-sm2fu
@trinhle-sm2fu 3 ай бұрын
Chào anh Huy cho em hỏi vậy nếu hệ thống vừa phải ghi liên tục và truy vấn phức tạp thì nên dùng thằng nào hay có cách xử lý khác ạ
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
Phải xem trong 2 cái đấy thì cái nào là chủ đạo, đâu là nghiệp vụ quan trọng nhất. Tư duy 80-20 thôi anh em, tập trung cho 20% quan trọng nhất
@namminh4336
@namminh4336 3 ай бұрын
So sánh Oracle luôn anh ạ
@baudeejay8592
@baudeejay8592 3 ай бұрын
Anh dùng ứng dụng nào vẽ thế anh ?
@tuanhiepnguyen2376
@tuanhiepnguyen2376 3 ай бұрын
Em cảm ơn vì video hay của anh, rất chi tiết rõ ràng dễ hiểu ,em có câu hỏi về mysql khi không may chạy lệnh deleted all các bản ghi trong bảng cần back lại thì làm thế nào ạ
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
Delete và đã commit rồi ah anh em? Trường hợp này thì nguyên tắc đầu tiên vẫn luôn là câu hỏi "có bản backup không?"
@huypham2872
@huypham2872 3 ай бұрын
So sánh Sql vs Oracle đi anh
@ngocvananhly8305
@ngocvananhly8305 3 ай бұрын
Nghe kinh thanh sach a mốt
@mtpcess
@mtpcess 3 ай бұрын
Có db nào kết hợp xử lý index ngon của mysql với statics sql ngon của postgres không anh
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
xin giới thiệu anh em: Oracle database
@Huynguyen-ew1ep
@Huynguyen-ew1ep 3 ай бұрын
Video có tiếng cạch cạch khá khó chịu đó anh
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
cảm ơn em đã góp ý, anh sẽ để ý điều chỉnh đợt video tới nhé
@duyanhnguyen1562
@duyanhnguyen1562 3 ай бұрын
Cảm ơn anh về bài chia sẻ này, nó rất hay và giúp em hiểu ra một vài vấn đề của dự án em đang làm. Tuy nhiên em có 1 câu hỏi đó là khi mà postgres thêm 1 dòng mới khi chạy câu lệnh update thì đối với bảng có id là unique thì không biết là nó có vi phạm cái unique này không bởi như em thấy trong vd của anh là bản ghi thêm mới khi đó có id là y hệt bản ghi cũ. Mong sớm nhận được phản hồi từ anh ạ :D
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
không hề vi phạm gì em nhé. Đây là cơ chế xử lý ngầm của Database. Unique của em là ở phía logic thôi.
@duyanhnguyen1562
@duyanhnguyen1562 3 ай бұрын
Dạ vâng ạ! Cảm ơn anh nhiều nhé 😁
@tuancuong92
@tuancuong92 3 ай бұрын
Cám ơn anh, em đang từ mongo muốn quay lại đào sâu nghiên cứu 2 ông này thì lại gặp được video của anh đúng lúc 😂
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
Anh có cả video mysql full và postgres full trên kênh này đấy. Nếu em muốn nghiên cứu có thể xem 2 video này, nó tiết kiệm nhiều thời gian đọc tài liệu cho em.
@quanghungnguyen3018
@quanghungnguyen3018 3 ай бұрын
Cảm ơn anh❤. Anh có thể so sánh giữa 2 loại database trả phí là MSSQL và Oracle được không ạ? Với các hệ thống quản lý dữ liệu lớn thì em thấy các công ty ở Việt Nam dùng Oracle nhiều hơn MSSQL. Có phải vì Oracle tối ưu về mặt chi phí hơn không ạ?
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
Oracle đắt hơn đấy, nhưng nó có những vấn đề quan trọng hơn chi phí nhiều lần. Video tới anh sẽ so sánh 2 loại này nhé
@quanghungnguyen3018
@quanghungnguyen3018 3 ай бұрын
@@tranquochuywecommit Vâng, em cảm ơn anh ạ
@HaTrungPham-zh8ht
@HaTrungPham-zh8ht 2 ай бұрын
Cảm ơn bạn!
@nhansoftech
@nhansoftech 3 ай бұрын
Nói luôn cho đủ bộ a nhờ. thêm SQL Server nữa
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
sắp ra tiếp video oracle và sql server anh em nhé, ngay video kế tiếp
@_DuongMinhLong
@_DuongMinhLong 3 ай бұрын
:))) phải giỏi và hiểu sâu cỡ này ms đúng là chuyên gia anh ơiii
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
Cảm ơn Long nhé
@Sun_sun_19
@Sun_sun_19 3 ай бұрын
Anh ơi, có video trình bày về database không ạ? Em chưa hiểu về Database ạ
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
em có thể xem 1 video full course về database bất kỳ của anh trên kênh này. Nếu mới bắt đầu em nên xem Mysql full course trên kênh nhé
@Sun_sun_19
@Sun_sun_19 3 ай бұрын
@@tranquochuywecommit em cảm ơn anh nhiều ạ
@some1here0
@some1here0 3 ай бұрын
nice sharing
@AnhemtaoMacao
@AnhemtaoMacao 3 ай бұрын
sinh viên năm 3 xem có sớm quá không ^^
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
anh có những anh em năm 3 đã tham gia chiến đấu rồi. Làm công nghệ không có gì làm sớm nếu tăng công lực cả em ạ. Càng biết sớm càng ngon thôi.
@LearningEverything1001
@LearningEverything1001 3 ай бұрын
sự khác biệt giữa coder giỏi và kinh nghiệm ở video này , thks a
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
cảm ơn người anh em
@hongchungnguyen9254
@hongchungnguyen9254 3 ай бұрын
Cơ chế này có đại diện cho sql và nosql ko anh
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
mỗi loại database sẽ có các cơ chế riêng. Oracle, MySQL, PostgreSQL, SQL Server tuy là cùng RDBMS nhưng mỗi loại nó có các kiến trúc sẽ khác nhau đôi chút. NoSQL thì cũng phải xét kiến trúc riêng anh em ạ
@TrongNguyen-yu1sm
@TrongNguyen-yu1sm 3 ай бұрын
Phân tích chất lượng quá anh ơi, cảm ơn anh
@mychannel-fo4fv
@mychannel-fo4fv 3 ай бұрын
nice a
@buikha2011
@buikha2011 3 ай бұрын
Kênh phát triển nhanh quá, chúc mừng anh Huy
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
cảm ơn chú nhé
@skybita
@skybita 3 ай бұрын
Giá trị, cảm ơn anh
@Thit-Rang-Chay-Canh
@Thit-Rang-Chay-Canh 3 ай бұрын
Dùng cho các hệ thống monitor như Zabbix thì dùng loại nào sẽ phù hợp hơn vậy ae?
@dangkiena3
@dangkiena3 3 ай бұрын
Postgresql timescaleDB
@Thit-Rang-Chay-Canh
@Thit-Rang-Chay-Canh 3 ай бұрын
@@dangkiena3 Mới đọc keyword thôi đã thấy sáng rồi, tks bạn!
@BackendNestJs
@BackendNestJs 3 ай бұрын
em chào anh ạ , mong anh ra thêm video về cách làm mô hình master-slave của postgres , em cảm ơn ạ
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
okie em, nếu nhiều người cùng cần anh sẽ làm nhé
@futhedude4848
@futhedude4848 3 ай бұрын
@@tranquochuywecommit +1 ạ
@NhanNguyen-xb5cn
@NhanNguyen-xb5cn 3 ай бұрын
hehe like + cảm ơn a Huy trước rồi xem
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
woa, quá nhiệt tình luôn. Cảm ơn anh em nhé
@Urgea
@Urgea 3 ай бұрын
hay
@phuccom3296
@phuccom3296 3 ай бұрын
anh làm về oracle đi anh
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
video ngay sau đây có nội dung oracle đó em
@quangphongtran3558
@quangphongtran3558 3 ай бұрын
quá hay
@nguyenchitrung5955
@nguyenchitrung5955 3 ай бұрын
anh Huy làm so sánh giữa sql và nosql đi ạ
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
nosql em thích chọn database nào? Mongodb nhé?
@nguyenchitrung5955
@nguyenchitrung5955 3 ай бұрын
@@tranquochuywecommit ok ạ, à em hỏi thêm là em muốn tìm hiểu sâu hơn về index (sâu như video anh chia sẻ thì tham gia khóa 100x là có anh nhỉ)
@huythai6250
@huythai6250 3 ай бұрын
Anh có thể làm thêm về Cassandra được không ạ?
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
để anh làm khảo sát xem nhiều anh em cộng đồng cần không, có nhiều thứ muốn làm nên anh sẽ ưu tiên các nội dung nhiều người cần em nhé
@huythai6250
@huythai6250 3 ай бұрын
@@tranquochuywecommit dạ cảm ơn anh đã dành thời gian cân nhắc ạ.
@tranquochuywecommit
@tranquochuywecommit 3 ай бұрын
@huythai6250 anh vẫn xem tất cả chia sẻ của anh em mà. Cảm ơn anh em vì đã ủng hộ kênh này nhé
@huythai6250
@huythai6250 3 ай бұрын
@@tranquochuywecommit dạ, rất cần nhiều hơn những người có tầm như anh chia sẻ kinh nghiệm ạ 🥰, cảm ơn những chia sẻ của anh rất nhiều
Spongebob ate Michael Jackson 😱 #meme #spongebob #gmod
00:14
Mr. LoLo
Рет қаралды 9 МЛН
Running With Bigger And Bigger Lunchlys
00:18
MrBeast
Рет қаралды 109 МЛН
Brawl Stars Edit😈📕
00:15
Kan Andrey
Рет қаралды 56 МЛН
Thiết kế Database đáp ứng 400 triệu người tại Quora | System Design Wecommit
11:42
Xây dựng kiến trúc chịu tải lớn ở Tiki
48:23
Grokking Vietnam
Рет қаралды 78 М.
Google Search phản ánh hành vi của xã hội thế nào | Autocomplete Wecommit
9:10
Trần Quốc Huy - Databases
Рет қаралды 4,9 М.
Bí mật TOP 1% những lập trình viên giỏi nhất | Trần Quốc Huy Wecommit
26:47