Trong thực tế, thường sử dụng SQL hay NoSQL?

Trong thực tế các trang TMĐT, e-commerce lớn nhỏ thường dùng NoSQL hay RDBMS ?
Nếu dùng NoSQL thì một công ty có sử dụng nhiều NoSQL một lúc ko ? vì theo mình thấy NoSQL có nhiều loại để lưu dữ liệu khác nhau như Key Value store, Document Store, Wide Column Store, Graph Databases,Multimodel Databases …

TUỲ vào module của họ nếu làm về sản phẩm thông tin thì cần sự liên kết chặc chẽ dữ liệu thì RDB, còn các module chát chít hổ trợ của họ thi NoDB từ vị trí technical leader nữa.

Viết bằng mobile hơi khó tí

2 Likes

Tuỳ theo bài toán đặt ra mà dùng DB khác nhau. Một hệ thống lớn khó có thể chỉ sử dụng một DB duy nhất. Nhưng các NoSQL bây giờ cũng đang dần chuyển đổi các câu lệnh query bằng json hoặc thuần text sang câu lệnh SQL.
Note thêm là

  • Các dữ liệu dạng chat có thể sử dụng Cassandra hoặc MongoDB
  • Các dữ liệu text search thì ElastichSearch hoặc Solr.
  • Các dữ liệu thống kê (thường nói thống kê thì hay sẽ gắn liền với timeseries). Lúc này có thể nghĩ tới Column Storage (Spark hoặc Druid)
  • Các dữ liệu dạng social thì đúng là cần Graph DB, nhưng Ecommerce ko cần cái này. Nhưng Ecommerce lại cần tới transaction nên Oracle hoặc Cassandra là một điển hình.
  • Các key value store điển hình như Redis hoặc memcached thì phần lớn được dùng như một dạng high-throughput caching, tuy nhiên cũng có thể sử dụng làm thống kê nhẹ cho realtime vì tính nhanh và ổn định.

Tuỳ vào tính chất dữ liệu mà quyết định sử dụng DB dạng nào, và khi dùng DB dạng đó thì sẽ pick ra best practices mà xài.

2 Likes

Mình nghĩ E-commerce cũng cần Graph DB cho hệ thống Recommendation , gợi ý mua hàng chứ nhỉ ?

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?