2012-04-14 33 views
13

Tôi hiện đang làm việc trên một trang web phải tồn tại trên máy ảo có bộ nhớ rất thấp (hiện tại tôi được yêu cầu dự kiến ​​là 512mb). Thật không may, ít nhất là trong tương lai gần, cơ sở dữ liệu và ứng dụng web phải là cùng một máy chủ.Cơ sở dữ liệu hạng nhẹ (SQL hoặc NoSQL)

Bây giờ tôi đã đọc qua một số câu hỏi tại đây và cố gắng thực hiện nghiên cứu của riêng mình nhưng có rất nhiều tùy chọn để bạn lựa chọn. Về cơ bản, máy chủ cơ sở dữ liệu đủ ánh sáng mà tôi có thể cài đặt là gì? SQL hoặc NoSQL không thực sự quan trọng; nó sẽ không được cơ sở dữ liệu chuyên sâu nhưng tôi không muốn bị ràng buộc với bất cứ điều gì tôi chọn bây giờ. Có nghĩa là, nếu có thể, một con đường hướng tới nhân rộng đa máy chủ sẽ là tuyệt vời nhưng rõ ràng không phải là một yêu cầu ở giai đoạn này.

Suy nghĩ hiện tại của tôi là MongoDB hoặc MySQL nhưng tôi không chắc liệu đó có phải là lựa chọn tốt nhất hay không.

Ứng dụng web của tôi đang chạy trên nginx với PHP mà tôi nghĩ là sự lựa chọn tốt nhất hiện nay vì vậy mối quan tâm chính của tôi là phía cơ sở dữ liệu.

+0

PHP và MySQL là cặp đôi thường thấy và dường như cũng phù hợp với bạn. –

+0

Khá nhiều bất kỳ cơ sở dữ liệu phong nha sẽ chạy tốt với nhiều bộ nhớ (mặc dù rõ ràng là họ đang nhanh hơn khi họ có nhiều bộ nhớ để làm việc với). –

Trả lời

11

nếu bạn cần cơ sở dữ liệu nhẹ nhất tôi sẽ nói sqlite 3. mục đích của nó được thiết kế cho nhiệm vụ này, is small and fast và theo kinh nghiệm của tôi là đáng tin cậy và dễ sử dụng.

tôi không sử dụng php bản thân mình, nhưng có vẻ như là support here.

sqlite hỗ trợ khá nhiều "chuẩn" sql, ngoại trừ việc nó không thực thi các loại - bạn có thể xác định cột là văn bản, nhưng lưu trữ và truy lục giá trị số nguyên, nếu bạn cảm thấy thích. trong thực tế, nó không phải là một việc lớn và miễn là bạn không sử dụng tính năng này "" bạn có thể chuyển sang một cơ sở dữ liệu lớn hơn trong tương lai với ít rắc rối.

nhưng, trong thực tế, tôi sẽ bắt đầu với mysql vì nó có thể đã được cài đặt và khả dụng. nếu nó cung cấp cho bạn các vấn đề với việc sử dụng bộ nhớ, hãy chuyển sang sqlite. nhưng đối với một cơ sở dữ liệu đơn giản, không kiểu cách, bạn cũng có thể bắt đầu với mysql.

3

Khi chọn giữa cơ sở dữ liệu quan hệ hoặc cơ sở dữ liệu hướng tài liệu, tốt nhất là tập trung vào nhu cầu lưu trữ dữ liệu của ứng dụng cụ thể. Nếu một ứng dụng phù hợp hơn cho một cơ sở dữ liệu quan hệ được viết trên đầu trang của một cơ sở dữ liệu hướng tài liệu như MongoDB, nó sẽ kém hiệu quả hơn và tiêu thụ nhiều tài nguyên hơn.

3

bạn có thấy OrientDB không?

OrientDB có sự linh hoạt của Cơ sở dữ liệu tài liệu và sức mạnh của cơ sở dữ liệu đồ thị để quản lý mối quan hệ. Nó có thể hoạt động ở chế độ lược đồ ít hơn, lược đồ đầy đủ hoặc kết hợp cả hai. Hỗ trợ các tính năng nâng cao như Giao dịch ACID, Chỉ mục nhanh, Truy vấn gốc và SQL. Nó nhập và xuất tài liệu bằng JSON.

+0

Cảm ơn, tôi sẽ kiểm tra! – Kris

+0

OrientDB có trọng lượng nhẹ không? –

+0

@ParrisVarney LOL no. Nó là xa nhẹ. Tôi khuyên bạn KHÔNG nên sử dụng OrientDB. –

Các vấn đề liên quan