Home All Groups Group Topic Archive Search About
Author
16 Mar 2007 8:30 AM
W. Jordan
Hello,

I am developing an intranet web application which provides file
sharing services and full text search against the files. The
data storage is SQL Server 2000, and the files uploaded from
the users are stored into an image column of the database.
Since the data is in the database, I can perform authentication
against the user's identity to ensure that he/she has the right
to access the data. When I place the files into the database,
it is also very easy to perform full text search within the
image column. However, ASP.NET does not come with a good
solution for writing BLOB data into SQL Server.

What I read from the web is to use a byte array to hold the
file, and write the array into the image column. This makes
the memory footprint problem. When the users are uploading
large files to the server, the ASP.NET page creates a very
big byte array to hold and write it to the database. If
several users upload large files at the same time, the working
process will be short of memory then.

In short, is there any good solution to solve the following
problem at the same time?

1, Share files within the intranet;
2, Protected storage with authentication;
3, Full text search support for the files;
4, Small memory footprint when reading and writing BLOB data;
5, Easy development.

Nowadays, 1,2,3,5 is fulfilled. However, I don't know how to
reduce the memory requirement when writing files into the
database. Any good suggestions?


--


Best Regards,
W. Jordan

Author
16 Mar 2007 2:03 PM
Paul Clement
On Fri, 16 Mar 2007 16:30:31 +0800, "W. Jordan" <wmjor***@163.com> wrote:

¤ Hello,
¤
¤ I am developing an intranet web application which provides file
¤ sharing services and full text search against the files. The
¤ data storage is SQL Server 2000, and the files uploaded from
¤ the users are stored into an image column of the database.
¤ Since the data is in the database, I can perform authentication
¤ against the user's identity to ensure that he/she has the right
¤ to access the data. When I place the files into the database,
¤ it is also very easy to perform full text search within the
¤ image column. However, ASP.NET does not come with a good
¤ solution for writing BLOB data into SQL Server.
¤
¤ What I read from the web is to use a byte array to hold the
¤ file, and write the array into the image column. This makes
¤ the memory footprint problem. When the users are uploading
¤ large files to the server, the ASP.NET page creates a very
¤ big byte array to hold and write it to the database. If
¤ several users upload large files at the same time, the working
¤ process will be short of memory then.
¤
¤ In short, is there any good solution to solve the following
¤ problem at the same time?
¤
¤ 1, Share files within the intranet;
¤ 2, Protected storage with authentication;
¤ 3, Full text search support for the files;
¤ 4, Small memory footprint when reading and writing BLOB data;
¤ 5, Easy development.
¤
¤ Nowadays, 1,2,3,5 is fulfilled. However, I don't know how to
¤ reduce the memory requirement when writing files into the
¤ database. Any good suggestions?

Have you actually done any performance testing in your environment. If you expect high traffic at
your web site then you need to be able to accommodate it with sufficient hardware resources.


Paul
~~~~
Microsoft MVP (Visual Basic)
Author
16 Mar 2007 3:28 PM
Laura T.
There are many solutions.
Maybe the easiest is chunked blob writing.
http://msdn2.microsoft.com/en-us/library/3517w44b.aspx, or maybe use sp/DTS
to upload the file.


Show quote
"W. Jordan" <wmjor***@163.com> ha scritto nel messaggio
news:eBGkrV6ZHHA.1300@TK2MSFTNGP02.phx.gbl...
> Hello,
>
> I am developing an intranet web application which provides file
> sharing services and full text search against the files. The
> data storage is SQL Server 2000, and the files uploaded from
> the users are stored into an image column of the database.
> Since the data is in the database, I can perform authentication
> against the user's identity to ensure that he/she has the right
> to access the data. When I place the files into the database,
> it is also very easy to perform full text search within the
> image column. However, ASP.NET does not come with a good
> solution for writing BLOB data into SQL Server.
>
> What I read from the web is to use a byte array to hold the
> file, and write the array into the image column. This makes
> the memory footprint problem. When the users are uploading
> large files to the server, the ASP.NET page creates a very
> big byte array to hold and write it to the database. If
> several users upload large files at the same time, the working
> process will be short of memory then.
>
> In short, is there any good solution to solve the following
> problem at the same time?
>
> 1, Share files within the intranet;
> 2, Protected storage with authentication;
> 3, Full text search support for the files;
> 4, Small memory footprint when reading and writing BLOB data;
> 5, Easy development.
>
> Nowadays, 1,2,3,5 is fulfilled. However, I don't know how to
> reduce the memory requirement when writing files into the
> database. Any good suggestions?
>
>
> --
>
>
> Best Regards,
> W. Jordan
>
>
>
>
Author
20 Mar 2007 3:46 AM
W. Jordan
Thank you for your reply.
I read this years before...and have read nothing afterward.
Maybe this is the best approach now??


Show quote
"Laura T." <L*@NOWHERE.COM> wrote in message
news:epNtM99ZHHA.4872@TK2MSFTNGP03.phx.gbl...
> There are many solutions.
> Maybe the easiest is chunked blob writing.
> http://msdn2.microsoft.com/en-us/library/3517w44b.aspx, or maybe use
> sp/DTS to upload the file.
>
>
> "W. Jordan" <wmjor***@163.com> ha scritto nel messaggio
> news:eBGkrV6ZHHA.1300@TK2MSFTNGP02.phx.gbl...
>> Hello,
>>
>> I am developing an intranet web application which provides file
>> sharing services and full text search against the files. The
>> data storage is SQL Server 2000, and the files uploaded from
>> the users are stored into an image column of the database.
>> Since the data is in the database, I can perform authentication
>> against the user's identity to ensure that he/she has the right
>> to access the data. When I place the files into the database,
>> it is also very easy to perform full text search within the
>> image column. However, ASP.NET does not come with a good
>> solution for writing BLOB data into SQL Server.
>>
>> What I read from the web is to use a byte array to hold the
>> file, and write the array into the image column. This makes
>> the memory footprint problem. When the users are uploading
>> large files to the server, the ASP.NET page creates a very
>> big byte array to hold and write it to the database. If
>> several users upload large files at the same time, the working
>> process will be short of memory then.
>>
>> In short, is there any good solution to solve the following
>> problem at the same time?
>>
>> 1, Share files within the intranet;
>> 2, Protected storage with authentication;
>> 3, Full text search support for the files;
>> 4, Small memory footprint when reading and writing BLOB data;
>> 5, Easy development.
>>
>> Nowadays, 1,2,3,5 is fulfilled. However, I don't know how to
>> reduce the memory requirement when writing files into the
>> database. Any good suggestions?
>>
>>
>> --
>>
>>
>> Best Regards,
>> W. Jordan
>>
>>
>>
>>
>
>

AddThis Social Bookmark Button