Dịch vụ phân tích máy chủ SQL so với R như thế nào?


7

Đây có thể là một câu hỏi quá rộng với những ý kiến ​​nặng nề, nhưng tôi thực sự thấy khó tìm kiếm thông tin về việc chạy các thuật toán khác nhau bằng cách sử dụng các dự án Khai thác dữ liệu dịch vụ phân tích SQL Server so với sử dụng R. Điều này chủ yếu là vì tất cả những người làm việc khoa học dữ liệu tôi làm việc cùng không có ý tưởng nào về SSAS vì dường như không ai sử dụng nó. :)

Cơ sở dữ liệu Guy

Trước khi tôi bắt đầu, hãy để tôi làm rõ. Tôi là một anh chàng cơ sở dữ liệu và không phải là nhà khoa học dữ liệu. Tôi làm việc với những người là nhà khoa học dữ liệu chủ yếu sử dụng R. Tôi hỗ trợ những người này tạo ra các tập dữ liệu lớn nơi họ có thể phân tích và bẻ khóa dữ liệu.

Mục tiêu của tôi ở đây là tận dụng một công cụ đi kèm với SQL Server mà không ai thực sự sử dụng vì dường như không ai biết được cách thức hoạt động của nó so với các phương thức và công cụ khác như R, SAS, SSPS, v.v. trại.

SSAS

Tôi chưa bao giờ thực sự sử dụng Dịch vụ phân tích máy chủ SQL (SSAS) ngoài việc tạo các khối OLAP. Những người biết SSAS, bạn cũng có thể thực hiện các tác vụ khai thác dữ liệu trên các hình khối hoặc trực tiếp trên dữ liệu trong SQL Server.

SSAS Data Mining đi kèm với một loạt các loại thuật toán:

  • Các thuật toán phân loại dự đoán một hoặc nhiều biến rời rạc, dựa trên các thuộc tính khác trong tập dữ liệu.
  • Các thuật toán hồi quy dự đoán một hoặc nhiều biến liên tục, chẳng hạn như lãi hoặc lỗ, dựa trên các thuộc tính khác trong bộ dữ liệu.
  • Các thuật toán phân đoạn chia dữ liệu thành các nhóm hoặc cụm, của các mục có thuộc tính tương tự.
  • Các thuật toán kết hợp tìm mối tương quan giữa các thuộc tính khác nhau trong một tập dữ liệu. Ứng dụng phổ biến nhất của loại thuật toán này là để tạo quy tắc kết hợp, có thể được sử dụng trong phân tích giỏ thị trường.
  • Các thuật toán phân tích trình tự tóm tắt các chuỗi hoặc tập thường xuyên trong dữ liệu, chẳng hạn như luồng đường dẫn Web.

Dự đoán các cột rời rạc

Với các tùy chọn thuật toán khác nhau này, tôi có thể bắt đầu đưa ra dự đoán chung từ dữ liệu, chẳng hạn như tìm ra ai sẽ mua một chiếc xe đạp dựa trên cột dự đoán, Người mua xe đạp, dựa vào cột đầu vào, Tuổi. Biểu đồ cho thấy tuổi của một người giúp phân biệt xem người đó sẽ mua xe đạp.

nhập mô tả hình ảnh ở đây

Dự đoán các cột liên tục

Khi thuật toán Cây quyết định của Microsoft xây dựng cây dựa trên cột có thể dự đoán liên tục, mỗi nút chứa công thức hồi quy. Một sự phân tách xảy ra tại một điểm không tuyến tính trong công thức hồi quy. Ví dụ, hãy xem xét sơ đồ sau.

nhập mô tả hình ảnh ở đây

So sánh

Với một số điều đã nói, có vẻ như tôi có thể chạy một loạt các thuật toán trên dữ liệu và cũng có sẵn các chức năng khác nhau trong SSAS để chạy với dữ liệu. Dường như tôi cũng có thể phát triển các thuật toán của riêng mình trong Visual Studio và triển khai chúng lên SSAS (nếu tôi không nhầm).

Vậy, tôi còn thiếu gì ở đây liên quan đến ngôn ngữ và công cụ từ R? Có phải chỉ là họ có sự linh hoạt hơn để triển khai và chỉnh sửa các thuật toán phức tạp so với SSAS, v.v.?


1
R sẽ được tích hợp với SQL Server 2016. Bây giờ bạn đã có cả hai thứ tốt nhất!
Michael Green

Vâng, tôi đã thấy điều đó, nhưng bạn vẫn phải nâng cấp hoặc mua năm 2016. Không dễ để làm điều đó khi thả mũ.
Khó tính

