join the MSSQLTips community

MSSQLTips.com - your daily source for SQL Server tips

Google
 
Web mssqltips.com

 
August 2008 - Posts - Charley Hanania

MSSQLTips

MSSQLTips.com - your daily source for SQL Server tips
Welcome to MSSQLTips Sign in | Join | Help
in Search

Charley Hanania

August 2008 - Posts

  • SQL Server 2008 New Features Overview Part II - The BI Side!

    I'm happy to announce that we've got a session organised for the September Session of Swiss PASS Chapter / SwissITPro User Group on SQL Server 2008's New BI Features and enhancements! Thanks to the Microsoft Switzerland TechNet Team!

    Here are the details:

    Title:

    SQL Server 2008 – Business Intelligence

    Abstract:

    Microsoft SQL Server 2008 provides a scalable BI platform optimized for data integration, reporting, and analysis enabling organizations to deliver intelligence where users want it.
    New features like improved cube designers, MOLAP enabled write-back capabilities, easy creation and deployment of reports will be covered in the session.

    Speaker:

    Bernd Schneider – MCP, MCTS, MCSE
    Technical Solution Professional Business Intelligence
    Microsoft Switzerland


    Bernd Schneider works in a Technical Presales Position for Business Intelligence within Microsoft Switzerland. His main focus is Performance Management in the Enterprise Customers Segment.
    Before he worked as a Senior Consultant at an Austrian System Integrator in different areas and started working on SQL Server in 1996 (SQL Server 6.5).

    When:

    Tuesday, 2nd of September 2008 - 17:45 - 19:30

    Where:

    Digicomp Academy AG  (Zürich)
    Limmatstrasse 50
    CH-8005 Zürich
    Tel. +41 44 447 21 21

    Participation / attendance is free, and there's a light Apero (snacks & drinks) before and after.

    More details and Sign-up here:

     

    Thanks to Digicomp for their continued venue support and sponsorship!

     

    We expect the slide deck to be available on the SwissITPro website once its over, so keep an eye out for it!

     See you there!

  • SQL Server 2008 Certifications

    Hands up if you've gone through and completed all your SQL Server 2005 certs...

    OK, now leave your hands up if you feel that you've fully come to terms with all the SQL Server, AS & RS features that were in 2005.... Hmmm, thought so.  :o)

    Well, as I posted earlier, SQL Server 2008 is in RTM, soon to be available to all. A good time to start thinking about upgrade paths, both technology-wise and on the certification side as well.

    MS are doing a live meeting session focused on SQL Server 2008 Certification to help us all understand the changes, inclusions etc with a chance to ask questions at the end, I expect. Here's the link: SQL Server 2008 Certification - August 27, 2008, at 7:30 A.M. Pacific Time, with more information and livemeeting sessions on Trika's MSDN blog.

    What am I doing? Well, I'll be looking to re-certify on 2008 asap, as it is one of the only ways I motivate myself to read up and try out all the features apart from committing to present on the new features... On the knowledge upgrade side of things though, I would recommend (and will try to do myself as well) understanding and trying the features in 2005, then trying them out on 2008... For one, there'll be far more information out on blogs and websites on the 2005 base. Nothing worse than leaving a gap and creating an unstable foundation for myself, but that's the idealist in me ;o)

     

    Enjoy the Live meeting and Blog, best of luck in your preparations and exams if you're going down that track!

     

  • Microsoft's "SQL Server Playback" Program

    I got word from Microsoft about the "SQL Server Playback" Program, and thought it may be of interest to those who would like the MS SQL Server Product Team (the guys who write the code for MS SQL Server / AS / RS / SSIS etc) to "help" with systems that are complex or large in nature and may benefit from New features (or even break) with SQL Server 2008.

     

    Details below:

     

    The SQL Server Playback Program gives the Microsoft SQL Server team the opportunity to test customer workloads against early builds of SQL Server and makes a huge contribution to product quality. A backup of the production database and a synchronized SQL trace are supplied by the customer and then the SQL Test Team replays this SQL trace on future versions (internal builds) of SQL Server for regression testing purposes – this allows us to trap problems before any major release.

    The benefits to participants of this program is that their typical workload will be used for testing future versions of SQL Server thus ensuring a high quality product with fewer integration and performances issues.


    Playback Program Goals


    The Playback project is designed to stress test SQL Server using SQL Server Profiler and actual customer workloads.  SQL Profiler features a multithreaded playback engine that can simulate user connections and SQL Server Authentication allowing the reproduction of real-world activity in a trace file.  SQL Server activities can be replayed and analyzed in a variety of settings such as different replay rates, synchronization modes and logging.  Issues with high concurrency and stress environments and/or problems incurred with complex transaction combinations in SQL Server can also be illuminated via Playback testing.

    The testing areas of the program include the storage engine (locking, logging and recovery, buffer management, and access method), relational engine (cursors, query optimizer, query execution, ODS, UMS etc) and administration tools (SQL Profiler).  In addition, we are extending our program to include Analysis Services for traces captured on SQL Server 2005.

    Customers who provide a workload to Microsoft benefit through their participation by knowing that the transactions captured in their traces are executed before new service packs or versions of SQL Server are released to the public.


    The key factor in this approach is the use of real-life customer data. The combination of actual data backups and a trace provides a more realistic simulation of usage, which gives us coverage beyond standard testing methods.  In addition, our customers know their actual workloads are part of the SQL Server release process.


    Who Should Participate?


    Companies that make use of complex queries, have a mixed workload, or who are pushing the limits of SQL Server will gain most from this program.   ISV Partners will also get benefits as participation should decrease any integration issues with new SQL Server Release.

    Participation costs absolutely nothing!


    The program participant will commit to providing a backup & trace of their Production Database and workload.  Microsoft will exchange an NDA agreement with customers that will secure their data for this programs use only.


    What’s required to join the Playback Program?

    A tape, CD or DVD containing a backup of all user databases, and a profiler trace capture of database activity from a production environment for a period of time (e.g. 24hrs).

    • Capturing a trace generally imposes minimal overhead on the production operational environment
    • There is no need to stop the SQL Server at any point
    • We can return any tapes (or other media) used if you would like

     

    What kind of databases and workloads are we most interested in?

    • Large databases (e.g. >30Gb)
    • Databases containing localized data (e.g. Japanese, Chinese, Cyrillic)
    • More than 200 concurrent users
    • Applications using SQL in a unique way
    • Applications using SQL 2005 specific features
    • Applications using SQL 2005 Analysis Services
    • Applications using complex queries/SPs/triggers/UDFs/cursors or other aspects that challenge the server 

    What happens during the Playback Program?


    Upon receipt of the data files, a member of the Playback team will send an email to the customer acknowledging receipt and give an estimation of how long it will take to finish processing. Generally, it takes only a week to initially process a workload; however this can vary depending on the size of the data, time it takes to investigate issues, etc.  While we are processing the data, we will keep the customer apprised of the status and update the timeframe accordingly.  The customer is encouraged to contact us with any questions during that period.

    Here is a summary of the steps that we go through for any new playback:

    • Run the workload as a baseline test using the same version of SQL Server as the customer.
    • Run the workload as a baseline test against new versions of SQL Server under development.
    • Run code coverage, database analysis, and trace analysis utilities against the workload. These utilities give a summary of the database characteristics (e.g. how many tables, rows, fragmentation) as well as trace characteristics (#selects, updates, inserts etc).
    • Execute the workload before the release of any major SQL version to verify that the playback still passes and that there are no new bugs or regressions.
       

    What's in it for the customer?
     
    The playback will be used by the Microsoft SQL Server product team to internally test against SQL builds under development which will ensure even better levels of quality and performance in SQL Server.  We have found that using real world customer databases and workloads is an excellent way to test SQL.

    Knowing that we have tested a customer’s workload on SQL 2000 SPx (for example), the customer is likely to encounter significantly fewer issues.  In effect, we are doing a good deal of testing on your behalf for free!


    We also occasionally send gifts including shirts or other “goodies” to let our customers know how much we appreciate their efforts to help making SQL Server even better!


    What About Security?


    Since getting a playback requires the customer sending us their database and workload, security is naturally of the utmost importance to us.  Customer workloads will be used only by the SQL team for testing purposes, and will not be distributed to anyone else whatsoever, for any purpose.
     
    All playbacks are held on a secure storage server where only the SQL team has access.  Furthermore all media (tapes, CDs etc) are stored in a locked cabinet room.  We will also provide a two-way signed Non Disclosure Agreements (NDA) upon request.


    How do l join?


    Simple, just email Microsoft at sqlplay@microsoft.com!

  • Message from TechNet Flash: SQL Server 2008 released!

    Okay, SQL Server 2008 RTM (Released to Manufacturing) is here! Good news to all those looking to purchase and deploy as soon as possible.

     If you're a TechNet subscriber you can download it now (as described below). If not, then it's a little more of a wait.

    The links from Mitch's email are great though for you to get more information, enjoy the content!

     

    ------------------------------------------------

    August 6, 2008

    Note from the Editor
    Greetings,
    The wait is over. SQL Server 2008 has been released and is ready to deliver a rich set of integrated services that enable you to do more with your data, such as query, search, synchronize, report, and analyze. Many of you have been evaluating the SQL Server 2008 betas, and may be ready to try out the RTM version. TechNet Plus subscribers can find RTM versions now available for download. Speaking of TechNet Plus, read Keith Combs' Blahg for his take on the UI improvements for the newly revamped TechNet Plus Subscriber Downloads page.

    TechNet Magazine recently published an overview of the key changes and what you can expect from SQL Server 2008. You can also get a rundown of the various editions and components of SQL Server 2008 and take part in SQL Server 2008 tutorials.

    For more overview resources, check out:
    If you are looking for assistance with SQL Server 2008 planning and installation, here are some helpful links:
    Once you've installed SQL Server 2008, these resources can help you optimize your database environment:
    You can also find guidance for upgrading to SQL Server 2008 or migrating to SQL Server 2008. If you are upgrading, be sure to check out Using Upgrade Advisor to Prepare For Upgrades.

    From our partners, you can find local partners offering SQL Server 2008 solutions or find training partners near you offering official Microsoft courses that will help you get certified on SQL Server 2008. In addition, you can search for local in-person events and online webcasts on SQL Server 2008.

    And finally, from the August edition of TechNet Magazine, Paul Randal answers your SQL Server questions, showing you how to perform consistency checks, how to handle an accidental upgrade, and more in the SQL Q&A column.
    Mitch Irsfeld
    Editor, TechNet Flash
  • SQL Server Consolidation

    SQL Server consolidation seems to be have turned into of those strange and wonderful idioms that came to us from a galaxy far far away, and similar to men in blue tights and red capes, are to be looked at in wonder, the symbol of how we all should be, but so far away from our lives of normality and simpler existence that it doesn't really matter.

    Why the cynicism? No reason really but to to say that I get asked about it all the time, and although its a moot point to most techies, many DBAs in a larger set of organizations can't seem to get it implemented. What's that tell me? It tells me that our platform is becoming more and more about sloppy standards and politics than it used to be. The DBA's fault? No, or yes... well, its hard to say.... I'm listing some of the reasons that managers and DBAs alike have suggested to be the cause:

    • The politics of some organizations and teams that have more "dollars than sense", allowing the term RAD (Rapid Application Development) to mean bring it in quick, and don't worry about how long it will work for;
    • Lack of knowledge/understanding of how to do it and do it well, so when its attempted it kills the server(s) and makes subsequent attempts impossible;
    • The infamous "Rogue Query of Death";
    • SQL Server's so cheap that we'd spend more on trying to build a good consolidated environment and processes than on the licenses;
    • I want everything on one box;
    • The app uses SA;
    • Its too much effort to migrate and test my app in a shared environment;
    • SQL Server doesn't manage lots of databases in one instance well;
    • You wouldn't be able to manage disaster recovery;
    • Concentration Risk (having many non critical db's offline at the same time turns into a critical issue as many systems/teams are then unable to work)
    • Its too hard to track what's going on within the instance;
    • Applying hot fixes and patches then affects everyone within the instance;
    • ...and the list goes on...


    Are these issues and reasons valid? Yes, for some of the items, definitely... For others no. These issues and views exist in organizations of all sizes, but in many cases the issues listed are ones that you should be actively working to resolve. MS SQL Server has a wealth of features, is extremely flexible, and lends itself to be developed against by a very broad range of people with varying skill sets and business priorities. But that doesn't mean that caution should be thrown to the wind to get an app, web page or service up and running.

    Does a consolidated approach fit every scenario out there? No way and by no stretch of the imagination, but organizations that don't have it as the basis of its development and operations approaches are asking for trouble. Even Microsoft is affected adversely by it! Yes it (potentially) generates more revenue and skews the deployment numbers positively, but it also lends MS SQL Server based systems to losing credibility and being labeled as "small time", "unstable" and "not enterprise ready" and eventually "too expensive".

    My opinion is that databases should be designed to be as simple as possible, using the abstracted database object approach (3rd normal form, stored procs, functions etc); for apps to use extended functionality outside of the database scope only when truly necessary (not when its cool); and to spend money / effort on new SQL instances or installations when simpleton databases are not viable, like for truly business critical or performance critical apps, VLDB's and complex applications/databases.

    Why? because IMO its far more cost, resource and time efficient to focus efforts on supporting and managing 100 low priority and complexity databases in 1 instance than 1 or 2 databases on 70 - 100 instances/servers.

    Lets look at some of the duplications of effort and other issues:

    • Active directory bloating: Instead of say 10 consolidated database servers with another 10 shared web and application (farmed) servers and 15 critical database servers with their associated application servers in production, you could well have 400 servers with SQL Server and other apps and sites installed on them and the same number of critical database and associated servers as well. You bloat the AD, and you increase the management needed of the AD, the network traffic on heartbeats and ACKs alone could (indirectly) affect performance, and patching / monitoring needs to be as efficient and robust as the larger enterprises. Completely unnecessary
    • Hardware: Nowadays its not about how many servers you've got, its about cores, power consumption, storage consumption, rack space and datacentre/server room space. Use the hardware efficiently and you'll save in the sourcing and maintenance costs, as well as all the associated costs on the datacentre, server room and licensing levels.
    • Head Count: I'm all for people being employed to earn a living, but I hate to see people misused, idle or frustrated. If you simplify architectures into servers that fulfill specific tasks, you're able to manage those resources better, and then align team members to focused efforts on areas such as business analysis, content development, performance tuning, recovery planning etc... overall, you reduce head count or better utilise the human resources at hand through clarity of architecture and governance.
    • Environmental Complexity: Root cause analysis is simplified as you don't have as many application components of varying types on the same machine. Assign roles, processes, standards and procedures to the different components of your network and you know where you stand. Governance and clarity on this level then means that you can delegate responsibility of those components to people who are skilled in those areas - Presto: segregation of duties and beginnings of change management!
    • Patching: Simple example... Have SQL Server "essential" components installed on a database server, and you don't have to send IIS patches to it.
    • Security: Establish a standard or approach of databases being on another (locked down) server and you start to "encourage" secure development and administration practices (if you don't already). So many issues in terms of security with SQL Server and all other DBMS's are resolved when good practices are in force. SQL Server is a step ahead of the curve for example, with the ability to manage security through AD groups and users, and be able to allocate the lowest needed privileges to users, developers and administrators of the various functions. Manage domain user/group access, and passwords on the AD, and SQL Server principals and securables in the instance/database...
    • "PAD" - Protracted Application Development: Its true, and I've seen it happen in many places... You know how they say that we men don't like reading instructions? My wife insists that it would take me far less time to build an Ikea shelf if I didn't try to put it together first, then have to do parts of it again when there were parts that didn't "exactly" fit or the shelf just didn't stand... Create a design, development and maintenance process that makes sense and works and you'll see the first application development cycle take longer as you massage ego's, processes and communications, but then the 2nd, 3rd etc apps following the same structured methodology for app and database design, app and database object development and testing, then cyclic integration (even automated) testing and rollout prove to be water off a duck's back.

    There are other areas as well, which can be looked at in followup posts...

    You'll notice that I haven't mentioned virtualization... To me the terms consolidation and virtualisation are very very different... I'll leave that comparison to another entry also...

    BTW: feel free to download the presentation on SQL Server Consolidation from a Quest "SQL Server Club" Meeting held in Lausanne, Switzerland earlier this year here. It should also be available on www.SwissITPro.ch