2011-06-15 19 views
14

Tôi có một ứng dụng ASP.NET có tải lên tệp nhiều lần, ghi chúng vào đĩa và sau đó MSSQL 2008 tải chúng bằng BCP.Tải tệp hàng loạt vào SQL Azure?

Tôi muốn di chuyển toàn bộ sang Azure, nhưng vì không có "tệp" cho BCP, bất kỳ ai có thể nhận xét về cách lấy dữ liệu hàng loạt từ ứng dụng Azure vào SQL Azure?

Tôi đã xem http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlbulkcopy.aspx nhưng không chắc liệu điều đó có áp dụng hay không.

Cảm ơn.

+1

Nếu nội dung tải lên từ trang web ASP.NET, bạn sẽ gặp phải vấn đề tương tự nếu dữ liệu lớn hơn 30 MB, xem câu hỏi của tôi http://stackoverflow.com/questions/6402253/how-to- upload-huge-files-to-the-azure-blog-từ-một-web-trang để biết thêm thông tin. –

Trả lời

7

BCP là một cách để thực hiện điều đó.

bài này giải thích nó trong ba bước đơn giản: Bulk insert with Azure SQL

+0

BCP một tập tin 80GB để azure mất 12 giờ. Nếu tôi chèn hàng loạt cục bộ thì phải mất 2 giờ. Có bất kỳ lời khuyên như bcping từ một tập tin địa phương trong vòng azure? – MIKE

+1

@MIKE bạn đã thử chạy mẫu lệnh và Azure VM bên trong cùng một trung tâm dữ liệu chưa? Bạn có thể đặt tệp 80gig bên trong một thư mục lưu trữ Tệp Azure, thư mục này sẽ làm cho nó có sẵn cho máy ảo. –

+0

Nghe như một ý tưởng thông minh. Tôi sẽ thử cái này Bạn có biết nếu azure throttles bcp (làm chậm chèn) trên lớp tiêu chuẩn vs cấp cao cấp? Trong khi chèn tôi nhận thấy nó làm khoảng mười 1000 chèn sau đó một sự chậm trễ 30 giây, tôi không chắc chắn nếu nó đang được throttled bởi máy địa phương của tôi hoặc azure. (không phải máy tính địa phương của tôi, nó là một máy chủ) – MIKE

3

Bạn đang đi đúng hướng. API sao chép hàng loạt sẽ hoạt động. Tôi đang sử dụng nó. Và đó là cách nhanh nhất để nhập dữ liệu vì nó sử dụng các câu lệnh INSERT BULK. Không được nhầm lẫn với câu lệnh INSUL BULK không được hỗ trợ trong SQL Azure. Về bản chất, BCP và SqlBulkCopy API sử dụng cùng một phương thức.

1

Tôi nghĩ rằng điều quan trọng cần lưu ý là BCP không thể xử lý file video mà là Unicode trong khi sử dụng một tập tin định dạng để làm nhập khẩu của bạn.