Thiết kế csdl cho ứng dụng chat
Anh có thể đưa ví dụ về thiết kế cdsl cũng như infra cho ứng dụng chat 1 triệu người dùng như zalo discord ko ạ .Em tìm hiểu thì có thể làm bảng user bảng kênh chat,bảng join kênh chat ( gồm 2 hay nhiều người chat )và bảng mes . khi vào phòng chat có id =1 thì sẽ query tất cả tin nhắn trong bảng theo id kênh chat , nhu vậy có gây chậm hoặc bảng chat quá lớn ko ạ
Postgres connection pool
Em đang có 1 node chạy bằng go, nếu em dùng connection pool để kết nối node này đến Postgres thì đó có phải là connection per request không ạ.
Sự khác biệt giữa Join Where và Join And
Cho 2 bảng thế này:
<p>
</p>
<pre>
CREATE TABLE `facebook` (
`name` varchar(45) NOT NULL,
`city` varchar(45) DEFAULT NULL,
PRIMARY KEY (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
CREATE TABLE `linkedin` (
`name` varchar(45) NOT NULL,
`city` varchar(45) DEFAULT NULL,
PRIMARY KEY (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
</pre>
<p>
</p>
<p>
Với dữ liệu thế này:
</p>
<p>
</p>
<p>
Bảng facebook:
</p>
<img src="https://stackask.com/wp-content/uploads/2022/12/Screenshot-2022-12-04-at-18.47.29.png" alt="" class="alignnone size-full wp-image-8797" />
<p>
</p>
<p>
Bảng linkedin:
</p>
<img src="https://stackask.com/wp-content/uploads/2022/12/Screenshot-2022-12-04-at-18.48.23.png" alt="" class="alignnone size-full wp-image-8798" />
<p>
</p>
<p>
Thì câu truy vấn join where này:
</p>
<p>
</p>
<pre>
SELECT *
FROM facebook
LEFT JOIN linkedin
ON facebook.name = linkedin.name
WHERE facebook.city = 'SF';
</pre>
<p>
</p>
<p>
Lại cho kết quả là:
</p>
<p>
</p>
<img src="https://stackask.com/wp-content/uploads/2022/12/Screenshot-2022-12-04-at-18.49.32.png" alt="" class="alignnone size-full wp-image-8799" />
<p>
</p>
<p>
Trong khi sử dụng join and:
</p>
<p>
</p>
<pre>
SELECT *
FROM facebook
LEFT JOIN linkedin
ON facebook.name = linkedin.name AND facebook.city = 'SF';
</pre>
<p>
</p>
<p>
Lại cho kết quả là:
</p>
<p>
</p>
<img src="https://stackask.com/wp-content/uploads/2022/12/Screenshot-2022-12-04-at-18.50.31.png" alt="" class="alignnone size-full wp-image-8800" />
<p>
</p>
<p>
Vì sao vậy?
</p>
Write and read only for MySql replica in Golang
Em đang muốn triển khai 1 service bằng Golang kết nối với 1 cụm MySql replica cụ thể sẽ write vào master và chỉ đọc từ các slave, ví dụ với MongoDb thì em chỉ cần định nghĩa tất cả trong connectionString và mongo sẽ lo việc ghi vào master và đọc từ slave. Không biết MySql có hỗ trợ hay Golang có package nào hỗ trợ như vậy được không ạ.
transaction: có thể thực thi câu lệnh sql trong transaction nếu có exception xảy ra không
Giả sử: trong 1 transaction có 2 câu lệnh insert A và B
<p>
</p>
<ul>
<li>insert A : ok
</li>
<li>insert B: exception
</li></ul>
<p>
</p>
<p>
Liệu có cách nào để vẫn thực thi câu lệnh insert A không ạ?
</p>
Cách cấu trúc và định nghĩa tree trong mysql
giả sử mình có 1 tree như sau:
<p>
</p>
<img class="content-img" src="https://stackask.com/wp-content/uploads/2022/08/Screenshot-2022-08-08-191218.png" />
<p>
</p>
<p>
làm thế nào để lưu và tìm ra các con cháu của 1 node?
</p>
Tối ưu SQL
Hi anh và mọi ng, ngoài cách thông dùng là Indexing, mọi ng còn dùng những cách optimize nào ạ
Xử lý java khi saveall vào database 1 danh sách có nhiều dữ liệu
Em đang saveall 1 list có rất nhiều dữ liệu, thực hiện lưu trữ rất lâu. Em muốn hỏi là khi thực hiện như vậy thì nên làm như nào ạ.
Hỏi về View trong SQL
Hello mọi người ,
<ol>
<li>Sau khi em tạo và dùng View trong SQL thì em thấy rất tiện dụng ,App Spring Boot của em gọi đến View lấy dữ liệu rất dễ dàng, em có một thắc là khi chúng ta dùng View thì có <strong>nhược điểm </strong>gì không ạ ?</li>
<li>Nếu được lựa chọn ghi câu query phức tạp trên Spring Boot (<strong>không</strong> dùng View) và tạo View với query phức tạp đó rồi gọi View đó ở Spring Boot Back End thì trong thực tế mọi người sẽ <strong>ưu tiên</strong> cái nào hơn ?Và vì sao ạ ?</li>
</ol>
<p>
Cảm ơn mọi người !
</p>
Thống kê dữ liệu của từng ngày trong 7 ngày gần đây
Em chào mn ạ , hiện tại em đang muốn viết 1 câu truy vấn có thể count dữ liệu của từng ngày giới hạn trong 7 ngày gần đây. Nếu ngày nào không có dữ liệu sẽ trả là 0 . Mn giúp em với ạ
<p>
</p>
<p>
(Kết quả trả về giống hình em minh họa ạ<img class="alignnone size-full wp-image-4912" src="https://stackask.com/wp-content/uploads/2022/03/Screenshot-2022-03-03-011420.png" alt="" /> <img class="alignnone size-full-size wp-image-4913" src="https://stackask.com/wp-content/uploads/2022/03/Screenshot-2022-03-03-011359.png" alt="" />)
</p>