|
dev
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
BLOB problemI 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 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) 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 > > > > 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 >> >> >> >> > > |
|||||||||||||||||||||||