Tôi đang xây dựng một ứng dụng web xử lý dữ liệu khá phức tạp: tab guitar.
As a reference, guitar tabs look like this:
Eb|-------------------------------------------------------------------------|
Bb|-------------------------------------------------------------------------|
Gb|--5-5-5-5----------------------------------------------------------------|
Db|--5-5-5-5--3-3-3-3--7-7-7-7--5-5-5-5--2-2-2-2--3-3-3-3--2-2-2-2--5-5-5-5-|
Ab|--3-3-3-3--3-3-3-3--7-7-7-7--5-5-5-5--2-2-2-2--3-3-3-3--2-2-2-2--5-5-5-5-|
Eb|-----------1-1-1-1--5-5-5-5--3-3-3-3--0-0-0-0--1-1-1-1--0-0-0-0--3-3-3-3-|
Sẽ hiệu quả hơn đối với hiệu suất khi lưu trữ dữ liệu này như một khối lớn, hoặc phá vỡ nó và lưu trữ trên cơ sở "ghi chú bằng ghi chú"?
As a use case:
User changes first chord from: to:
Eb|--- Eb|---
Bb|--- Bb|---
Gb|--5 Gb|--4
Db|--5 Db|--4
Ab|--3 Ab|--2
Eb|--- Eb|---
Nếu tôi lưu trữ dưới dạng một khối, mã để thao tác các tab sẽ phải phức tạp hơn nhiều. Nếu tôi lưu nó bằng ghi chú, cơ sở dữ liệu sẽ phải được truy cập nhiều hơn nữa. Phương pháp nào hiệu quả hơn? Có khả năng, rất nhiều người dùng sẽ sửa đổi dữ liệu. Tôi muốn ứng dụng web hoạt động tốt nhất. Tôi sẽ sử dụng MySQL nếu điều đó ảnh hưởng đến câu trả lời.