Como o SQL Server Analysis Services se compara ao R?

7

Pode ser uma pergunta muito ampla com opiniões pesadas, mas estou realmente achando difícil buscar informações sobre a execução de vários algoritmos usando projetos de mineração de dados do SQL Server Analysis Service versus usando R. Isso ocorre principalmente porque todos os profissionais de ciência de dados com quem trabalho não tem idéia do SSAS porque ninguém parece usá-lo. :)

O cara do banco de dados

Antes de começar, deixe-me esclarecer. Eu sou um cara de banco de dados e não um cientista de dados. Eu trabalho com pessoas que são cientistas de dados que usam principalmente a R. Eu ajudo esses caras na criação de grandes conjuntos de dados onde eles podem analisar e processar dados.

Meu objetivo aqui é alavancar uma ferramenta que acompanha o SQL Server que ninguém está realmente aproveitando porque ninguém parece ter uma idéia de como funciona em comparação com outros métodos e ferramentas como R, SAS, SSPS etc. acampamento.

SSAS

Eu realmente nunca usei o SQL Server Analysis Services (SSAS) fora da criação de cubos OLAP. Para quem conhece o SSAS, também é possível executar tarefas de mineração de dados em cubos ou diretamente nos dados no SQL Server.

O SSAS Data Mining vem com uma variedade de tipos de algoritmos:

  • Os algoritmos de classificação prevêem uma ou mais variáveis ​​discretas, com base nos outros atributos no conjunto de dados.
  • Os algoritmos de regressão preveem uma ou mais variáveis ​​contínuas, como lucro ou perda, com base em outros atributos no conjunto de dados.
  • Os algoritmos de segmentação dividem os dados em grupos ou clusters de itens que possuem propriedades semelhantes.
  • Os algoritmos de associação encontram correlações entre diferentes atributos em um conjunto de dados. A aplicação mais comum desse tipo de algoritmo é a criação de regras de associação, que podem ser usadas em uma análise de cesta de mercado.
  • Os algoritmos de análise de sequência resumem sequências ou episódios frequentes em dados, como um fluxo de caminho da Web.

Prevendo colunas discretas

Com essas diferentes opções de algoritmos, posso começar a fazer previsões gerais a partir dos dados, como descobrir quem compra uma bicicleta com base em uma coluna previsível, Compradores de bicicletas, em uma coluna de entrada, Idade. O histograma mostra que a idade de uma pessoa ajuda a distinguir se ela comprará uma bicicleta.

insira a descrição da imagem aqui

Prevendo colunas contínuas

Quando o algoritmo da Microsoft Decision Trees cria uma árvore com base em uma coluna previsível contínua, cada nó contém uma fórmula de regressão. Uma divisão ocorre em um ponto de não linearidade na fórmula de regressão. Por exemplo, considere o diagrama a seguir.

insira a descrição da imagem aqui

Comparação

Com isso dito, parece que posso executar uma série de algoritmos nos dados e também tenho várias funções disponíveis no SSAS para executar nos dados. Também parece que posso desenvolver meus próprios algoritmos no Visual Studio e implantá-los no SSAS (se não me engano).

Então, o que estou perdendo aqui em relação às linguagens e ferramentas do R? Será que eles têm mais flexibilidade para implantar e editar algoritmos complexos versus SSAS etc?

Fastidious
fonte
11
O R será integrado ao SQL Server 2016. Agora você tem o melhor dos dois!
Michael Green
Sim, eu vi isso, mas você ainda precisa atualizar ou comprar 2016. Não é fácil fazer isso de uma só vez.
Novidio
Estamos fazendo a mesma pergunta. Parece que o R já pode ler / gravar from.to SQL, então não entendo o que o SQL 2016 oferecerá. Talvez você possa executar pacotes R dentro do SQL?
precisa saber é o seguinte

Respostas:

2

Na minha opinião, parece que o SSAS faz mais sentido para alguém que:

  • investiu significativamente na pilha e plataforma de tecnologia da Microsoft ;
  • prefira interface do tipo aponte e clique (GUI) para linha de comando;
  • foco no data warehousing (cubos OLAP, etc.);
  • possui necessidades limitadas em termos de métodos estatísticos e variedade de algoritmos ;
  • possui necessidades limitadas na integração entre idiomas ;
  • não se importa muito com abertura , integração entre plataformas e bloqueio de fornecedores .

Você pode achar útil este post de Sami Badawi . No entanto, observe que a postagem não é recente , portanto, algumas informações podem estar desatualizadas. Além disso, a postagem contém uma revisão inicial , que pode não ser muito precisa ou abrangente. Se você está pensando em ciência de dados, enquanto pensa em permanecer no ecossistema da Microsoft, sugiro que você dê uma olhada na plataforma de aprendizado de máquina da Microsoft, Azure ML. Esta postagem do blog apresenta uma breve comparação entre o ML e o SSAS do Azure (inicial).

Aleksandr Blekh
fonte
Obrigado. A maioria dos dados que estou analisando está no formato multidimensional. As soluções NoSQL e outras soluções baseadas em nuvem não são realmente uma opção para mim. Portanto, não faz sentido olhar para o Azure. No entanto, vou verificar a postagem do blog. Infelizmente, o SSAS não melhorou muito ao longo dos anos e estou no 2008 R2.
Fastidious
A propósito, você pode adicionar mais informações sobre os métodos estatísticos limitados e a variedade de algoritmos? Eu assumi que você poderia desenvolver seus próprios métodos e algoritmos com o SSAS, assim como você poderia com o R? Ou você quer dizer que a disponibilidade desses pacotes não é tão comum quanto a comunidade de código aberto?
Fastidious
@ Fastidious: De nada. Re: seu primeiro comentário (abordarei o segundo no próximo comentário). Não entendo sua lógica por trás da rejeição do Azure ML. Embora eu não seja um grande fã das soluções da Microsoft, mas para aqueles que estão vinculados a essa pilha de tecnologia, o Azure ML parece uma opção sensata (embora, para alguns, ainda possa não ser a melhor). O Azure ML tem vínculos diretos com o Azure, que, sendo uma plataforma em nuvem geral, suporta tudo o que você joga nele. Envolva qualquer ambiente e ferramentas em que você use (ou instale-os separadamente) em uma máquina virtual e inicie-a. Não é barato, no entanto.
Aleksandr Blekh 27/03
11
Não se preocupe. Usamos R e alimentamos dados através do SQL Server. Eu só queria ver se ainda podemos aproveitar tudo em SQL também.
Fastidious 27/03
11
Para quem sugeriu remover meu primeiro ponto: rejeitei sua sugestão de edição. Em primeiro lugar, a Microsoft não possui o R, que é um projeto de código aberto. O fato de a MS ter adquirido a Revolution Analytics (RA) e integrado o R, um subconjunto do enorme ecossistema R e do produto da RA na pilha do MS não torna R o ambiente igualmente "confortável" em relação ao SSAS. Em segundo lugar, em qualquer caso, o SSAS e outros produtos relevantes dos Estados-Membros ainda estão mais integrados ao ecossistema dos Estados-Membros no curto prazo, pelo menos. Esta é a minha opinião e eu mantenho isso. Como tal, gostaria que minha resposta permanecesse como está. Obrigado pela compreensão.
Aleksandr Blekh 16/03/19