Dùng CSDL nào để lưu trữ dữ liệu như google hay facebook?

Chào mọi người em đang làm một web bằng ngôn ngữ PHP. Trang web của em dạng tương tự như Google và Facebook. Vậy cho em hỏi nên dùng loại CSDL nào là tốt nhất ạ.
Cuối cùng em xin cảm ơn mọi người nhiều.( Em là người tự học lập trình dân ngoại bang mong mọi người chỉ bảo thêm ạ)

Mình không dám nói loại nào tốt nhất nhưng mà mình thấy hầu hết các boss lớn: Paypal, ebay, youtube, google, facebook,… đều dùng MySQL

1 Like

cái này khó mà nói được lắm bạn, google và facebook là hai công ty công nghệ lớn thuộc dạng nhất nhì thế giới, họ không public những công nghệ mà họ dùng đâu.

Mình từng đọc một topic trao đổi về công nghệ lưu trữ dữ liệu của các công ty như google trên quora thì trên đó có người bảo rằng google và facebook không dùng cơ sở dữ liệu quan hệ bình thường như SQLServer hay MySQL hay bất cứ thứ gì có liên quan đến chữ “SQL”.

Mà thay vào đó họ dùng cơ sở dữ liệu phân tán, tức là dữ liệu tại một điểm khi được insert lên thì nó sẽ không đẩy lên toàn bộ server mà nó từ từ up dần dần từng server tùy vào vị trí địa lý, vd như bạn lên youtube bạn xem một video mà người up ở việt nam thì bạn sẽ xem rất nhanh, nhưng cũng một video đó mà bạn xem của người up ở bên Mỹ thì sẽ rất lag.

Có một ý kiến khác cho rằng Google lưu trữ dữ liệu trên RAM chứ không dùng cơ sở dữ liệu nên mới có tốc độ nhanh như vậy, tức là máy tính của Google chạy 24/7 và những gì lưu trên đó đều là lưu trên RAM chứ không lưu trên đĩa cứng, và nghĩa là chỉ mất điện một cái là toàn bộ những gì mà google có đều sẽ biến mất trong nháy mắt.

:))

2 Likes

giả sử như vậy cũng ko hẳn biến mất hoàn toàn, nó không thể biến mất trong nháy mắt mà sẽ mất từ từ, có thể dùng hơi lạnh để ngưng quá trình thất thoát dữ liệu đấy.

1 Like

Đúng rồi bạn.Mình nghe nói là FB và GG dùng cơ sở dữ liệu phân tán.

1 Like

CSDL Google sử dụng là Bigtable, nó lưu trữ dữ liệu theo kiểu NoSQL, Facebook sử dụng MySQL. Tuy nhiên bạn không cần quan tâm tới vấn đề này lắm, bạn có thể chọn MySQL hoặc PostgreSQL, Postgre thường được đánh giá cao hơn.

1 Like

Hệ CSDL của facebook với google dùng để lưu trữ và xử lý lượng dữ liệu cực lớn, thường là các hệ NoSQL
Với Google ( BigData ), với facebook ( Cassandra )
Với nhu cầu của bạn mình nghĩ là cũng không cần đến những thứ như vậy, dùng cả 3 thứ đều được mà mình nghĩ cứ dùng MySQL cho nó đơn giản !

1 Like

những công ty đó dữ liệu quá lớn nên họ không dùng những cái kia đâu bạn…bạn có thể tìm hiểu thêm Bigdata nhé…còn mình làm quy mô vừa phải thì cứ dùng những thứ kia thôi

1 Like

Tùy theo nhu cầu của bạn là gì? Nếu dữ liệu của bạn cần truy xuất tốc độ nhanh, an ninh đơn giản nhưng hiệu quả thì có thể chọn MySQL, nếu CSDL hướng đến đối tượng người dùng riêng biệt, tạo CDSL có thiết kế phức tạp thì có thể chọn PostgreSQL,…

1 Like

Không cần tốn chi phí lớn mà hiệu quả lại thấp như vậy đâu, các giải pháp đó chỉ để nghiên cứu thôi.
Chắc GOOGLE có giải hệ thống điện phụ riêng. Mà trong trường hợp bất trắc nhất tắt máy thì vẫn có cách khác mà, chỉ cần cung cấp điện cho RAM thôi là không cần phải lo lắng gì nữa. Bạn tìm hiểu thử công nghệ NVRAM thử nhé.

ơ, tin này ở đâu ra vậy @@

đâu ra cái tin gà này vậy thánh, ebay,amazon,google đang sử dụng dạng dữ liệu bigtable nhé thánh hay gọi nôm ra là NOSQL để tăng tốc lấy dữ liệu trên nền data khủng nhen bạn

Tự thiết kế một cái như SQL mà dùng. :smile:
Làm gì khó lắm đâu.

Hình như gg dùng bigtable mariaDB

RDBMS làm sao xử lý nổi??

Tại sao RDBMS lại không xử lý nổi?

Nếu chiệu khó google, bạn sẽ thấy từ này được dùng khá phổ biến: LAMP
Nó là viết tắt của 1 group “thần thánh” gồm:

  • Linux: OS
  • Apache: Webserver
  • MySQL: Database, sau này có đứa em sinh đôi là MariaDB
  • PHP: Programing language.

Với website dạng vừa và nhỏ thì LAMP sẽ là lựa chọn tối ưu cho bạn.
Ngoài ra, do LAMP rất phổ bến, nên bạn sẽ tìm được nhiều tài liệu/sách vở/sample code/… để tham khảo, và cũng có nhiều lựa chọn về hosting (vì gần như nhà hosting nào cũng hổ trợ LAMP).

Các CSDL khác cũng tốt nhưng vấn đề là tùy nơi mà dùng, vd như cái website nhỏ xíu thì bigdata với in-memory database để làm gì ?

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