Chúng tôi đang hỏi cùng một câu hỏi. Dường như R đã có thể đọc / ghi từ.to SQL, vì vậy tôi không hiểu SQL 2016 sẽ cung cấp những gì. Có lẽ bạn có thể chạy các gói R trong SQL?
Ngài Swears-a-lot

Câu trả lời:


2

Theo tôi, dường như SSAS có ý nghĩa hơn đối với người:

  • đã đầu tư đáng kể vào ngăn xếp công nghệnền tảng của Microsoft ;
  • thích giao diện điểm và nhấp (GUI) cho dòng lệnh;
  • tập trung vào kho dữ liệu (khối OLAP, v.v.);
  • có nhu cầu hạn chế về phương pháp thống kê và thuật toán đa dạng ;
  • có nhu cầu hạn chế trong hội nhập đa ngôn ngữ ;
  • không quan tâm nhiều đến tính mở , tích hợp đa nền tảngkhóa nhà cung cấp .

Bạn có thể tìm thấy bài viết blog hữu ích này của Sami Badawi . Tuy nhiên, lưu ý rằng bài đăng không phảigần đây , vì vậy một số thông tin có thể bị lỗi thời. Thêm vào đó, bài đăng chứa một đánh giá ban đầu , có thể không chính xác hoặc toàn diện. Nếu bạn đang nghĩ về khoa học dữ liệu, trong khi xem xét ở lại trong hệ sinh thái của Microsoft, tôi khuyên bạn nên xem qua nền tảng học máy của chính Azure ML của Microsoft. Bài đăng trên blog này trình bày một so sánh ngắn gọn về (sớm) Azure ML và SSAS.


Cảm ơn. Hầu hết dữ liệu tôi đang phân tích ở dạng đa chiều. Các giải pháp NoQuery và các giải pháp dựa trên đám mây khác không thực sự là một lựa chọn cho tôi. Do đó, không có ý nghĩa gì khi nhìn về phía Azure. Tuy nhiên, tôi sẽ kiểm tra bài viết trên blog. Thật không may, SSAS đã không thực sự cải thiện rất nhiều trong những năm qua và tôi đang ở trên 2008 R2.
Khó tính

Nhân tiện, bạn có thể thêm cái nhìn sâu sắc hơn về các phương pháp thống kê hạn chế và sự đa dạng thuật toán không? Tôi giả sử bạn có thể phát triển các phương pháp và thuật toán của riêng mình với SSAS giống như bạn có thể làm với R? Hay bạn có nghĩa là tính sẵn có của các gói đó không phổ biến như cộng đồng nguồn mở?
Khó tính

@Fastidious: Bạn được chào đón. Re: bình luận đầu tiên của bạn (Tôi sẽ giải quyết bình luận thứ hai trong bình luận tiếp theo). Tôi không hiểu lý do của bạn đằng sau việc từ chối Azure ML. Mặc dù tôi không phải là một fan hâm mộ lớn của các giải pháp của Microsoft, nhưng đối với những người bị ràng buộc với kho công nghệ đó, Azure ML có vẻ như là một lựa chọn hợp lý (trong khi, đối với một số người, vẫn có thể không phải là lựa chọn tốt nhất). Azure ML có mối quan hệ trực tiếp với Azure, là một nền tảng đám mây chung, hỗ trợ mọi thứ bạn ném vào nó. Bao bọc mọi môi trường và công cụ bạn sử dụng (hoặc cài đặt riêng trên) một máy ảo và khởi chạy nó. Nó không phải là giá rẻ, mặc dù.
Alexanderr Blekh

1
Đừng lo lắng. Chúng tôi sử dụng R và cung cấp dữ liệu cho nó thông qua SQL Server. Tôi chỉ muốn xem liệu chúng ta vẫn có thể tận dụng mọi thứ trong SQL hay không.
Khó tính

1
Để bất cứ ai đề nghị loại bỏ điểm đầu tiên của tôi: Tôi đã từ chối đề xuất chỉnh sửa của bạn. Thứ nhất, Microsoft không sở hữu R, đây là một dự án nguồn mở. Việc MS mua lại Revolution Analytics (RA) và tích hợp R, một tập hợp con của hệ sinh thái khổng lồ R và sản phẩm của RA vào MS stack không tạo ra môi trường "thoải mái" như R so với SSAS. Thứ hai, trong mọi trường hợp, SSAS và các sản phẩm MS có liên quan khác vẫn được tích hợp nhiều hơn với / vào hệ sinh thái MS trong thời gian ngắn, ít nhất là. Đây là ý kiến ​​của tôi và tôi đứng bên cạnh nó. Như vậy, tôi muốn câu trả lời của tôi vẫn như vậy. Cảm ơn bạn đa hiểu.
Alexanderr Blekh
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.