| Ted さんのプロフィールTeds Spaceフォトブログリスト | ヘルプ |
|
|
11月19日 "Data Dude" Goes liveCameron Skinner (Product Unit Manager for Visual Studio Team System for Database Developers) announced at PASS that the "Data Dude" product will be live on November 30. Personally I think it's ready now, but there are apparently a couple of things that they want to bake into the final release. VSTSDD is a fantastic product, and frankly I see it as a must-have for any serious database development team. I got an honorable mention in Camerons blog here: http://blogs.msdn.com/camerons/archive/2006/11/16/nov-30th-is-the-date.aspx
11月15日 PASS Day 1Today was the first offical day of the PASS conference. The keynote session by Paul Flessner was pretty good, but for the most part, there was no real earth-shattering information there. I did sit through a couple of sessions, BI200M which was a good overview session on Data Mining in Excel, and then AD311M, which was a great overview of the Visual Studio Team System for Database Developers..
Turns out that much of the content I've created for my presentation is very much of interest to the VSTSDD guys, so we'll see how many of them show up to my session tomorrow... Tonight is the big party at the "Experience", which is Paul Allens hobby..
Overall this seems to be a much larger conference than past years, and people seem genuinely excited. 11月13日 The PASS summit beginsWell, I made it here to Seattle. (What a long flight from home, COS to Dallas, then back to Seattle...I left my house at 4am Mountain and got to the hotel at 2PM Pacific)
Anyway, the conference starts for me with a meeting today to discuss Microsoft Learning and how things seem to have gone downhill recently. The perception from MSL is that things are not going bad, so we'll just see how it all turns out. I've promised some people to post a synopsis of what happens during the meeting, so stay tuned...
7月18日 Normalized Data is for Wimps!Ok, I took a bit of liberty with the title...... I found this blog entry today as I was doing a bit of research on denormalization techniques for an article I'm writing. I found this to be humourous!
7月5日 SQL Everywhere EditionThere is a new "edition" of SQL Server that is nearing the release stage, which just might be the missing link in the whole SQL Server story. SQL Server Everywhere is essentially a port of the embedded SQLCE but setup as a desktop/mobile platform.
The team has just started a new blog, located here: http://blogs.msdn.com/sqlservereverywhere/default.aspx
7月3日 TempDB IO RequirementsI came across this article today in some stuff I was reading.. Not a bad KB/Q/Whatever...
Basically it talks about TempDB needing to be as fast and efficient as possible. This is especially true if you're using SQL Server for ECM... 6月23日 2006 PASS SummitI got notified today that I will be delivering at least 1 session during this years Professional Association for SQL Server (PASS) Summit (http://www.sqlpass.org). I submitted 2 abstracts to PASS this year, 1 was accepted as a regular presentation, and 1 was accepted as an alternate presentation (In other words, if someone bails out, I would give the second presentation)
I have been involved with PASS (Not very active unfortunately, but you know how that goes) since it's inception, and it is definitely a worthwhile cause. I will be giving the following presentation:
AD-402: Test-Driven Database Development - Agile Methods for SQL Developers 11/16/2006 5:00 PM - 6:15 PM
The alternate possibility is: 2155: Implementing SOA - Effective use of SQL 2005 http endpoints
These presentations are an hour long with a 15 minute Q&A session.
If you are a database professional and haven't heard of PASS, or haven't attended the annual summit, you don't know what you are missing! Check it out this year, and see some people much, much better than I presenting topics ranging from SQL Server internals to the effective use of Data Mining algorithms!
5月24日 1TB per hour????!?!?!?!?!?!Wow, this is just amazing..... A test (using an out of this world box mind you) performed by the SQLCAT team to load 1TB of data into SQL Server in less than an hour!
5月19日 Service Broker setupI sat in on Tom Normans excellent session at the Rocky Mountain SQL Server user group last night (http://www.rockymountainsql.org) and during the session mentioned a tool that I had come across that makes setup of Service Broker easy..
The tool can be found here: http://blogs.msdn.com/remusrusanu/archive/2006/04/07/571066.aspx
Hope this helps some of you out...
5月18日 Colorado PASSCampSo yesterday was the big Colorado PASSCamp (http://www.sqlserverbible.com/passcamp/index.htm) where I spoke on http Endpoints..
All in all a pretty good day, but the sessions were very rushed.
I'll be posting my sample code and slides (all 2 of them) to the website as soon as I figure out how to go about that...
To those that came out for the day, thanks!
5月15日 http endpoint AuthenticationI have had the opportunity lately to do a lot of work with SQL http endpoints. (By the way, I am speaking on this topic at the Colorado PASS Code Camp this Wednesday -- For info check out: http://www.sqlserverbible.com/passcamp/index.htm)
One of the things that isn't terribly clear is how endpoint authentication is setup in SQL Server..
You basically have the following choices when configuring endpoint Authentication:
If you want the most secure connection, you'll want to use Kerberos, but as noted above, it is not configured by default, and must be setup using tools from the Windows 2003 Support tools add-on.
I'll write more in a follow on article on just exactly how to configure Kerberos and http endpoints.
5月5日 SQL Server HistoryBeing a history geek, I found this blog entry of Euan Garden's very interesting:
5月2日 SQL Server Notification ServicesSo I've been spending a bit of time with SQL Notification Services lately, and had the occasion to develop a custom delivery protocol for notifications. At first this looked like it would be a relatively easy thing, just implement the interface and build whatever necessary communication 'stuff' into the code.. Didn't quite work out that way, but I finally found a good MSDN article on the subject. For those who might be looking at doing something similar, here's a link to the MSDN article:
4月30日 SQL Server 2005 Service BrokerSo, for reasons that I don't really care to go into at the moment, I find myself chest-deep in the architecture/internals of SQL Server service broker. Holy cow is this thing cool!!! I'm not sure why I glossed over the functionality during all of the beta stuff I worked on..
For those that develop message-based applications using things like MSMQ, the Service Broker is a godsend. It may seem somewhat complicated to setup and work with, but here's a hint. Use the "Service Listing Manager" available at http://www.sqlservicebroker.com or, for a direct link, check out: http://blogs.msdn.com/remusrusanu/archive/2006/04/07/571066.aspx
11月22日 Angel Saenz-Badillos on MARSJust when I thought I might be the only one who thought MARS would be misused and might not be a great idea, I come across this blog entry:
10月31日 Async Queries in .NET 2.0 / SQL2005One of the new features of the .NET 2.0 Framework and the SQL Native Access Client (SNAC) is the way that parallel operations are handled. Previous versions of the Framework required those that would code Async operations to "cheat" and go "outside" of the data access APIs to achieve Async operations. (Most notably through the use of PInvoke to call unmanaged APIs)
The problem with this approach is that you end up simply spawning a thread that could easily block other background threads. (In ADO, when you execute a non-blocking query, what you're really doing is spawning a background thread which is then blocked until the database operation completes)
In SNAC/.NET 2.0, ADO.NET now provides an interface that is based entirely on true asyncronous network IO (non-blocking). This implementation is entirely "port-based", which means that there is never a blocked thread waiting for an IO operation to complete. (This sounds too hard to believe, but it is true - it's implemented through an O/S-managed signaling queue)
As discussed in an earlier entry, the Patterns and Practices group at Microsoft have given us a nice set of asyncronous patterns to use when building async applications. The SNAC data access APIs follow these patterns quite closely, and have provided a set of async methods for the normal "Execute"xx methods (Like ExecuteReader).. Each of these new methods return an IAsyncResult reference that can then be passed to the associated EndExecute methods, in the form of:
Note that the data reader is actually created when you end the call... In this case, it's a simple inline invocation of the command. Normally you'd setup your async callbacks and allow your handler methods to actually read the result of the query... (This will be demonstrated in a future entry)
In order to utilize this stuff, you need to add a new keyword to your connection string "async=true" (which is actually a shortcut for "Asyncronous Processing = true")
(Take note that it is NOT a good idea to always include this keyword. If you include the keyword and then perform normal syncronous operations, you'll notice decreased performance as well as increased resource utilization)
In the next couple of entries I'll demonstrate how an application can be written to take advantage of these new features..
10月27日 It's OFFICIAL!Microsoft announced today that SQL Server 2005 and Visual Studio 2005, along with .NET 2.0 were officially shipped. They are now available on the MSDN subscriber downloads page!
It's been a long wait, but finally here! 10月25日 SQL Server 2005 Native Web ServicesContinuing my discussion on the new SQL 2005 features, I thought that I'd spend a bit of time discussing the new Native Web Services (http endpoints).
The first part of the discussion really needs to take place outside of the technology. For example, one of the questions that I hear on this all the time, is "how do you imagine that companies will use this feature"? This is a very good question, because (IMHO) Microsoft has blurred the lines as to what a "Database" server is with the release of 2005. I think the intent (again, I don't know this for sure, this is only an opinion) is to migrate SQL Server from a "Database Server" to an "Application Server". I think it's a logical progression, but it also opens up some territory debate. Traditional database servers are just that, the place where applications connect to get their data.. With SQL 2005 and Native Web Services, this doesn't really change at all, except for the fact that there is no middle tier "outside" of SQL Server that is hosting the web service. Instead of having your application talk to a web server that is hosting a web service, the app is now communicating directly to SQL Server.... (There's more to it than that, but it's a good place to start).
At any rate, lets get into the actual technical part of the discussion..
Creating a Native Web Service http endpoint in SQL Server 2005 involves the following:
It sounds pretty simple, and in reality, it is.. (Of course there's a lot to think about in terms of exactly how the service is created and accessed, and there are a LOT of application and security implications to consider as well)
Here's an example of the TSQL code necessary to create an Endpoint:
CREATE endpoint RMSSugstate = startedAS http (site ='localhost', path = '/OrdersRange',authentication = ( integrated ),ports = ( clear ) )FOR SOAP (webmethod 'SalesRate' ( name = 'AdventureWorks.dbo.uspOrdersRange', schema = standard ),wsdl = default,batches = enabled, database = 'AdventureWorks')
The above code snippet creates a service called RMSSug that is available on "localhost" accessible through the URL "http://localhost/OrdersRange", using integrated authentication and running on port 80. This Service has a method named "SalesRate", which executes a stored procedure in the AdventureWorks database called "uspOrdersRange", which takes no parameters and returns a recordset. (It also enables SQL Batches, which will be discussed in a future blog entry) Once the service is created, you can create a client to access the web service. Here is an example of how you'd access the webmethod from a Windows Form application. Note that the type returned from the call to the webservice is of type object[] and must be CAST to an appropriate object (in my case a DataSet which is then bound to a DataGridView control on the form)
public partial class frmWebService : Form{ public frmWebService(){ InitializeComponent(); } private void frmWebService_Load(object sender, EventArgs e){ WebService. RMSSug ws = new WebService.RMSSug();ws.Credentials = System.Net. CredentialCache.DefaultNetworkCredentials; object[] results = ws.SalesRate(); DataSet ds1; if (results[0].ToString() == "System.Data.DataSet"){ ds1 = (System.Data. DataSet)results[0]; DataTable dt = ds1.Tables[0];dgrdResults.DataSource = ds1; dgrdResults.DataMember = dt.TableName.ToString(); } dgrdResults.Refresh(); } }
In this case there are a couple of things to point out. First off, note the call to the WebService happens after I've attached the my credentials (See the line following the setup of the WebService).. Secondly, note that I am creating a DataSet by CASTing the first object returned to a DataSet.. Also note that I didn't really need to explicitly define the DataTable, but wanted to do that to show how it's all put together.
10月24日 SQL Server 2005 New FeaturesI just finished (Ok, last week) a presentation on some of the new features of SQL Server 2005 and what it means to those who wish to upgrade their database server to 2005. This presentation was given to the Rocky Mountain SQL Server Users Group (see http://www.rockymountainsql.org)..
The highlights of the presentation are as follows:
All in all, I think the session went pretty well. (We spent just over 2 hours going over these issues) My colleagues who were present had some good critisism of the presentation, but I think overall the people who attended were pretty happy with it..
9月22日 SQL Server PerformanceI've had several conversations over the last month with various colleagues on the topic of SQL Server performance.. It's interesting to note that while there is a TON of information available related to the subject, it seems that people still don't understand the subject all that well. It also interests me to note that many, many people still rely on the installation defaults for their production SQL servers..
I will be putting together some real information on this subject, and once we get over the hump that is the SQL Server 2005 launch, I will be presenting some sessions on this for the Rocky Mountain SQL Server users group. (See http://www.rockymountainsql.org) |
|
|