<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Rob Tiffany's Windows Mobile Accelerator : SQL Server</title><link>http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server/default.aspx</link><description>Tags: SQL Server</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>New Blog Site @ http://robtiffany.com</title><link>http://blogs.msdn.com/robtiffany/archive/2009/12/23/new-blog-site-http-robtiffany-com.aspx</link><pubDate>Wed, 23 Dec 2009 23:58:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9940787</guid><dc:creator>robtiffany</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/robtiffany/comments/9940787.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robtiffany/commentrss.aspx?PostID=9940787</wfw:commentRss><description>&lt;P&gt;Hey everyone,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Just wanted to let you know that I'm continuing this blog over&amp;nbsp;at &lt;A title="Rob Tiffany" href="http://robtiffany.com/" target=_blank mce_href="http://robtiffany.com"&gt;robtiffany.com&lt;/A&gt;.&amp;nbsp; I've finally decided to make better use of my personal Domain name and I'm switching to WordPress from the blog management system we use at MSDN.&amp;nbsp; As a Mobility Architect at Microsoft, I will continue to give you my insights into the exciting world of Windows phones, wireless technologies, mobile hardware, the mobile web&amp;nbsp;and Microsoft's mobile enterprise application platform (MEAP).&amp;nbsp; Don't worry, you'll be getting my take on competing technologies as well.&amp;nbsp; I enjoy seeing many of you both at Microsoft and at the events that I speak at all around the world.&amp;nbsp; Now you have another place to hear from me.&amp;nbsp; Come visit and subscribe to my RSS feed over at &lt;A title="Rob Tiffany" href="http://robtiffany.com/" target=_blank mce_href="http://robtiffany.com"&gt;robtiffany.com&lt;/A&gt;.&amp;nbsp; Happy Holidays everyone!&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Best Regards,&lt;/P&gt;
&lt;P&gt;Rob&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9940787" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SSCE/default.aspx">SSCE</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Mobile/default.aspx">Windows Mobile</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Replication/default.aspx">Replication</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/.NET+Compact+Framework/default.aspx">.NET Compact Framework</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server+2005+Compact+Edition/default.aspx">SQL Server 2005 Compact Edition</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Smartphone/default.aspx">Smartphone</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Wireless/default.aspx">Wireless</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server+Compact/default.aspx">SQL Server Compact</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Sync/default.aspx">Sync</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Merge+Replication/default.aspx">Merge Replication</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Republishing/default.aspx">Republishing</category></item><item><title>What ever happened to RDA?</title><link>http://blogs.msdn.com/robtiffany/archive/2009/09/22/what-ever-happened-to-rda.aspx</link><pubDate>Wed, 23 Sep 2009 03:54:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9898243</guid><dc:creator>robtiffany</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/robtiffany/comments/9898243.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robtiffany/commentrss.aspx?PostID=9898243</wfw:commentRss><description>&lt;P&gt;&lt;STRONG&gt;Who remembers using Remote Data Access to synchronize data between SQL Server and SQL Server Compact?&amp;nbsp; I certainly do!&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Before I dove head first into the world of Merge Replication, I always used RDA to get my customers up and running quickly.&amp;nbsp; Mobilizing an organization’s workforce quickly and easily is what it’s all about so they can start reaping the benefits.&amp;nbsp; In addition to a speedy time to market, there’s no faster or more scalable mobile sync technology on the market anywhere.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;So why wouldn’t I always use RDA?&amp;nbsp; Here’s a quick list:&lt;/STRONG&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;You’re using Identity columns. &lt;/LI&gt;
&lt;LI&gt;You want to replicate schema changes to the client. &lt;/LI&gt;
&lt;LI&gt;You want change tracking on both the client and server to perform diffs of each of the tables during a sync instead of re-downloading the entire table. &lt;/LI&gt;
&lt;LI&gt;You want to automatically resolve conflicts that arise when 2 people update the same data. &lt;/LI&gt;
&lt;LI&gt;You want referential integrity constraints to be pushed down to the client database from SQL Server. &lt;/LI&gt;
&lt;LI&gt;You don’t want to write code to perform synchronization or filter data. &lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;If anything on the above list applied to you, you would shift to Merge Replication because it could manage ranges of Identity columns, push down schema changes, only sync data differences, resolve conflicts and push down a database’s referential integrity constraints.&amp;nbsp; Merge requires almost no code to get started and tables and columns are filtered visually via a wizard.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;So why might you choose to use RDA?&amp;nbsp; Here’s another list:&lt;/STRONG&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Your Primary Keys use GUIDs instead of Identity columns. &lt;/LI&gt;
&lt;LI&gt;Users don’t overwrite each other’s data so you don’t need conflict resolution.&amp;nbsp; The rule of “Last in Wins” works for you. &lt;/LI&gt;
&lt;LI&gt;While you want indexes to be pushed down, you don’t care if your local SSCE database has referential integrity constraints applied. &lt;/LI&gt;
&lt;LI&gt;You want to wrap the changes you upload to SQL Server in a transaction so that all changes are applied or none of them are. &lt;/LI&gt;
&lt;LI&gt;Change tracking on the client is good enough and re-downloading updated server tables doesn’t take too long. &lt;/LI&gt;
&lt;LI&gt;You developers don’t mind writing some sync code. &lt;/LI&gt;
&lt;LI&gt;Be able to execute SQL and Stored Procedures directly against SQL Server via IIS.&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;If your solution meets the criteria in the list above, you’re probably a good candidate for using RDA instead of Merge.&amp;nbsp; Are there any other choices out there?&lt;/P&gt;
&lt;P&gt;Back at MEDC 2007, we announced a new data replication technology for devices called Occasionally Connected Sync that would sit somewhere between RDA and Merge.&amp;nbsp; OCS as it used to be called was renamed Sync Services for ADO.NET and then was eventually merged into the Sync Framework.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;The Sync Framework is a developer-focused technology:&lt;/STRONG&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Supports conflict resolution. &lt;/LI&gt;
&lt;LI&gt;Change tracking on the server as well as the client so that only data differences are exchanged. &lt;/LI&gt;
&lt;LI&gt;Peer to Peer sync in the forthcoming v2 of Sync Framework. &lt;/LI&gt;
&lt;LI&gt;Sync with databases other than SQL Server. &lt;/LI&gt;
&lt;LI&gt;Best suited for SSCE running on a desktop or laptop. &lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;The clearest differentiation that the Sync Framework has over Merge is its provider model which allows it to sync with other ADO.NET databases like Oracle or DB2.&amp;nbsp; SQL Server supports built-in P2P Transactional replication and v2 of the Sync Framework will allow you to do this via WCF.&amp;nbsp; If you development team doesn’t mind writing lots of sync code and needs to support scenarios like synchronizing with other databases from SSCE on the desktop, then the Sync Framework might be the way to go for you.&amp;nbsp; I wouldn’t yet recommend the Sync Framework for device sync since its wire protocol is currently based on the DataSet which may cause out of memory errors on Windows phones with limited working sets.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;So where does this leave RDA?&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;The reason I’m writing this blog post is because time and time again I run into customer sync scenarios that don’t always need the power of Merge or the extra flexibility of the Sync Framework.&amp;nbsp; Most field service applications follow the same kind of pattern:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Lots of download-only lookup/reference tables that aren’t changed by the user. &lt;/LI&gt;
&lt;LI&gt;Tables that are pushed down to the device that tell a user where to go and what to do. &lt;/LI&gt;
&lt;LI&gt;Tables (sometimes empty) that are used to capture data from the user in the field that are upload-only. &lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;These kinds of schemas don’t require conflict resolvers or server change tracking and are therefore well suited for RDA.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;What’s the big benefit of using RDA if a sync scenario meets its criteria?&lt;/STRONG&gt;&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;You won’t modify SQL Server’s schema with GUIDs and Triggers. &lt;/LI&gt;
&lt;LI&gt;You won’t degrade the performance of SQL Server by having it track changes and maintain extra metadata. &lt;/LI&gt;
&lt;LI&gt;You will have the fastest and most scalable sync solution with least amount of hardware. &lt;/LI&gt;
&lt;LI&gt;Time to market is shorter. &lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;The big takeaway here is that I want you to consider your sync solution carefully before choosing a technology.&amp;nbsp; If your customer’s needs are met by RDA, then you should use it and reap the benefits of developing and deploying a simpler solution with fewer moving parts.&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Remember Occam's Razor.&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;-Rob&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9898243" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Merge/default.aspx">Merge</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SSCE/default.aspx">SSCE</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Mobile/default.aspx">Windows Mobile</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Replication/default.aspx">Replication</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server+2005+Compact+Edition/default.aspx">SQL Server 2005 Compact Edition</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Smartphone/default.aspx">Smartphone</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/IIS/default.aspx">IIS</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server+Compact/default.aspx">SQL Server Compact</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Sync/default.aspx">Sync</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Sync+Framework/default.aspx">Sync Framework</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Sync+Services+for+ADO.NET/default.aspx">Sync Services for ADO.NET</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Merge+Replication/default.aspx">Merge Replication</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Pocket+PC/default.aspx">Pocket PC</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/RDA/default.aspx">RDA</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Remote+Data+Access/default.aspx">Remote Data Access</category></item><item><title>Rise of the Psuedo Smartphones</title><link>http://blogs.msdn.com/robtiffany/archive/2009/07/17/rise-of-the-psuedo-smartphones.aspx</link><pubDate>Sat, 18 Jul 2009 03:50:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9838092</guid><dc:creator>robtiffany</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/robtiffany/comments/9838092.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robtiffany/commentrss.aspx?PostID=9838092</wfw:commentRss><description>&lt;P&gt;&lt;STRONG&gt;What do the following feature phones have in common?&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;LG Dare&lt;/LI&gt;
&lt;LI&gt;LG Voyager&lt;/LI&gt;
&lt;LI&gt;LG Versa&lt;/LI&gt;
&lt;LI&gt;LG enV Touch&lt;/LI&gt;
&lt;LI&gt;LG Rumour 2&lt;/LI&gt;
&lt;LI&gt;LG Lotus&lt;/LI&gt;
&lt;LI&gt;LG Neon&lt;/LI&gt;
&lt;LI&gt;LG Xenon&lt;/LI&gt;
&lt;LI&gt;LG VU&lt;/LI&gt;
&lt;LI&gt;Samsung Alias 2&lt;/LI&gt;
&lt;LI&gt;Samsung Gravity&lt;/LI&gt;
&lt;LI&gt;Samsung Behold&lt;/LI&gt;
&lt;LI&gt;Samsung Highlight&lt;/LI&gt;
&lt;LI&gt;Samsung Memoir&lt;/LI&gt;
&lt;LI&gt;Samsung Propel&lt;/LI&gt;
&lt;LI&gt;Samsung Rant&lt;/LI&gt;
&lt;LI&gt;Samsung Exclaim&lt;/LI&gt;
&lt;LI&gt;Samsung Instinct&lt;/LI&gt;
&lt;LI&gt;Samsung Magnet&lt;/LI&gt;
&lt;LI&gt;Samsung Eternity&lt;/LI&gt;
&lt;LI&gt;Samsung Impression&lt;/LI&gt;
&lt;LI&gt;Sanyo SCP-2700&lt;/LI&gt;
&lt;LI&gt;AT&amp;amp;T Quickfire&lt;/LI&gt;
&lt;LI&gt;Pantech Matrix&lt;/LI&gt;
&lt;LI&gt;Motorola Karma&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;STRONG&gt;They include features like:&lt;/STRONG&gt;&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;High-Megapixel Cameras w/Zoom&lt;/LI&gt;
&lt;LI&gt;GPS&lt;/LI&gt;
&lt;LI&gt;Touch Screen&lt;/LI&gt;
&lt;LI&gt;QWERTY Keyboards&lt;/LI&gt;
&lt;LI&gt;Play Music&lt;/LI&gt;
&lt;LI&gt;Play Videos&lt;/LI&gt;
&lt;LI&gt;Web Browser&lt;/LI&gt;
&lt;LI&gt;Email&lt;/LI&gt;
&lt;LI&gt;Games &lt;/LI&gt;
&lt;LI&gt;Apps&lt;/LI&gt;
&lt;LI&gt;Instant Messaging&lt;/LI&gt;
&lt;LI&gt;3G&lt;/LI&gt;
&lt;LI&gt;Stereo Bluetooth&lt;/LI&gt;
&lt;LI&gt;Video Capture&lt;/LI&gt;
&lt;LI&gt;SD Card Storage&lt;/LI&gt;
&lt;LI&gt;Calendar&lt;/LI&gt;
&lt;LI&gt;Contacts&lt;/LI&gt;
&lt;LI&gt;Quad-Band GSM&lt;/LI&gt;
&lt;LI&gt;Voice Dialing&lt;/LI&gt;
&lt;LI&gt;Alarm&lt;/LI&gt;
&lt;LI&gt;Calculator&lt;/LI&gt;
&lt;LI&gt;Photo Album&lt;/LI&gt;
&lt;LI&gt;SMS&lt;/LI&gt;
&lt;LI&gt;MMS&lt;/LI&gt;
&lt;LI&gt;Wi-Fi&lt;/LI&gt;
&lt;LI&gt;Internet Tethering&lt;/LI&gt;
&lt;LI&gt;Slide-out Keyboard&lt;/LI&gt;
&lt;LI&gt;Turn-by-Turn Navigation&lt;/LI&gt;
&lt;LI&gt;Push to Talk&lt;/LI&gt;
&lt;LI&gt;Radio&lt;/LI&gt;
&lt;LI&gt;Hi-res Graphics&lt;/LI&gt;
&lt;LI&gt;Streaming XM/Sirius&lt;/LI&gt;
&lt;LI&gt;Mobile TV&lt;/LI&gt;
&lt;LI&gt;Java&lt;/LI&gt;
&lt;LI&gt;Facebook&lt;/LI&gt;
&lt;LI&gt;MySpace&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;We consider phones with advanced mobile operating systems like Windows Mobile, Blackberry, iPhone, Symbian, and WebOS to be Smartphones.&amp;nbsp; When I look at the list of features above, I think most people in world would have a hard time distinguishing between what we call Smartphones and the rising tide of super-charged feature phones.&amp;nbsp; At a 30,000 ft level, a published&amp;nbsp;API and development tools that allow you to create rich applications to access databases and remote servers may be the only distinction.&amp;nbsp; Of course that would be a slight againt Java ME that's found on over a billion feature phones.&amp;nbsp; I would venture to guess that 99% of the buying public can't tell the difference and may not even care as long as the price is right.&lt;/P&gt;
&lt;P&gt;The&amp;nbsp;big takeaway is that the large chasm that used to exist between feature phones and Smartphones has diminished dramatically.&amp;nbsp; In the coming years, Smartphone OS and hardware manufacturers have no choice but to innovate in a big way in order to put some distance between themselves and the clones attacking them from below or risk becoming commoditized and irrelevant.&lt;/P&gt;
&lt;P&gt;- Rob&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9838092" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Mobile/default.aspx">Windows Mobile</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Smartphone/default.aspx">Smartphone</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Wireless/default.aspx">Wireless</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/GSM/default.aspx">GSM</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/EV-DO/default.aspx">EV-DO</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Invention/default.aspx">Invention</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Ideas/default.aspx">Ideas</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Innovation/default.aspx">Innovation</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Mobile+Web/default.aspx">Mobile Web</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Apple/default.aspx">Apple</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SDK/default.aspx">SDK</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/iPhone/default.aspx">iPhone</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Pocket+PC/default.aspx">Pocket PC</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Java/default.aspx">Java</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Blackberry/default.aspx">Blackberry</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Symbian/default.aspx">Symbian</category></item><item><title>Mobile Architecture Pocket Guide v1.1</title><link>http://blogs.msdn.com/robtiffany/archive/2009/01/17/mobile-architecture-pocket-guide-v1-1.aspx</link><pubDate>Sat, 17 Jan 2009 21:01:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9336308</guid><dc:creator>robtiffany</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/robtiffany/comments/9336308.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robtiffany/commentrss.aspx?PostID=9336308</wfw:commentRss><description>&lt;P&gt;Just wanted to let everyone know that version 1.1 of the &lt;SPAN class=CodePlexPageHeader id=ctl00_ctl00_MasterContent_Content_TitleLabel&gt;Mobile Architecture Pocket Guide&lt;/SPAN&gt; is now available on CodePlex at &lt;A href="http://www.codeplex.com/AppArch/Release/ProjectReleases.aspx?ReleaseId=19798" mce_href="http://www.codeplex.com/AppArch/Release/ProjectReleases.aspx?ReleaseId=19798"&gt;http://www.codeplex.com/AppArch/Release/ProjectReleases.aspx?ReleaseId=19798&lt;/A&gt;.&amp;nbsp; This is the first patterns &amp;amp; practices update to this guide since 2002 so it's a welcome sight to to have it out there for all our Windows Mobile developers.&lt;/P&gt;
&lt;P&gt;I've spent the last couple of months working with J.D. Meier, Rabi Satter, Rob Boucher and the rest of the P&amp;amp;P team&amp;nbsp;to tune, tweak and update the new Mobile Architecture Pocket Guide to ensure that it's as accurate and relevant to today's Windows Mobile platform and runtimes as possible.&amp;nbsp; The guide's chapters include:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Ch 01&amp;nbsp;&amp;gt; Mobile Application Architecture 
&lt;LI&gt;Ch 02&amp;nbsp;&amp;gt; Architecture and Design Guidelines 
&lt;LI&gt;Ch 03&amp;nbsp;&amp;gt; Presentation Layer Guidelines 
&lt;LI&gt;Ch 04&amp;nbsp;&amp;gt; Business Layer Guidelines 
&lt;LI&gt;Ch 05&amp;nbsp;&amp;gt; Data Access Layer Guidelines 
&lt;LI&gt;Ch 06&amp;nbsp;&amp;gt; Service Layer Guidelines 
&lt;LI&gt;Ch 07&amp;nbsp;&amp;gt; Communication Guidelines 
&lt;LI&gt;Ch 08&amp;nbsp;&amp;gt; Deployment Patterns &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Our goal is to empower our Windows Mobile developer community as much as possible, and while this guide may seem like it's targeted exclusively to developers, I ensured that the IT Pro side of the house is &lt;SPAN style="FONT-SIZE: 11pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi"&gt;accommodated &lt;/SPAN&gt;as well.&amp;nbsp; Mobile infrastructure elements of this guide include System Center Mobile Device Manager (Deployment), SQL Server (Sync Services&amp;nbsp;+ Merge), IIS (Web Services +&amp;nbsp;Sync + WCF), Exchange (WCF Store and Forward) and Active Directory (Auth).&lt;/P&gt;
&lt;P&gt;Download it,&amp;nbsp;take if for a spin, and give us your feedback so we can keep improving it.&lt;/P&gt;
&lt;P&gt;- Rob&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9336308" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Merge/default.aspx">Merge</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SSCE/default.aspx">SSCE</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Mobile/default.aspx">Windows Mobile</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Replication/default.aspx">Replication</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/.NET+Compact+Framework/default.aspx">.NET Compact Framework</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Smartphone/default.aspx">Smartphone</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Wireless/default.aspx">Wireless</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/IIS/default.aspx">IIS</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Server/default.aspx">Windows Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Active+Directory/default.aspx">Active Directory</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Custom+Controls/default.aspx">Custom Controls</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Security/default.aspx">Security</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/WCF/default.aspx">WCF</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/LINQ/default.aspx">LINQ</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Mobile+Web/default.aspx">Mobile Web</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SDK/default.aspx">SDK</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server+Compact/default.aspx">SQL Server Compact</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Sync/default.aspx">Sync</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Sync+Framework/default.aspx">Sync Framework</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Sync+Services+for+ADO.NET/default.aspx">Sync Services for ADO.NET</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Merge+Replication/default.aspx">Merge Replication</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Pocket+PC/default.aspx">Pocket PC</category></item><item><title>See you in Barcelona for Tech Ed EMEA Dev</title><link>http://blogs.msdn.com/robtiffany/archive/2008/11/07/see-you-in-barcelona-for-tech-ed-emea-dev.aspx</link><pubDate>Fri, 07 Nov 2008 19:14:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9052478</guid><dc:creator>robtiffany</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/robtiffany/comments/9052478.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robtiffany/commentrss.aspx?PostID=9052478</wfw:commentRss><description>&lt;P&gt;&lt;IMG title="Tech Ed EMEA" style="WIDTH: 554px; HEIGHT: 74px" height=79 alt="Tech Ed EMEA" src="http://farm4.static.flickr.com/3026/3010814268_02d772bb84.jpg?v=0" width=500 mce_src="http://farm4.static.flickr.com/3026/3010814268_02d772bb84.jpg?v=0"&gt;&lt;/P&gt;
&lt;P&gt;Looking forward to seeing lots of familiar faces and meeting new ones starting December 10th at Tech Ed EMEA!&amp;nbsp; While I ran the Windows Mobile track for Tech Ed North America last June in Orlando, this time around I'll just be delivering a couple of presentations and spending most of my time helping empower delegates to create incredible mobile applications.&amp;nbsp; I'll be delivering the following breakout&amp;nbsp;sessions:&lt;/P&gt;
&lt;P&gt;
&lt;TABLE class="" style="WIDTH: 555px; BORDER-COLLAPSE: collapse; HEIGHT: 396px" width=555 border=1&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class="" style="BACKGROUND: lightgrey" colSpan=5&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top&gt;&lt;!--&lt;a href="vcal.aspx?SessionID=65987321-8208-452a-b4bc-befcb98f5156"&gt;&lt;img src="resources/images/addcal.gif" border=0&gt;&lt;/a&gt;--&gt;&lt;/TD&gt;
&lt;TD class="" vAlign=top width=100&gt;&lt;B&gt;MBL301&lt;/B&gt; &lt;/TD&gt;
&lt;TD class="" vAlign=top&gt;&lt;B&gt;What's New in the Windows Mobile Line of Business Solution Accelerator 2008&lt;/B&gt; &lt;/TD&gt;
&lt;TD class="" vAlign=top&gt;November 10 16:00 - 17:15 &lt;/TD&gt;
&lt;TD class="" vAlign=top&gt;Room 121 &lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" colSpan=5&gt;&lt;I&gt;This session walks through the new features that we have added to the Windows Mobile Line of Business Accelerator 2008; features such as adapting your application to any device or screen size with a single binary, sync services, store and forward, and advanced data access objects with Microsoft .NET CF 3.5.&lt;/I&gt; &lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" colSpan=5&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" style="BACKGROUND: lightgrey" colSpan=5&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" vAlign=top&gt;&lt;!--&lt;a href="vcal.aspx?SessionID=e952d144-33e4-4602-8339-0350d5834668"&gt;&lt;img src="resources/images/addcal.gif" border=0&gt;&lt;/a&gt;--&gt;&lt;/TD&gt;
&lt;TD class="" vAlign=top width=100&gt;&lt;B&gt;MBL310&lt;/B&gt; &lt;/TD&gt;
&lt;TD class="" vAlign=top&gt;&lt;B&gt;Mobilize your Enterprise and Achieve Global Scalability with Windows Mobile and SQL Server Compact&lt;/B&gt; &lt;/TD&gt;
&lt;TD class="" vAlign=top&gt;November 11 15:15 - 16:30 &lt;/TD&gt;
&lt;TD class="" vAlign=top&gt;Room 121 &lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" colSpan=5&gt;&lt;I&gt;With the world's largest organizations rolling out tens of thousands of Windows Mobile devices to empower their respective workforces, the ability to create mobile line-of-business solutions that can support large user populations is critical. Based on his third book on Windows Mobile development, Rob Tiffany shows you how to take the Microsoft SQL Server data you use to run your organization and make it available to all your mobile employees. Utilizing the performance, scale-out, and filtering capabilities of Merge Replication Republishing, Rob shows you how to build an n-tier mobile synchronization architecture designed to scale to hundreds of thousands of devices. Take the guesswork out of mobilizing your enterprise by tapping into the experience of one of the world's foremost authorities on Windows Mobile infrastructure and development.&lt;/I&gt; &lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" colSpan=5&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="" style="BACKGROUND: lightgrey" colSpan=5&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/P&gt;
&lt;P&gt;See you there!&lt;/P&gt;
&lt;P&gt;- Rob&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9052478" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Merge/default.aspx">Merge</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SSCE/default.aspx">SSCE</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Mobile/default.aspx">Windows Mobile</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Replication/default.aspx">Replication</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/.NET+Compact+Framework/default.aspx">.NET Compact Framework</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server+2005+Compact+Edition/default.aspx">SQL Server 2005 Compact Edition</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Smartphone/default.aspx">Smartphone</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Wireless/default.aspx">Wireless</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/IIS/default.aspx">IIS</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Book/default.aspx">Book</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Author/default.aspx">Author</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Publisher/default.aspx">Publisher</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/MEDC/default.aspx">MEDC</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/MVP/default.aspx">MVP</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Tech+Ed/default.aspx">Tech Ed</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server+Compact/default.aspx">SQL Server Compact</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Sync/default.aspx">Sync</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Sync+Framework/default.aspx">Sync Framework</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Sync+Services+for+ADO.NET/default.aspx">Sync Services for ADO.NET</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Republishing/default.aspx">Republishing</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Pocket+PC/default.aspx">Pocket PC</category></item><item><title>Chapter 1 of my new Book is Ready!</title><link>http://blogs.msdn.com/robtiffany/archive/2008/10/23/chapter-1-of-my-new-book-is-ready.aspx</link><pubDate>Fri, 24 Oct 2008 04:12:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9013958</guid><dc:creator>robtiffany</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/robtiffany/comments/9013958.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robtiffany/commentrss.aspx?PostID=9013958</wfw:commentRss><description>&lt;H3&gt;Mobile Data Synchronization with Microsoft SQL Server 2005 and SQL Server Compact &amp;gt; Second Edition&lt;/H3&gt;
&lt;H4&gt;&lt;STRONG&gt;Achieving Global Scalability via Merge Replication Republishing&lt;/STRONG&gt;&lt;/H4&gt;
&lt;P&gt;Download and review the PDF from my Windows Live SkyDrive @ &lt;/P&gt;
&lt;P&gt;&lt;A href="http://cid-8b9c82da88af61fc.skydrive.live.com/self.aspx/Sync/Ch%201.pdf" mce_href="http://cid-8b9c82da88af61fc.skydrive.live.com/self.aspx/Sync/Ch%201.pdf"&gt;http://cid-8b9c82da88af61fc.skydrive.live.com/self.aspx/Sync/Ch%201.pdf&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/robtiffany/WindowsLiveWriter/Chapter1ofmynewBookisReady_FFFA/ContosoSM_2.jpg"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=484 alt=ContosoSM src="http://blogs.msdn.com/blogfiles/robtiffany/WindowsLiveWriter/Chapter1ofmynewBookisReady_FFFA/ContosoSM_thumb.jpg" width=364 border=0&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;The new book shows you how to scale out your Merge Replication Architecture with Republishing.&amp;nbsp; It's chock full of new insight to show you how to get the most performance and scalability out of your system.&amp;nbsp; It also shows you how to make replication Subscriptions available to the Internet via ISA Server 2006 or System Center Mobile Device Manager.&lt;/P&gt;
&lt;P&gt;Check it out and let me know what you think.&lt;/P&gt;
&lt;P&gt;Best Regards,&lt;/P&gt;
&lt;P&gt;Rob&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9013958" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Merge/default.aspx">Merge</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SSCE/default.aspx">SSCE</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Mobile/default.aspx">Windows Mobile</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Replication/default.aspx">Replication</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/.NET+Compact+Framework/default.aspx">.NET Compact Framework</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server+2005+Compact+Edition/default.aspx">SQL Server 2005 Compact Edition</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Smartphone/default.aspx">Smartphone</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Wireless/default.aspx">Wireless</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/CDMA/default.aspx">CDMA</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/GSM/default.aspx">GSM</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/UMTS/default.aspx">UMTS</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/EV-DO/default.aspx">EV-DO</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/IIS/default.aspx">IIS</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Server/default.aspx">Windows Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Security/default.aspx">Security</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/RSA/default.aspx">RSA</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Book/default.aspx">Book</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Publisher/default.aspx">Publisher</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Apple/default.aspx">Apple</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server+Compact/default.aspx">SQL Server Compact</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Sync/default.aspx">Sync</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Sync+Framework/default.aspx">Sync Framework</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Sync+Services+for+ADO.NET/default.aspx">Sync Services for ADO.NET</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Merge+Replication/default.aspx">Merge Replication</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Republishing/default.aspx">Republishing</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Pocket+PC/default.aspx">Pocket PC</category></item><item><title>Listen to Rob's Windows Mobile Interview on .NET Rocks!</title><link>http://blogs.msdn.com/robtiffany/archive/2008/10/09/listen-to-rob-s-windows-mobile-interview-on-net-rocks.aspx</link><pubDate>Thu, 09 Oct 2008 23:07:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8993275</guid><dc:creator>robtiffany</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/robtiffany/comments/8993275.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robtiffany/commentrss.aspx?PostID=8993275</wfw:commentRss><description>&lt;P&gt;&amp;nbsp;&lt;A href="http://www.dotnetrocks.com/"&gt;&lt;IMG src="http://www.dotnetrocks.com/slices/top.jpg" border=0&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;I was recently interviewed by Carl Franklin and Richard Campbell who run one of the Internet's most popular developer sites, .NET Rocks!&amp;nbsp; You can catch the interview at &lt;A href="http://www.dotnetrocks.com/default.aspx?showNum=384"&gt;http://www.dotnetrocks.com/default.aspx?showNum=384&lt;/A&gt;&amp;nbsp;where you can either listen to it live via the website, or download it to your favorite device to listen later.&lt;/P&gt;
&lt;P&gt;I cover the current state of Windows Mobile + the entire ecosystem including OEMs, Mobile Operators, developers and who does what within&amp;nbsp;Microsoft's Mobile Commications Business in Redmond&amp;nbsp;and the Mobile Development Center in &lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Tahoma','sans-serif'; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA"&gt;Hyderabad&lt;/SPAN&gt;.&amp;nbsp; I take Carl and Richard on a deep dive of our latest mobile development technologies and techniques with the .NET Compact Framework, SQL Server Compact, and WCF Store and Forward just to name a few.&amp;nbsp; I also cover all the features of System Center Mobile Device Manager including OTA software distribution, Group Policies, Mobile VPN security and Domain join.&lt;/P&gt;
&lt;P&gt;Download it and give it a listen &lt;/P&gt;
&lt;P&gt;- Rob&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8993275" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Merge/default.aspx">Merge</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SSCE/default.aspx">SSCE</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Mobile/default.aspx">Windows Mobile</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Replication/default.aspx">Replication</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/.NET+Compact+Framework/default.aspx">.NET Compact Framework</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server+2005+Compact+Edition/default.aspx">SQL Server 2005 Compact Edition</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Smartphone/default.aspx">Smartphone</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Wireless/default.aspx">Wireless</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/GSM/default.aspx">GSM</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/EV-DO/default.aspx">EV-DO</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/IIS/default.aspx">IIS</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/BizTalk/default.aspx">BizTalk</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/AES/default.aspx">AES</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Security/default.aspx">Security</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/WCF/default.aspx">WCF</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Direct3D+Mobile/default.aspx">Direct3D Mobile</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Graphics/default.aspx">Graphics</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/LINQ/default.aspx">LINQ</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/iPhone/default.aspx">iPhone</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/MEDC/default.aspx">MEDC</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server+Compact/default.aspx">SQL Server Compact</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Sync/default.aspx">Sync</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Sync+Framework/default.aspx">Sync Framework</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Sync+Services+for+ADO.NET/default.aspx">Sync Services for ADO.NET</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Merge+Replication/default.aspx">Merge Replication</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Pocket+PC/default.aspx">Pocket PC</category></item><item><title>Sync Framework v1 and Sync Services for ADO.NET v2 are now Generally Available!</title><link>http://blogs.msdn.com/robtiffany/archive/2008/08/06/sync-framework-v1-and-sync-services-for-ado-net-v2-are-now-generally-available.aspx</link><pubDate>Thu, 07 Aug 2008 03:42:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8839650</guid><dc:creator>robtiffany</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/robtiffany/comments/8839650.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robtiffany/commentrss.aspx?PostID=8839650</wfw:commentRss><description>&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;FONT face="Times New Roman"&gt;As of today you can download the Sync Framework SDK in 11 languages including Chinese (Hong Kong), Chinese (Simplified), English, German, French, Italian, Japanese, Korean, Portuguese, Russian and Spanish for AMD64, IA64 and x86 processors from the&amp;nbsp;&lt;/FONT&gt;&lt;A title="Sync SDK Download" href="http://www.microsoft.com/downloads/details.aspx?FamilyId=C88BA2D1-CEF3-4149-B301-9B056E7FB1E6&amp;amp;displaylang=en" target=_blank&gt;&lt;FONT face="Times New Roman" color=#0000ff&gt;Sync Framework Download Center&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face="Times New Roman"&gt;.&amp;nbsp; &lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Times New Roman"&gt;&lt;STRONG&gt;&lt;U&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;What is Sync Framework?&lt;/SPAN&gt;&lt;/U&gt;&lt;/STRONG&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;FONT face="Times New Roman"&gt;Imagine being able to&amp;nbsp;build a solution that seamlessly exchanges contact information between Outlook, a database contact management application, your mobile device and your service based contact management system.&amp;nbsp; Or how about a mobile device that connects with other devices to exchange pictures and videos.&amp;nbsp; How about being able to take data from any of your enterprise databases, file&amp;nbsp;or enterprise systems and make it available offline for users to modify and sync back up to the enterprise.&amp;nbsp; All of these capabilities are possible with the Sync Framework and best of all, it is free on Windows platforms and licensable on non-Windows platforms!&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;FONT face="Times New Roman"&gt;Just a few examples of companies that are already using the Sync Framework include:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL type=disc&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l2 level1 lfo1; tab-stops: list .5in; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;SPAN style="FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;A title="Photo Sync" href="http://www.smugmug.com/" target=_blank&gt;&lt;STRONG&gt;&lt;SPAN style="FONT-FAMILY: 'Calibri','sans-serif'"&gt;&lt;FONT color=#0000ff&gt;SmugMug&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/A&gt;&lt;STRONG&gt;&lt;SPAN style="FONT-FAMILY: 'Calibri','sans-serif'"&gt; &lt;/SPAN&gt;&lt;/STRONG&gt;&lt;FONT face=Calibri&gt;who has added support for the Sync Framework to enable developers to build rich offline applications that can allow photos to be easily shared on friends and families local computers.&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l2 level1 lfo1; tab-stops: list .5in; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;SPAN style="FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;A title="CRM Sync" href="https://www.interscapeinc.com/blog.html?id=17" target=_blank&gt;&lt;STRONG&gt;&lt;SPAN style="FONT-FAMILY: 'Calibri','sans-serif'"&gt;&lt;FONT color=#0000ff&gt;InterScape&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/A&gt;&lt;FONT face=Calibri&gt; have embedded Sync Framework into their Customer Relationship &amp;amp; Management (CRM) solution to enable sales people to synchronize enterprise files and data for offline access.&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l2 level1 lfo1; tab-stops: list .5in; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;SPAN style="FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;A title="Fujitsu File Sync " href="http://www.fujitsu-siemens.com/ps2/press/read/news_details.aspx?id=2820" target=_blank&gt;&lt;STRONG&gt;&lt;SPAN style="FONT-FAMILY: 'Calibri','sans-serif'"&gt;&lt;FONT color=#0000ff&gt;Fujitsu Siemens&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/A&gt;&lt;STRONG&gt;&lt;SPAN style="FONT-FAMILY: 'Calibri','sans-serif'"&gt; &lt;/SPAN&gt;&lt;/STRONG&gt;&lt;FONT face=Calibri&gt;will embed the SyncToy file synchronization solution (powered by Sync Framework) on their STORAGEBIRD external drives to enable seamless file synchronization between devices and computers.&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT face="Times New Roman"&gt;&lt;STRONG&gt;&lt;U&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;Sync Framework&amp;nbsp;Highlights&lt;/SPAN&gt;&lt;/U&gt;&lt;/STRONG&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;FONT face="Times New Roman"&gt;Some of the highlights of this release include:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL type=disc&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level1 lfo2; tab-stops: list .5in; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;SPAN style="FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;FONT face=Calibri&gt;Sync support to new and existing applications, services, and devices&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level1 lfo2; tab-stops: list .5in; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;SPAN style="FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;FONT face=Calibri&gt;Collaboration and offline capabilities for any application &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level1 lfo2; tab-stops: list .5in; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;SPAN style="FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;FONT face=Calibri&gt;Roam and share information from any data store, over any protocol, and over any network configuration&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level1 lfo2; tab-stops: list .5in; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;SPAN style="FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;FONT face=Calibri&gt;Leverage sync capabilities exposed in Microsoft technologies to create sync ecosystems &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l1 level1 lfo2; tab-stops: list .5in; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;SPAN style="FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;FONT face=Calibri&gt;Extend the architecture to support custom data types including files&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT face="Times New Roman"&gt;&lt;STRONG&gt;&lt;U&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;Sync Services for ADO.NET v2&amp;nbsp;Highlights&amp;nbsp; &lt;/SPAN&gt;&lt;/U&gt;&lt;/STRONG&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;FONT face="Times New Roman"&gt;Sync Services for ADO.NET is a Microsoft Sync Framework powered solution for synchronizing ADO.NET enabled databases in offline and collaboration scenarios. Sync Services for ADO.NET allows developers who are familiar with the concepts of ADO.NET to apply that knowledge to data synchronization through a very similar set of APIs to that of ADO.NET. Sync Services for ADO.NET provides the flexibility of a programming model like offline datasets and a richer synchronization feature set like that found in Merge replication. Sync Services for ADO.NET also supports synchronization over services, such as Windows Communication Foundation (WCF). &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;FONT face="Times New Roman"&gt;Some of the Sync Services for ADO.NET highlights include:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;UL type=disc&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo3; tab-stops: list .5in; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;STRONG&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;Offline Database Synchronization&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN style="FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;FONT face=Calibri&gt;: With Sync Services for ADO.NET you are able to build a solution where multiple remote clients connect and synchronize to a central ADO.NET database in a Hub-and-Spoke configuration. This enables occasionally connected devices to periodically connect and synchronize changes with a central ADO.NET database server. This topology is a common solution for remote workers such as sales reps or field service workers. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo3; tab-stops: list .5in; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;STRONG&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;Collaboration Between Databases&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN style="FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;FONT face=Calibri&gt;: Sync Services for ADO.NET also includes Peer-to-Peer capabilities. Through a custom Peer provider, collaboration between two or more SQL Server databases can occur (support is not available for SQL Server Compact). Unlike a Hub-and-Spoke architecture, this provider enables a SQL Server database to communicate and exchange information with any other SQL Server database. This type of scenario is useful in group scenarios where users (such as auditors) need to update information and then collaborate those changes with other group members. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/LI&gt;
&lt;LI class=MsoNormal style="MARGIN: 0in 0in 0pt; mso-list: l0 level1 lfo3; tab-stops: list .5in; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"&gt;&lt;STRONG&gt;&lt;SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: 'Calibri','sans-serif'; mso-fareast-font-family: 'Times New Roman'"&gt;SQL Server 2008 Integrated Change Tracking&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;SPAN style="FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;FONT face=Calibri&gt;: If you are using SQL Server 2008, we recommend that you use the SQL Server change tracking feature. This feature addresses many of the issues of custom-tracking systems and provides a straightforward way to track changes. Change tracking is also supported by the Local Database Cache in Visual Studio 2008 SP1. Developers can now specify that the Configure Data Synchronization wizard should enable SQL Server change tracking on the server and generate the commands necessary to select and apply changes to the server database. Unlike custom change tracking systems, SQL Server change tracking does not require any schema changes in the server database. For more information, see the Visual Studio 2008 documentation. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;&lt;FONT face="Times New Roman"&gt;&lt;STRONG&gt;&lt;U&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;Sync Framework Pricing&lt;/SPAN&gt;&lt;/U&gt;&lt;/STRONG&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;FONT face="Times New Roman"&gt;Sync Framework&amp;nbsp;will be licensed&amp;nbsp;&lt;U&gt;free&lt;/U&gt; on Windows platforms.&amp;nbsp; In addition, we are also &lt;/FONT&gt;&lt;A title="sync licensing" href="http://msdn.microsoft.com/en-us/sync/bb887636.aspx" target=_blank&gt;&lt;FONT face="Times New Roman" color=#0000ff&gt;licensing&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face="Times New Roman"&gt; the specifications and a source code porting kit to developers who want to implement Microsoft Sync Framework solutions on non-Windows platforms.&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;&lt;FONT face="Times New Roman"&gt;To learn more, visit &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/sync"&gt;&lt;FONT face="Times New Roman"&gt;http://msdn.microsoft.com/sync&lt;/FONT&gt;&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 10pt"&gt;- Rob&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8839650" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SSCE/default.aspx">SSCE</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Mobile/default.aspx">Windows Mobile</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Replication/default.aspx">Replication</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server+2005+Compact+Edition/default.aspx">SQL Server 2005 Compact Edition</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/WCF/default.aspx">WCF</category></item><item><title>Building Offline Enabled Applications </title><link>http://blogs.msdn.com/robtiffany/archive/2008/06/22/building-offline-enabled-applications.aspx</link><pubDate>Mon, 23 Jun 2008 05:29:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8640943</guid><dc:creator>robtiffany</dc:creator><slash:comments>3</slash:comments><comments>http://blogs.msdn.com/robtiffany/comments/8640943.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robtiffany/commentrss.aspx?PostID=8640943</wfw:commentRss><description>&lt;P&gt;At Tech Ed Developers in Orlando this year, I had the pleasure of joining Ginny Caughey, Steve Lasker, Liam Cavanagh, and Rob Relyea for a Tech Ed Online discussion on building offline enabled applications.&lt;/P&gt;
&lt;P&gt;&lt;IMG title="Tech Ed Online" style="WIDTH: 314px; HEIGHT: 210px" height=210 alt="Tech Ed Online" src="http://farm4.static.flickr.com/3149/2602241049_ef544b1127.jpg?v=0" width=314 mce_src="http://farm4.static.flickr.com/3149/2602241049_ef544b1127.jpg?v=0"&gt;&lt;/P&gt;
&lt;P&gt;In an online world, why are we building offline apps?&amp;nbsp; Because networks are only occasionally available, or occasionally not available.&amp;nbsp; However, building offline apps is a bit more complicated.&amp;nbsp; Listen to our panel of speakers that works on enabling offline apps from the storage, sync, programming model, and UI stack.&lt;/P&gt;&lt;PRE style="FONT-SIZE: 11px; FONT-FAMILY: Verdana; WORD-WRAP: break-word"&gt;View the low bandwidth version:&lt;/PRE&gt;&lt;PRE style="FONT-SIZE: 11px; FONT-FAMILY: Verdana; WORD-WRAP: break-word"&gt;&lt;A href="http://microsofttech.fr.edgesuite.net/TechEdOnline/Videos/08_NA_Dev_TEOPanel_14_low.wmv"&gt;http://microsofttech.fr.edgesuite.net/TechEdOnline/Videos/08_NA_Dev_TEOPanel_14_low.wmv&lt;/A&gt;&lt;/PRE&gt;&lt;PRE style="FONT-SIZE: 11px; FONT-FAMILY: Verdana; WORD-WRAP: break-word"&gt;View the high bandwidth version:&lt;/PRE&gt;&lt;PRE style="FONT-SIZE: 11px; FONT-FAMILY: Verdana; WORD-WRAP: break-word"&gt;&lt;A href="http://microsofttech.fr.edgesuite.net/TechEdOnline/Videos/08_NA_Dev_TEOPanel_14_high.wmv"&gt;http://microsofttech.fr.edgesuite.net/TechEdOnline/Videos/08_NA_Dev_TEOPanel_14_high.wmv&lt;/A&gt;&lt;/PRE&gt;&lt;PRE style="FONT-SIZE: 11px; FONT-FAMILY: Verdana; WORD-WRAP: break-word"&gt;View the MP4 version:&lt;/PRE&gt;&lt;PRE style="FONT-SIZE: 11px; FONT-FAMILY: Verdana; WORD-WRAP: break-word"&gt;&lt;A href="http://microsofttech.fr.edgesuite.net/TechEdOnline/Videos/08_NA_Dev_TEOPanel_14_high.mp4"&gt;http://microsofttech.fr.edgesuite.net/TechEdOnline/Videos/08_NA_Dev_TEOPanel_14_high.mp4&lt;/A&gt;&lt;/PRE&gt;&lt;PRE style="FONT-SIZE: 11px; FONT-FAMILY: Verdana; WORD-WRAP: break-word"&gt;- Rob&lt;/PRE&gt;&lt;A href="http://www.mstechedonline.com/library/(S(5rnn05bkz5aogk55jagzzu55))/Library.aspx#" target=_blank&gt;&lt;/A&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8640943" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SSCE/default.aspx">SSCE</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Replication/default.aspx">Replication</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server+2005+Compact+Edition/default.aspx">SQL Server 2005 Compact Edition</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Wireless/default.aspx">Wireless</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Tech+Ed/default.aspx">Tech Ed</category></item><item><title>Mobile Scalability + Staggering Performance</title><link>http://blogs.msdn.com/robtiffany/archive/2008/01/15/mobile-scalability-staggering-performance.aspx</link><pubDate>Wed, 16 Jan 2008 08:08:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7127587</guid><dc:creator>robtiffany</dc:creator><slash:comments>11</slash:comments><comments>http://blogs.msdn.com/robtiffany/comments/7127587.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robtiffany/commentrss.aspx?PostID=7127587</wfw:commentRss><description>&lt;P&gt;As you know from my recent posts, I've been hanging out at 1,200 concurrent Subscribers trying to boost performance. When I first hit the 1,200 Subscriber mark, I was able to change and replicate ~13 million rows per hour.&amp;nbsp; I was happy with the scalability, but the performance was no better than what I achieved with 600 concurrent Subscribers.&amp;nbsp; Rather than push the scalability envelope out to 1,800 or 2,400 Subscribers, I decided to tweak, poke and prod my portable data center until I could get better performance at the 1,200 level.&amp;nbsp; I succeeded with the architecture you see below:&lt;/P&gt;
&lt;P&gt;&lt;IMG title="1200 Concurrent Subscribers" style="WIDTH: 500px; HEIGHT: 381px" height=381 alt="1200 Concurrent Subscribers" src="http://farm3.static.flickr.com/2128/2196169553_d6708c501e.jpg?v=0" width=500 mce_src="http://farm3.static.flickr.com/2128/2196169553_d6708c501e.jpg?v=0"&gt;&lt;/P&gt;
&lt;P&gt;Sometimes more is more.&amp;nbsp; Sometimes less is more.&lt;/P&gt;
&lt;P&gt;Knowing that the ISAPI DLL running on IIS is the biggest bottleneck in the system, I decided to scale out to 6 IIS servers in addition to my separate SQL Publisher and SQL Distributor servers.&amp;nbsp; The 2 SQL Servers have 8 cores and 16 GB of RAM while the 6 IIS servers contain 2 cores and 2 GB of RAM.&amp;nbsp; Each IIS server would accomodate 200 concurrent clients each.&amp;nbsp; In the last week of December 2007, I throttled back the MAX_THREADS_PER_POOL registry setting on the IIS servers from the default of 20 to just 3 and ran my test harness.&amp;nbsp; This resulted in the changing and replicating of ~15 millions rows per hour; a boost of 2 million rows per hour over my previous test.&amp;nbsp; Using fewer threads on each IIS box meant lower memory and CPU utilization across the board.&amp;nbsp; Instead of overwhelming SQL Server will lots of threads trying to perform work all at the same time, SQL Server got to chill out and thus processed each sync much faster.&amp;nbsp; This was great news so I pushed the fewer threads experiment even further.&amp;nbsp; I executed my test harness with 2 threads and then just 1 thread per IIS server.&amp;nbsp; Using just 1 thread resulted in the changing and replicating of ~18 million rows per hour; a 3 million row per hour boost over using 3 threads per IIS server.&lt;/P&gt;
&lt;P&gt;At ~21 million row changes per hour, 2 threads per IIS server is the sweet spot!&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Rows changed:&amp;nbsp;&amp;nbsp;5,826 per second | 349,600 per minute | 20,976,000 per hour&amp;nbsp;|&amp;nbsp;503,424,000 per day 
&lt;LI&gt;Bytes per row: 116 
&lt;LI&gt;Data replicated:&amp;nbsp;&amp;nbsp;2.3&amp;nbsp;GB per hour&amp;nbsp; |&amp;nbsp;&amp;nbsp;55 GB per day&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;The longest and average sync times dropped significantly over the first&amp;nbsp;results I got with 1,200 concurrent Subscribers:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Longest sync time: 14 minutes 
&lt;LI&gt;Shortest sync time: .6 seconds 
&lt;LI&gt;Average sync time:&amp;nbsp;3 minutes,&amp;nbsp;38 seconds&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;The IIS&amp;nbsp;didn't break a sweat:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;IIS1: CPU: 11%&amp;nbsp; |&amp;nbsp; Mem:&amp;nbsp;172 MB&amp;nbsp; |&amp;nbsp; Network Utilization: 89% &lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;Disk I/O: OS: .3%, ISAPI: 3.8% &lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;IIS2: CPU: 8%&amp;nbsp; |&amp;nbsp; Mem:&amp;nbsp;167 MB&amp;nbsp; |&amp;nbsp; Network Utilization: .91%&lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;Disk I/O: OS: .2%, ISAPI: 3% &lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;IIS3: CPU: 6%&amp;nbsp; |&amp;nbsp; Mem:&amp;nbsp;171 MB&amp;nbsp; |&amp;nbsp; Network Utilization: .82% &lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;Disk I/O: OS: .2%, ISAPI: 2.8% &lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;IIS4: CPU: 7% | Mem: 171 MB | Network Utilization: .71% &lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;Disk I/O: OS: .5%, ISAPI: 3.4% &lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;IIS5: CPU: 6% | Mem: 152 MB | Network Utilization: .92% &lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;Disk I/O: OS: .3%, ISAPI: 2.3% &lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;IIS6: CPU: 8% | Mem: 151 MB | Network Utilization: 1% &lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;Disk I/O: OS: .3%, ISAPI: 2.6%&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;
&lt;P&gt;The CPU was finally well-utilized (after dozens of tests that never went higher than 35%)&amp;nbsp;on the SQL Publisher and the SQL Distributor's disk that held the transaction log was pegged (which means it could use some RAID 0 or 10 medicine).&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;SQL Distributor: CPU: 9%&amp;nbsp; | Mem:&amp;nbsp;2.32 GB&amp;nbsp; |&amp;nbsp; Network Utilization: .64%&lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;Disk I/O: OS: .7%, SQL: 1%, DB: 16.8%, LOG: 100%, Snapshot Share: 1%&lt;/LI&gt;&lt;/UL&gt;
&lt;LI&gt;SQL Publisher:&amp;nbsp;CPU: 74%&amp;nbsp; |&amp;nbsp; Mem: 4.19 GB&amp;nbsp; |&amp;nbsp; Network Utilization: 4%&lt;/LI&gt;
&lt;UL&gt;
&lt;LI&gt;Disk I/O: OS: 1.1%, SQL: 13.7%, DB: 1%, LOG: 22.6%&lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;
&lt;P&gt;I'm very pleased with these results as they represent the kind of scalability and performance that our clients are looking for when they're considering building and rolling out a mobile line of business application.&amp;nbsp; As usual, the low memory and CPU utilizaiton on the IIS servers will lead architects to think that using 6 load-balanced boxes is wasteful and they deserve to be consolidated.&amp;nbsp; I've been down that path and the place that I've arrived at today tells me that the ISAPI DLLs are exhausted long before you can detect any strain on the IIS server.&amp;nbsp; That being said, the use of fewer threads means that I don't need the memory and CPU power I once thought I needed.&amp;nbsp; Lower-end IIS servers could be purchased or perhaps consolidation could happen by deploying them as virtual images inside Hyper-V on Longhorn or Virtual Server on Windows Server 2003.&amp;nbsp; Definitely something worth looking at.&lt;/P&gt;
&lt;P&gt;In the near term, you should expect to see me push the scalability envelope to the 1,800 and/or 2,400 concurrent Subscriber level in an effort to see what it takes to saturate a single SQL Server box.&amp;nbsp; Along the way, I will take a look at virtualization options to see how well they work out.&amp;nbsp; Lastly, you'll see me persue "Republishing" architectures with SQL Server in an effort to make Mobile Merge Replication scalable enough to support hundreds of thousands or millions of Windows Mobile devices.&amp;nbsp; Only then could you consider using this technology for&amp;nbsp;large-scale consumer applications with a national or global reach.&amp;nbsp; Remember, Windows Mobile 6 comes with a built-in content synchronization engine called SQL Server Compact 3.1.&amp;nbsp; When you start thinking big, you realize that we could use this technology to push intelligent advertising to devices or build the next global social networking platform designed for people on the go.&lt;/P&gt;
&lt;P&gt;See you at TechReady 6!&lt;/P&gt;
&lt;P&gt;- Rob&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=7127587" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Merge/default.aspx">Merge</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SSCE/default.aspx">SSCE</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Mobile/default.aspx">Windows Mobile</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Replication/default.aspx">Replication</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/.NET+Compact+Framework/default.aspx">.NET Compact Framework</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server+2005+Compact+Edition/default.aspx">SQL Server 2005 Compact Edition</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Smartphone/default.aspx">Smartphone</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Server/default.aspx">Windows Server</category></item><item><title>My New Book is Now Available!</title><link>http://blogs.msdn.com/robtiffany/archive/2008/01/07/my-new-book-is-now-available.aspx</link><pubDate>Tue, 08 Jan 2008 01:12:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:7020885</guid><dc:creator>robtiffany</dc:creator><slash:comments>4</slash:comments><comments>http://blogs.msdn.com/robtiffany/comments/7020885.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robtiffany/commentrss.aspx?PostID=7020885</wfw:commentRss><description>&lt;P&gt;&lt;SPAN style="FONT-FAMILY: 'Calibri','sans-serif'"&gt;&lt;FONT size=3&gt;"Windows Mobile Data Synchronization with SQL Server 2005 and SQL Server Compact 3.1" is now available&amp;nbsp;in print!&amp;nbsp; Those of you in the continental U.S. can just buy it directly from the Hood Canal Press site at &lt;/FONT&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri size=3&gt;&lt;A href="http://www.hoodcanalpress.com/catalog.htm"&gt;http://www.hoodcanalpress.com/catalog.htm&lt;/FONT&gt;&lt;/A&gt;&lt;SPAN style="FONT-FAMILY: 'Calibri','sans-serif'"&gt;&lt;FONT size=3&gt;&amp;nbsp;and get free ground&amp;nbsp;shipping.&amp;nbsp; It's on&amp;nbsp;Amazon in the U.S. so you can order it at &lt;/FONT&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri size=3&gt;&lt;A href="http://www.amazon.com/Windows-Mobile-Synchronization-Server-Compact/dp/0979891205/ref=sr_1_13?ie=UTF8&amp;amp;s=books&amp;amp;qid=1199744085&amp;amp;sr=1-13"&gt;http://www.amazon.com/Windows-Mobile-Synchronization-Server-Compact/dp/0979891205/ref=sr_1_13?ie=UTF8&amp;amp;s=books&amp;amp;qid=1199744085&amp;amp;sr=1-13&lt;/A&gt;&amp;nbsp;as well&lt;/FONT&gt;&lt;SPAN style="FONT-FAMILY: 'Calibri','sans-serif'"&gt;&lt;FONT size=3&gt;.&amp;nbsp; At&amp;nbsp;Amazon UK you can find it&amp;nbsp;here &lt;A href="http://www.amazon.co.uk/Windows-Mobile-Synchronization-Server-Compact/dp/0979891205/ref=sr_1_7?ie=UTF8&amp;amp;s=books&amp;amp;qid=1199744162&amp;amp;sr=1-7"&gt;http://www.amazon.co.uk/Windows-Mobile-Synchronization-Server-Compact/dp/0979891205/ref=sr_1_7?ie=UTF8&amp;amp;s=books&amp;amp;qid=1199744162&amp;amp;sr=1-7&lt;/A&gt;.&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-FAMILY: 'Calibri','sans-serif'"&gt;&lt;FONT size=3&gt;Go buy it and start building large-scale line of business and consumer applications for Windows Mobile!&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-FAMILY: 'Calibri','sans-serif'"&gt;&lt;FONT size=3&gt;-Rob&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=7020885" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Merge/default.aspx">Merge</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SSCE/default.aspx">SSCE</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Mobile/default.aspx">Windows Mobile</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Replication/default.aspx">Replication</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/.NET+Compact+Framework/default.aspx">.NET Compact Framework</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server+2005+Compact+Edition/default.aspx">SQL Server 2005 Compact Edition</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Smartphone/default.aspx">Smartphone</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Wireless/default.aspx">Wireless</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/IIS/default.aspx">IIS</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Server/default.aspx">Windows Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Active+Directory/default.aspx">Active Directory</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Security/default.aspx">Security</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Book/default.aspx">Book</category></item><item><title>Windows Mobile Partner Summit Day 1</title><link>http://blogs.msdn.com/robtiffany/archive/2007/12/12/windows-mobile-partner-summit-day-1.aspx</link><pubDate>Wed, 12 Dec 2007 22:16:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:6750384</guid><dc:creator>robtiffany</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/robtiffany/comments/6750384.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robtiffany/commentrss.aspx?PostID=6750384</wfw:commentRss><description>&lt;P&gt;The Windows Mobile Partner Summit is going great&amp;nbsp;and the event looks to be twice as big as last year.&amp;nbsp; It's always nice to reconnect with our partner community.&amp;nbsp; Steve Hegenderfer was kind&amp;nbsp;enough to allow me to bring&amp;nbsp;my rack of servers to his event.&amp;nbsp; This time, I have a much lighter, 24U half rack which is much easier to move around.&amp;nbsp; At the Dev Connections conference, I used a new stress test designed to push the number of row changes per sync.&amp;nbsp; At that event, I used 300 concurrent Subscribers to perform 23,330 syncs per hour and&amp;nbsp;make changes to 7,000,000 rows per hour.&amp;nbsp; Each complete row change consisted of 116 bytes of data which meant I changed and replicated 812 MB of data per hour.&lt;/P&gt;
&lt;P&gt;This time around I decided to double the number of concurrent Subscribers to 600.&amp;nbsp;&amp;nbsp;Keep in mind that each Subscriber is equivalant to a&amp;nbsp;Windows Mobile device.&amp;nbsp; I used&amp;nbsp;6 servers running 100 Subscribers each to create client load, 3 load-balanced&amp;nbsp;IIS servers, and a separate&amp;nbsp;SQL Server Distributor and&amp;nbsp;Publisher.&amp;nbsp;&amp;nbsp;With 600 concurrent Subscribers contending for resources, I managed to perform 22,401 syncs per hour which is slightly fewer syncs than I saw when running only 300 Subscribers back in Vegas.&amp;nbsp; The important story here is that I almost doubled the number of rows I changed and replicated per hour:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Rows changed:&amp;nbsp;&amp;nbsp;13,440,600 per hour&amp;nbsp; |&amp;nbsp;&amp;nbsp;322,574,400 per day &lt;/LI&gt;
&lt;LI&gt;Data replicated:&amp;nbsp;&amp;nbsp;1.45 GB per hour&amp;nbsp; |&amp;nbsp;&amp;nbsp;34.8 GB per day&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Just like in Vegas,&amp;nbsp;the IIS and SQL Servers where just chilling out throughout this test:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;IIS1: CPU: 7%&amp;nbsp; |&amp;nbsp; Mem:&amp;nbsp;188 MB&amp;nbsp; |&amp;nbsp; Network Utilization: .69% 
&lt;LI&gt;IIS2: CPU: 8%&amp;nbsp; |&amp;nbsp; Mem:&amp;nbsp;187 MB&amp;nbsp; |&amp;nbsp; Network Utilization: .88% 
&lt;LI&gt;IIS3: CPU: 5%&amp;nbsp; |&amp;nbsp; Mem:&amp;nbsp;185 MB&amp;nbsp; |&amp;nbsp; Network Utilization: .95% 
&lt;LI&gt;SQL Distributor: CPU: 5%&amp;nbsp; | Mem:&amp;nbsp;994 MB&amp;nbsp; |&amp;nbsp; Network Utilization: .77% 
&lt;LI&gt;SQL Publisher:&amp;nbsp;CPU: 36%&amp;nbsp; |&amp;nbsp; Mem: 4.11 GB&amp;nbsp; |&amp;nbsp; Network Utilization: 1%&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;This is truly incredible and further proves that SQL Server 2005 + SQL Server Compact 3.1 + Merge Replication is the most powerful data sync technology on the market today.&lt;/P&gt;
&lt;P&gt;- Rob&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=6750384" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Merge/default.aspx">Merge</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Mobile/default.aspx">Windows Mobile</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Replication/default.aspx">Replication</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/.NET+Compact+Framework/default.aspx">.NET Compact Framework</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server+2005+Compact+Edition/default.aspx">SQL Server 2005 Compact Edition</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Smartphone/default.aspx">Smartphone</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/IIS/default.aspx">IIS</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Server/default.aspx">Windows Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Active+Directory/default.aspx">Active Directory</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Security/default.aspx">Security</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Book/default.aspx">Book</category></item><item><title>New Mobile Merge Replication Benchmarks</title><link>http://blogs.msdn.com/robtiffany/archive/2007/11/09/new-mobile-merge-replication-benchmarks.aspx</link><pubDate>Fri, 09 Nov 2007 21:02:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:6024636</guid><dc:creator>robtiffany</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/robtiffany/comments/6024636.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robtiffany/commentrss.aspx?PostID=6024636</wfw:commentRss><description>&lt;P&gt;I just finished up a week of teaching attendees&amp;nbsp;at the Dev Connections conference how to setup and use mobile merge replication to sync data between their Windows Mobile devices and SQL Server 2005.&amp;nbsp; As usual, I brought along my favorite teaching tool, my portable data center, to take attendees on deep dives of the 4 different tiers of my replication architecture.&amp;nbsp; This time around, I changed the way my stress test harness works.&amp;nbsp; In the past, my goal has always been to see how many Subscribers I could connect to the system at the same time.&amp;nbsp; With the new test, I'm stressing the system to a much greater degree with my software to push the envelope in regards to how many table row changes&amp;nbsp;I can make per hour.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;With an eye towards the stress testing system that has helped give iAnywhere's ASA database and MobiLink replication server a dominant market position, I built a similar test where the amount of data in each row changed is exactly&amp;nbsp;116 bytes each time.&amp;nbsp; I think the iAnywhere stress test used 92 byte rows.&amp;nbsp; I used 3 servers to create client load, 3 load-balanced&amp;nbsp;IIS servers, and a separate&amp;nbsp;SQL Server Distributor and&amp;nbsp;Publisher.&amp;nbsp;&amp;nbsp;The results I got from my test harness performing 23,330 syncs per hour&amp;nbsp;are nothing short of spectacular:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Rows changed:&amp;nbsp; 7,000,000 per hour&amp;nbsp; |&amp;nbsp; 168,000,000 per day&lt;/LI&gt;
&lt;LI&gt;Data replicated:&amp;nbsp; 812 MB per hour&amp;nbsp; |&amp;nbsp; 19.4 GB per day&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Now check out how the IIS and SQL Servers where just chilling out throughout this test:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;IIS1: CPU: 5%&amp;nbsp; |&amp;nbsp; Mem: 216 MB&amp;nbsp; |&amp;nbsp; Network Utilization: .44%&lt;/LI&gt;
&lt;LI&gt;IIS2: CPU: 7%&amp;nbsp; |&amp;nbsp; Mem: 147 MB&amp;nbsp; |&amp;nbsp; Network Utilization: .13%&lt;/LI&gt;
&lt;LI&gt;IIS3: CPU: 8%&amp;nbsp; |&amp;nbsp; Mem: 170 MB&amp;nbsp; |&amp;nbsp; Network Utilization: .42%&lt;/LI&gt;
&lt;LI&gt;SQL Distributor: CPU: 5%&amp;nbsp; | Mem: 2.15 GB&amp;nbsp; |&amp;nbsp; Network Utilization: .58%&lt;/LI&gt;
&lt;LI&gt;SQL Publisher:&amp;nbsp;CPU: 17%&amp;nbsp; |&amp;nbsp; Mem: 4.25 GB&amp;nbsp; |&amp;nbsp; Network Utilization: 1%&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Not bad!&amp;nbsp; Thanks to Loke Uei, we were also able to give away 300 copies of my new book that walks you through the construction of this scalable mobile merge replication system.&amp;nbsp; Lots of Windows Mobile developers and IT Pros are now empowered to "mobilize" their organization's data out to mobile field personnel.&amp;nbsp; Just as important, they can take the proof back to their respective organizations that this technology is build to perform and&amp;nbsp;scale!&lt;/P&gt;
&lt;P&gt;I'm just getting started with this new test harness.&amp;nbsp; Come to the Windows Mobile Partner Summit in December to see me push this system even further and break new replication records!&lt;/P&gt;
&lt;P&gt;- Rob&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=6024636" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Merge/default.aspx">Merge</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SSCE/default.aspx">SSCE</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Mobile/default.aspx">Windows Mobile</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Replication/default.aspx">Replication</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/.NET+Compact+Framework/default.aspx">.NET Compact Framework</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server+2005+Compact+Edition/default.aspx">SQL Server 2005 Compact Edition</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Smartphone/default.aspx">Smartphone</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Wireless/default.aspx">Wireless</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/IIS/default.aspx">IIS</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Server/default.aspx">Windows Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Active+Directory/default.aspx">Active Directory</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Security/default.aspx">Security</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Book/default.aspx">Book</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Publisher/default.aspx">Publisher</category></item><item><title>Chapter 1: Getting Started with Merge Replication</title><link>http://blogs.msdn.com/robtiffany/archive/2007/09/09/chapter-1-getting-started-with-merge-replication.aspx</link><pubDate>Mon, 10 Sep 2007 08:54:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:4851303</guid><dc:creator>robtiffany</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/robtiffany/comments/4851303.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robtiffany/commentrss.aspx?PostID=4851303</wfw:commentRss><description>&lt;P&gt;&lt;STRONG&gt;The&amp;nbsp;non-linear fashion by which&amp;nbsp;I've been writing this book reminds me of the way Pulp Fiction&amp;nbsp;jumps around.&lt;/STRONG&gt;&amp;nbsp; Chapter&amp;nbsp;1 is ready to go&amp;nbsp;so you can&amp;nbsp;get started with Merge Replication for Windows Mobile devices.&amp;nbsp; In addition to obvious technology walkthroughs, I also decided to add a bunch of scenarios that illustrate how mobile data synchronization can add tangible business value to existing endeavors.&lt;/P&gt;
&lt;P&gt;The book is called &lt;STRONG&gt;"Windows Mobile Data Synchronization with SQL Server 2005 and SQL Server Compact 3.1"&lt;/STRONG&gt; and it's being published by &lt;STRONG&gt;Hood Canal Press&lt;/STRONG&gt;.&amp;nbsp; Click on&amp;nbsp;Chapter1.pdf below to&amp;nbsp;download Chapter&amp;nbsp;1 on&amp;nbsp;getting started with Merge Replication.&lt;/P&gt;&lt;IFRAME style="BORDER-RIGHT: #dde5e9 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: #dde5e9 1px solid; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 3px; BORDER-LEFT: #dde5e9 1px solid; WIDTH: 240px; PADDING-TOP: 0px; BORDER-BOTTOM: #dde5e9 1px solid; HEIGHT: 66px; BACKGROUND-COLOR: #ffffff" marginWidth=0 marginHeight=0 src="http://cid-8b9c82da88af61fc.skydrive.live.com/embedrowdetail.aspx/Public/Chapter1.pdf" frameBorder=0 scrolling=no mce_src="http://cid-8b9c82da88af61fc.skydrive.live.com/embedrowdetail.aspx/Public/Chapter1.pdf"&gt;&lt;/IFRAME&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=4851303" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Merge/default.aspx">Merge</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SSCE/default.aspx">SSCE</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Mobile/default.aspx">Windows Mobile</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Replication/default.aspx">Replication</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/.NET+Compact+Framework/default.aspx">.NET Compact Framework</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server+2005+Compact+Edition/default.aspx">SQL Server 2005 Compact Edition</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/IIS/default.aspx">IIS</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Server/default.aspx">Windows Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Active+Directory/default.aspx">Active Directory</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Security/default.aspx">Security</category></item><item><title>Chapter 3: Configuring the Publisher</title><link>http://blogs.msdn.com/robtiffany/archive/2007/08/31/chapter-3-configuring-the-publisher.aspx</link><pubDate>Sat, 01 Sep 2007 08:14:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:4682289</guid><dc:creator>robtiffany</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/robtiffany/comments/4682289.aspx</comments><wfw:commentRss>http://blogs.msdn.com/robtiffany/commentrss.aspx?PostID=4682289</wfw:commentRss><description>&lt;P&gt;&lt;STRONG&gt;The biggest and most comprehensive chapter of the new book is ready to preview!&lt;/STRONG&gt;&amp;nbsp; Chapter 3 is ready to go for some relaxing Labor Day weekend reading.&amp;nbsp; It's the deepest coverage that I've seen on all the nuances of the SQL Server Publisher for mobile replication if I may say so myself.&lt;/P&gt;
&lt;P&gt;The book is called &lt;STRONG&gt;"Windows Mobile Data Synchronization with SQL Server 2005 and SQL Server Compact 3.1"&lt;/STRONG&gt; and it's being published by &lt;STRONG&gt;Hood Canal Press&lt;/STRONG&gt;.&amp;nbsp; Click on&amp;nbsp;Chapter3.pdf below to&amp;nbsp;download Chapter&amp;nbsp;3 on installing and configuring&amp;nbsp;the SQL Server Publisher.&lt;/P&gt;&lt;IFRAME style="BORDER-RIGHT: #dde5e9 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: #dde5e9 1px solid; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 3px; BORDER-LEFT: #dde5e9 1px solid; WIDTH: 240px; PADDING-TOP: 0px; BORDER-BOTTOM: #dde5e9 1px solid; HEIGHT: 66px; BACKGROUND-COLOR: #ffffff" marginWidth=0 marginHeight=0 src="http://cid-8b9c82da88af61fc.skydrive.live.com/embedrowdetail.aspx/Public/Chapter3.pdf" frameBorder=0 scrolling=no mce_src="http://cid-8b9c82da88af61fc.skydrive.live.com/embedrowdetail.aspx/Public/Chapter3.pdf"&gt;&lt;/IFRAME&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=4682289" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Merge/default.aspx">Merge</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SSCE/default.aspx">SSCE</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Mobile/default.aspx">Windows Mobile</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Replication/default.aspx">Replication</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/.NET+Compact+Framework/default.aspx">.NET Compact Framework</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server+2005+Compact+Edition/default.aspx">SQL Server 2005 Compact Edition</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Smartphone/default.aspx">Smartphone</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/IIS/default.aspx">IIS</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Windows+Server/default.aspx">Windows Server</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Active+Directory/default.aspx">Active Directory</category><category domain="http://blogs.msdn.com/robtiffany/archive/tags/Security/default.aspx">Security</category></item></channel></rss>