Groups | Blog | Home
all groups > sql server data mining > february 2005 >

sql server data mining : Reprocessing a mining model


d.kiesling
2/17/2005 8:22:28 AM
I'm currently developing a user registration prototype.
The aim is to classify certain types of users. However,
after the registration I query a decision tree model in
Analysis Services with DMX and I want to send the user
data into the warehouse to improve the mining model with
new data to make better forecasts. My question is, does a
way exist to reprocess the mining model from my
application, in order to use the new data? I want to do
the task automatically. I'm working with ASP.NET and C#.
Thanks for your help.

Bogdan Crivat [MSFT]
2/18/2005 4:14:55 PM
Hello,
You are using SQL Server 2000, right?

You can write a C# application that connects to the Analysis Services server
via a System.Data.OleDb.OleDbConnection objects and executes an INSERT INTO
statement (through System.Data.OleDb.OleDbCommand) pointing to the newest
data soruce, the one to be used in training.
However, you mentioned that you are also working with ASP.Net. Do you need
to reprocess the model for each customer that places a specific web request?


--
--
--
This posting is provided "AS IS" with no warranties, and confers no rights.
Please do not send email directly to this alias. It is for newsgroup
purposes only.

thanks,
bogdan

[quoted text, click to view]

Jamie MacLennan (MS)
2/21/2005 6:34:21 PM
The object model for managing objects in Analysis Services is called DSO.
You can check the documentation for the appropriate processing commands.
Since DSO is not managed, you will have to generate wrappers to access it
from .Net code.

If you append the new user data to the data set from which the model was
originally processed, you can simply re-process the model - it will read the
new data along with the old.

For a better long term plan, you may want to deprecate older data as time
goes on - so you are not stuck to patterns that may no longer apply. I
haven't use DSO in a while, but I believe you can directly specify the query
to use for training.

This is made much easier with the SQL 2005 beta, which supplants DSO with
AMO (Analysis Management Objects) which are built in .Net and are a bit
easier to understand. (Of course, the docs aren't complete, so it's kind of
a trade of at this point)

--

-Jamie MacLennan
SQL Server Data Mining
This posting is provided "AS IS" with no warranties, and confers no rights.
[quoted text, click to view]

d.kiesling
2/23/2005 12:46:43 AM
Hello,
thanks for your reply. I'm using SQL Server 2005 Beta 2,
maybe I should post my question somewhere else. Is it
possible to use ADOMD.NET to reprocess my decision tree
models in Analysis Services?

Bye, Dan
Jamie MacLennan (MS)
2/23/2005 9:36:28 AM
For SQL Server 2005, you should post at
microsoft.private.sqlserver2005.analysisservices.datamining

There is access to this newsgroup at www.sqlserverdatamining.com

Browser access to all SQL 2005 newsgroups and instructions for configuring
your newsreader are available at
http://communities.microsoft.com/newsgroups/default.asp?ICP=sqlserver2005

Also, to answer the question, in general you would use Analysis Management
Objects (AMO) to process models. There is a powerpoint "whitepaper"
available at www.sqlserverdatamining.com describing the use of AMO.

Thanks

--

-Jamie MacLennan
SQL Server Data Mining
This posting is provided "AS IS" with no warranties, and confers no rights.
[quoted text, click to view]

Bogdan Crivat [MSFT]
2/23/2005 10:16:48 AM
Hello

In general, for SQL Server 2005 you can use the
microsoft.private.sqlserver2005.analysisservices.datamining newsgroup on the
privatenews.microsoft.com server. The newsgroup is mirrored with a Web
interface at
http://www.sqlserverdatamining.com/DMCommunity/Newsgroup/default.aspx and
you can post questions there, as well as do a full-text search in previous
questions and replies.

Now back to your problem: you can use Adomd.Net instead of OleDb/Ado.Net
In Adomd.Net terms, my previous reply translates:

You can write a C# application that connects to the Analysis Services server
via a Microsoft.AnalysisServices.AdomdClient.AdomdConnection objects and
executes an INSERT INTO
statement (through Microsoft.AnalysisServices.AdomdClient.AdomdCommand)
pointing to the newest
data source, the one to be used in training.

In the recent Community Preview builds (as well as in the complete version
of the product), the AdomdCommand object is able to take a DataTable as
parameter for the INSERT INTO statement. That means that you will not have
to cache your data first into a database, but can pass the whole training
data set as a parameter for INSERT INTO. I am not sure if this is actually
helpful for your scenario. However, if you need it, it is there :-)

Hope this helps
--
--
--
This posting is provided "AS IS" with no warranties, and confers no rights.
Please do not send email directly to this alias. It is for newsgroup
purposes only.

thanks,
bogdan

[quoted text, click to view]

AddThis Social Bookmark Button