THE SQL Server Blog Spot on the Web

Welcome to SQLblog.com - The SQL Server blog spot on the web Sign in | Join | Help
in Search

SQLBI - Marco Russo

SQLBI is a blog dedicated to building Business Intelligence solutions with SQL Server

  • SQLIO analysis on Excel charts

    I tend to use twitter when I have to notify an interesting link or tool. But sometimes a blog post (even if short) is better, because allows me to easily find it on search engines (Bing/Google/whatever) months or years later. I know PInterest is growing these days, but the blog indexed on search engines is still a reliable resource to me.

    Davide Mauri tweeted this Pual Randal’s blog that mention the SQLIO Result Parser tool from David Klee. In short: you run SQLIO, save result in a CSV file, upload these results on a web page and obtain an Excel file as a result, including charts. Simple and useful. I’ll use it!

  • Registrations Open for SSAS Maestro in July 2012 #ssasmaestro #sass

    Registrations are now open for the SSAS Maestro course in July 2012, which will take place in Milan (Italy).

    I introduced this course in a previous blog post and I’m not going to repeat all the details here. I just want to highlight a few updates, the biggest one is related to the cost of the course. We received several feedback and cut some of the costs for reducing the fee. One of the consequences is that we will not include Tabular as part of the SSAS Maestro course, which will be dedicated only to Multidimensional. We’ll evaluate how to include Tabular in the future. As a result, the price is now 4500€ (reduced to 3500€ for students of a previous SSAS Maestro edition). This is not going to lower the overall value of the course and the price includes the complete evaluation process after the training.

    Another very good news is that Thomas Kejser (from the SQLCAT team) will join me and Chris Webb teaching the class. This is another important contribution that adds value to the course: Thomas has been involved in development and deployment of TBs-sized cubes and discussions about scalability of SSAS cubes are an important part of the SSAS Maestro training.

    Please read my previous post to get other details about the SSAS Maestro certification process. If you want to get more information and/or ask if you are a good candidate for SSAS Maestro certification, write to ssasmaestro@sqlbi.com sending your CV/resume and a short description of your level of SSAS knowledge and experience. The seats are limited and it is important that students have the right prerequisites in terms of SSAS experience. When you are ready, you can register here.

  • May Schedule of SSAS #Tabular Workshop for US & Europe

    As you might have read in the previous post, May is a busy month for all the editions of the SSAS Tabular Workshop. We’ll start with an online edition next week in a time slot that should be good for US and other countries in that time zones. Then there will be many other countries in our road show and Chris Webb will join Alberto in Brussels and me in London. This is the complete list:

    And if two days are too much for you, don’t forget the one-day TechEd PreCon Using BISM Tabular in Microsoft SQL Server Analysis Services 2012:

    I hope to see you in one of these dates!

  • Order of Evaluation in CALCULATE and Clever Hierarchy Handling in #dax

    After the first two editions of the SSAS Tabular Workshop, I and Alberto had some time to flush some of the pending activities. We published two articles:

    • Clever Hierarchy Handling in DAX: DAX is not a hierarchy-friendly language, especially if you have a MDX background. If you have to implement hierarchy-based calculation, MDX is still better. But if you need to do that in DAX (for example, because you need this in a DAX measure), then you have to read this article written by Alberto Ferrari that explains how to correctly calculate the classical “ratio to parent” pattern in several different scenarios.
    • Order of Evaluation in CALCULATE Parameters: a common mistake when you start working with DAX is understanding the evaluation order of CALCULATE parameters and what happens when you have nested CALCULATE statements. The topic can be very dense, so I tried to write a simple article that explain the basic concepts and based on the feedback I’ll receive, I’ll consider writing other articles on this subject. So feedback is welcome!

    We have other ideas and material that I hope we’ll be able to write and publish in the upcoming weeks. In the meantime, there are plenty of other editions of the workshop this month, starting from the online one next week that is arranged for US time zone. Don’t miss it!

  • Last minute update #ssas #tabular community event in Amsterdam on April 16

    We finally have the registration website for the community event about Tabular in Analysis Services in Amsterdam on April 16 evening that I introduced in my previous post - don't miss it, the registration are open (and limited!) at:

    http://passnl-april2012.eventbrite.com/

    This is really a "last-minute" event, but we're pretty confident the room will be full anyway! See you there!

  • #SSAS #Tabular Workshop and Community Events in Netherlands and Denmark

    Next week I will finally start the roadshow of the SSAS Tabular Workshop, a 2-day seminar about the new BISM Tabular model for Analysis Services that has been introduced in SQL Server 2012. During these roadshows, we always try to arrange some speeches at local community events in the evening - we already defined for Copenhagen, we have some logistic issue in Amsterdam that we're trying to solve. Here is the timetable:

    • Netherlands
      • SSAS Workshop in Amsterdam, NL – April 16-17, 2012
        • 2-day seminar, I and Alberto will be the trainers for this event, register here
      • We're trying to manage a Community event but we still don't have a confirmation, stay tuned
      •        
    • Denmark
      • SSAS Workshop in Copenhagen, DK – April 26-27, 2012
        • 2-day seminar, I and Alberto will be the trainers for this event, register here
      • Community event on April 26, 2012

    In community events we’ll deliver two speeches – here are the descriptions:

    Inside xVelocity (VertiPaq)
    PowerPivot and BISM Tabular models in Analysis Services share a great columnar-based database engine called xVelocity in-memory analytics engine (VertiPaq). If you want to improve performance and optimize memory used, you have to understand some basic principles about how this engine works, how data is compressed, and how you can design a data model for better optimization. Prepare yourself to change your mind. xVelocity optimization techniques might seem counterintuitive and are absolutely different than OLAP and SQL ones!

    Choosing between Tabular and Multidimensional
    You have a new project and you have to make an important decision upfront. Should you use Tabular or Multidimensional? It is not easy to answer, because sometime there is a clear choice, but most of the times both decisions might be correct, at least at the beginning. In this session we’ll help you making an informed decision, correctly evaluating pros and cons of each one according to common scenarios, considering both short-term and long-term consequences of your choice.

    I hope to meet many people in this first dates. We have many other events coming in May and June, including an online event (for US time zones), and you can also attend our PreCon Day at TechEd US in Orland (PRC06) or TechEd Europe in Amsterdam. I’ll be a good customer for airline companies in the next three months!

    I’m just sorry that I hadn’t time to write other articles in the last month, but I’m accumulating material that I will need to write down during some flight – stay tuned…

  • Distinct Count of Customers in a SCD Type 2 in #DAX

    If you have a Slowly Changing Dimension (SCD) Type 2 for your customer and you want to calculate the number of distinct customers that bought a product, you cannot use the simple formula:

    Customers := DISTINCTCOUNT( FactTable[Customer Id] ) )

    because it would return the number of distinct versions of customers. What you really want to do is to calculate the number of distinct application keys of the customers, that could be a lower number than the number you’ve got with the previous formula. Assuming that a Customer Code column in the Customers dimension contains the application key, you should use the following DAX formula:

    Customers := COUNTROWS( SUMMARIZE( FactTable, Customers[Customer Code] ) )

    Be careful: only the version above is really fast, because it is solved by xVelocity (formerly known as VertiPaq) engine. Other formulas involving nested calculations might be more complex and move computation to the formula engine, resulting in slower query.

    This is absolutely an interesting pattern and I have to say it’s a killer feature. Try to do the same in Multidimensional…

  • Microsoft SQL Server 2012 Analysis Services – The BISM Tabular Model #ssas #tabular #bism

    And this is the book cover – have a good read!

    I, Alberto and Chris spent many months (many nights, holidays and also working days of the last months) writing the book we would have liked to read when we started working with Analysis Services Tabular. A book that explains how to use Tabular, how to model data with Tabular, how Tabular internally works and how to optimize a Tabular model. All those things you need to start on a real project in order to make an happy customer. You know, we’re all consultants after all, so customer satisfaction is really important to be paid for our job!

    Now the book writing is finished, we’re in the final stage of editing and reviews and we look forward to get our print copy. Its title is very long: Microsoft SQL Server 2012 Analysis Services – The BISM Tabular Model. But the important thing is that you can already (pre)order it.

    This is the list of chapters:

    • 01. BISM Architecture
    • 02. Guided Tour on Tabular
    03. Loading Data Inside Tabular
  • 04. DAX Basics
  • 05. Understanding Evaluation Contexts
  • 06. Querying Tabular
  • 07. DAX Advanced
  • 08. Understanding Time Intelligence in DAX
  • 09. Vertipaq Engine
  • 10. Using Tabular Hierarchies
  • 11. Data modeling in Tabular
  • 12. Using Advanced Tabular Relationships
  • 13. Tabular Presentation Layer
  • 14. Tabular and PowerPivot for Excel
  • 15. Tabular Security
  • 16. Interfacing with Tabular
  • 17. Tabular Deployment
  • 18. Optimization and Monitoring
  • SSAS Maestro Training in July 2012 #ssasmaestro #ssas

    A few hours ago Chris Webb blogged about SSAS Maestro and I’d like to propagate the news, adding also some background info.

    SSAS Maestro is the premier certification on Analysis Services that selects the best experts in Analysis Services around the world. In 2011 Microsoft organized two rounds of training/exams for SSAS Maestros and up to now only 11 people from the first wave have been announced – around 10% of attendees of the course! In the next few days the new Maestros from the second round should be announced and this long process is caused by many factors that I’m going to explain. First, the course is just a step in the process. Before the course you receive a list of topics to study, including the slides of the course. During the course, students receive a lot of information that might not have been included in the slides and the best part of the course is class interaction. Students are expected to bring their experience to the table and comparing case studies, experiences and having long debates is an important part of the learning process. And it is also a part of the evaluation: good questions might be also more important than good answers! Finally, after the course, students have their homework and this may require one or two months to be completed. After that, a long (very long) evaluation process begins, taking into account homework, labs, participation… And for this reason the final evaluation may arrive months later after the course. We are going to improve and shorten this process with the next courses.

    The first wave of SSAS Maestro had been made by invitation only and now the program is opening, requiring a fee to participate in order to cover the cost of preparation, training and exam. The number of attendees will be limited and candidates will have to send their CV in order to be admitted to the course. Only experienced Analysis Services developers will be able to participate to this challenging program. So why you should do that? Well, only 10% of students passed the exam until now. So if you need 100% guarantee to pass the exam, you need to study a lot, before, during and after the course. But the course by itself is a precious opportunity to share experience, create networking and learn mission-critical enterprise-level best practices that it’s hard to find written on books. Oh, well, many existing white papers are a required reading *before* the course!

    The course is now 5 days long, and every day can be *very* long. We’ll have lectures and discussions in the morning and labs in the afternoon/evening. Plus some more lectures in one or two afternoons. A heavy part of the course is about performance optimization, capacity planning, monitoring. This edition will introduce also Tabular models, and don’t expect something you might find in the SSAS Tabular Workshop – only performance, scalability monitoring and optimization will be covered, knowing Analysis Services is a requirement just to be accepted! I and Chris Webb will be the teachers for this edition.

    The course is expensive. Applying for SSAS Maestro will cost around 7000€ plus taxes (reduced to 5000€ for students of a previous SSAS Maestro edition). And you will be locked in a training room for the large part of the week. So why you should do that? Well, as I said, this is a challenging course. You will not find the time to check your email – the content is just too much interesting to think you can be distracted by something else. Another good reason is that this course will take place in Italy. Well, the course will take place in the brand new Microsoft Innovation Campus, but in general we’ll be able to provide you hints to get great food and, if you are willing to attach one week-end to your trip, there are plenty of places to visit (and I’m not talking about the classic Rome-Florence-Venice) – you might really need to relax after such a week!

    Finally, the marking process after the course will be faster – we’d like to complete the evaluation within three months after the course, considering that 1-2 months might be required to complete the homework.

    If at this point you are not scared: registration will open in mid-April, but you can already write to ssasmaestro@sqlbi.com sending your CV/resume and a short description of your level of SSAS knowledge and experience. The selection process will start early and you may want to put your admission form on top of the FIFO queue!

  • Investigating on xVelocity (VertiPaq) column size

     

    In January I published an article about how to optimize high cardinality columns in VertiPaq. In the meantime, VertiPaq has been rebranded to xVelocity: the official name is now “xVelocity in-memory analytics engine (VertiPaq)” but using xVelocity and VertiPaq when we talk about Analysis Services has the same meaning. In this post I’ll show how to investigate on columns size of an existing Tabular database so that you can find the most important columns to be optimized.

    A first approach can be looking in the DataDir of Analysis Services and look for the folder containing the database. Then, look for the biggest files in all subfolders and you will find the name of a file that contains the name of the most expensive column. However, this heuristic process is not very optimized.

    A better approach is using a DMV that provides the exact information. For example, by using the following query (open SSMS, open an MDX query on the database you are interested to and execute it) you will see all database objects sorted by used size in a descending way.

    SELECT *
    FROM $SYSTEM.DISCOVER_STORAGE_TABLE_COLUMN_SEGMENTS
    ORDER BY used_size DESC

    You can look at the first rows in order to understand what are the most expensive columns in your tabular model. The interesting data provided are:

    • TABLE_ID: it is the name of the object – it can be also a dictionary or an index
    • COLUMN_ID: it is the column name the object belongs to – you can also see ID_TO_POS and POS_TO_ID in case they refer to internal indexes
    • RECORDS_COUNT: it is the number of rows in the column
    • USED_SIZE: it is the used memory for the object

    By looking at the ration between USED_SIZE and RECORDS_COUNT you can understand what you can do in order to optimize your tabular model. Your options are:

    • Remove the column. Yes, if it contains data you will never use in a query, simply remove the column from the tabular model
    • Change granularity. If you are tracking time and you included milliseconds but seconds would be enough, round the data source column to the nearest second. If you have a floating point number but two decimals are good enough (i.e. the temperature), round the number to the nearest decimal is relevant to you.
    • Split the column. Create two or more columns that have to be combined together in order to produce the original value. This technique is described in VertiPaq optimization article.
    • Sort the table by that column. When you read the data source, you might consider sorting data by this column, so that the compression will be more efficient. However, this technique works better on columns that don’t have too many distinct values and you will probably move the problem to another column. Sorting data starting from the lower density columns (those with a few number of distinct values) and going to higher density columns (those with high cardinality) is the technique that provides the best compression ratio.

    After the optimization you should be able to reduce the used size and improve the count/size ration you measured before.

    If you are interested in a longer discussion about internal storage in VertiPaq and you want understand why this approach can save you space (and time), you can attend my 24 Hours of PASS session “VertiPaq Under the Hood” on March 21 at 08:00 GMT.

  • A new SQL, a new Analysis Services, a new Workshop! #ssas #sql2012

    One week ago Microsoft SQL Server 2012 finally debuted with a virtual launch event and you can find many intro sessions there (20 minutes each). There is a lot of new content available if you want to learn more about SQL 2012 and in this blog post I’d like to provide a few link to sessions, documents, bits and courses that are available now or very soon.

    First of all, the release of Analysis Services 2012 has finally released PowerPivot 2012 (many of us called it PowerPivot v2 before this official name) and also the new Data Mining Add-in for Microsoft Office 2010, now available also for Excel 64bit! And, of course, don’t miss the Microsoft SQL Server 2012 Feature Pack, there are a lot of upgrades for both DBAs and developers. I just discovered there is a new LocalDB version of SQL Express that can run in user mode without any setup. Is this the end of SQL CE?

    But now, back to Analysis Services: if you want some tutorial on Tabular, the Microsoft Virtual Academy has a whole track dedicated to Analysis Services 2012 but you will probably be interested also in the one about Reporting Services 2012.

    If you think that virtual is good but it’s not enough, there are plenty of conferences in the coming months – these are just those where I and Alberto will deliver some SSAS Tabular presentations:

    • SQLBits X, London, March 29-31, 2012: if you are in London or want a good reason to go, this is the most important SQL Server event in Europe this year, no doubts about it. And not only because of the high number of attendees, but also because there is an impressive number of speakers (excluding me, of course) coming from all over the world. This is an event second only to PASS Summit in Seattle so there are no good reasons to not attend it.
    • Microsoft SQL Server & Business Intelligence Conference 2012, Milan, March 28-29, 2012: this is an Italian conference so the language might be a barrier, but many of us also speak English and the food is good! Just a few seats still available.
    • TechEd North America, Orlando, June 11-14, 2012: you know, this is a big event and it contains everything – if you want to spend a whole day learning the SSAS Tabular model with me and Alberto, don’t miss our pre-conference day “Using BISM Tabular in Microsoft SQL Server Analysis Services 2012” (be careful, it is on June 10, a nice study-Sunday!).
    • TechEd Europe, Amsterdam, June 26-29, 2012: the European version of TechEd provides almost the same content and you don’t have to go overseas. We also run the same pre-conference day “Using BISM Tabular in Microsoft SQL Server Analysis Services 2012” (in this case, it is on June 25, that’s a regular Monday).

    I and Alberto will also speak at some user group meeting around Europe during… well, we’re going to travel a lot in the next months.

    In fact, if you want to get a complete training on SSAS Tabular, you should spend two days with us in one of our SSAS Tabular Workshop! We prepared a 2-day seminar, a very intense one, that start from the simple tabular modeling and cover architecture, DAX, query, advanced modeling, security, deployment, optimization, monitoring, relationships with PowerPivot and Multidimensional… Really, there are a lot of stuffs here! We announced the first dates in Europe and also an online edition optimized for America’s time zone:

    Also Chris Webb will join us in this workshop and in every date you can find who is the speaker on the web site.

    The course is based on our upcoming book, almost 600 pages (!) about SSAS Tabular, an incredible effort that will be available very soon in a preview (rough cuts from O’Reilly) and will be on the shelf in May. I will provide a link to order it as soon as we have one!

    And if you think that this is not enough… you’re right! Do you know what is the only thing you can do to optimize your Tabular model? Optimize your DAX code. Learning DAX is easy, mastering DAX requires some knowledge… and our DAX Advanced Workshop will provide exactly the required content. Public classes will be available later this year, by now we just deliver it on demand.

  • Why to use #Tabular in Analysis Services 2012 #ssas

    A few months ago I gave a speech at SQLBits 9 comparing Vertipaq vs. OLAP (you can watch session recording here), which I repeated a few times in other conferences and webcasts. The title was intentionally provocative but it contained an explanation of the real content – in fact it is “Vertipaq vs OLAP: Change Your Data Modeling Approach”. In these days I’m realizing how huge the impact of this technology will be, and how I just scratched the surface of this revolution happening in the BI Modeling world. Regardless you watched the session or not (and you may have another good reason to do that after reading this post), let’s try to see what’s happening from another point of view.

    How do you model a BI Solution? Well, you can have a data warehouse or not, you can apply SQLBI Methodology or another of your choice (there are many of them, yes). But, at the end, you create a star schema. Maybe a snowflake one, even if it is almost always a bad idea. But a snowflake schema can be converted in a star schema, so let’s go for that. You have to conform your data model to a well known pattern that can be easily digested by an Analysis Services cube. I mean, a Multidimensional model. And that’s fine, it works great, millions of customers are very happy with that.

    But then, someone comes with a question that was not planned in advance. Someone says “I’d like to analyze customer behavior, define a cluster of my customers based on cube slicing and dicing and then I want to know if in this specific month for this promotion they bought more or less than their single individual average over the last three months”. And they expect this to be doable and fast. At this point you have several options:

    • Talk about the next football/baseball/NBA/rugby match hoping he’ll forget what he asked for;
    • Finally show your master level of MDX and write a geeky MDX query that doesn’t work in Excel and cannot be browsed in an Excel PivotTable (users seems not able to appreciate how nice is writing your custom client code with AMO – except a few Italian speaking people, who understand that AMO is just the first single person present of the verb LOVE, even if for an inexplicable reason most of them tend to associate the word with the noun fishhook, which has the same spelling in Italian);
    • Change the data model in Analysis Services, only to realize that you have to change the Data Mart design and the ETL, pushing the business logic of a query down to the ETL implementation, for the happiness of those guys who worked hard to pump data in your ultimate data model that should have been able to answer to any query from any user at any time.

    Well, I tried all of them, and I can say that the last one is the most expensive and the only one that really makes the user happy for 5 minutes, until he realizes he just would like to see something else he hadn’t thought before. And this process is called knowledge discovery, is perfectly well known, described in the books and if only he would be able to formulate a question within a predictable path, we would live in a better world. But, hey, I’m a consultant, there are no issues, just opportunities. At least until an opportunity moves beyond the horizon of the profitability ROI line.

    Are you with me? Have you experienced all of this? (If you’re not a consultant, you can just replace “profitability ROI” with “acceptable quality of working life”, which is the equivalent concept - a consultant never experience the notion of a life beyond the work and would not understand the expression at all, simply reporting a Connect item to the Word team in order to fix the Spelling and Grammar checker).

    Well, now there is Analysis Services 2012. You can create models in Multidimensional or Tabular. At first, Tabular has less features than Multidimensional, it’s simpler and you can define a model that looks like a Multidimensional one. You can create a Tabular model that, connecting from Excel, appears exactly like a Multidimensional one. It could be faster, it could be easier to develop, but at the end it will seem offering the same features to the end user. Apparently, nothing is changed. At least, if you are lazy enough to not think you can do more.

    A few months after my talk at SQLBits I continue to see new reasons to move to Tabular just for two capabilities that are hidden in the marketing stuffs, but are really incredible important from a data modeling point of view:

    • You can query data using relationships that are not defined in the data model as “regular” relationships
    • You can extend the data model without reprocessing the whole database by using calculated columns

    These two features adds a fourth option to answer to the question that originated this blog post. And the fourth option is:

    • Just do it

    I’m not saying it’s easy. But by moving your DAX skills to an expert level, you are able to write complex queries keeping good performance without requiring to change the underlying the data model. Translated in practical terms: happy customer, problem solved, out of office in time to watch your favorite football/baseball/NBA/rugby/whatever match on TV.

    A few months after my talk at SQLBits I continue to see new reasons to move to Tabular just for the flexibility it allows if you want to query it. If you tried OLAP in the past and it was too rigid in data modeling for your requirements, give Tabular a chance. You have to learn it deeper than a casual user, but you will found an unexplored territory of new data modeling and reporting opportunities. (How many articles have you read about querying Tabular from Reporting Services?)

    Next mission: convince IT Pros to not virtualize a SSAS box with Tabular because it is much more convenient to spend money on fast CPU, not too many cores, large and fast memory, cheap disks. Tactic: design a fancy dashboard for the CEO and getting immunity to fight against the SAN lobbies (Thomas would use a less polite term here).

  • Create a #dax Measure in a Session in #BISM #Tabular

    Thanks to Greg Galloway that pointed me out this is possible, in this post I want to show how to create a measure local to a session. This could be done in SQL Server Management Studio, even if it is probably not so useful for a Tabular model considering that you can easily define measures local to a DAX query. However, maybe you will have a reason to do that (I can only imagine a long list of measures defined in a session that are used in small queries sent from a client – it could be an idea for custom clients connecting to Tabular that sends many short queries using the same measures, for example a dashboard or a set of charts).

    First, you have to connect to Analysis Services by including the Cube=<cubename> in the connection string. By default, the cube name of a tabular model is “Model”, so you can use Cube=Model in the connection string. You can do that in SQL Server Management Studio by placing that string in the Additional Connection Parameters, as you can see in the following picture.

    connectioncubemodel

    Then, instead of using DEFINE MEASURE before EVALUATE statement, like you would do in the following statement:

    DEFINE


        MEASURE 'Internet Sales'[Internet Total Sales] = SUM([Sales Amount])
        MEASURE 'Internet Sales'[Internet Total Product Cost] = SUM([Total Product Cost])
        MEASURE 'Internet Sales'[Internet Total Margin] = [Internet Total Sales] - [Internet Total Product Cost]
    EVALUATE
    SUMMARIZE
    (
        'Internet Sales',
        'Date'[Calendar Year],
        "Sales", 'Internet Sales'[Internet Total Sales],
        "Cost", 'Internet Sales'[Internet Total Product Cost],
        "Margin", 'Internet Sales'[Internet Total Margin]
    )

    You can define measures by using the CREATE SESSION statement. Please note that if you didn’t set the Cube in the connection string, you would get an error.

    CREATE SESSION
    MEASURE 'Internet Sales'[Internet Total Sales] = SUM([Sales Amount])
    MEASURE 'Internet Sales'[Internet Total Product Cost] = SUM([Total Product Cost])
    MEASURE 'Internet Sales'[Internet Total Margin] = [Internet Total Sales] - [Internet Total Product Cost]

    At this point, you can reference the measures you defined in your DAX query:

    EVALUATE
    SUMMARIZE

    (
        'Internet Sales',
        'Date'[Calendar Year],
        "Sales", 'Internet Sales'[Internet Total Sales],
        "Cost", 'Internet Sales'[Internet Total Product Cost],
        "Margin", 'Internet Sales'[Internet Total Margin] 
    )

    I’d be interested to hear whether you find some scenario in which it is useful using this feature!

  • How to Incrementally Process your #Tabular Model by Using Process Add in #ssas

    I recently wrote an article about how to implement a Process Add on a table in a Tabular model. This is an area where there is a lack of documentation by Microsoft, especially if you want to use a custom binding query for every Process Add command, which should be the common case for a Process Add scenario. Cathy Dumas wrote several blog posts about this argument and I tried to put everything together, showing the same example written in XMLA Script, AMO and PowerShell. You can also use Integration Services, but considering you probably want to customize the binding query, chances are that you will opt for a more programmatic approach, maybe embedding an XMLA Script or an AMO Script in a standard Task in SSIS.

    The next step for me will be studying how much “near real time” a Tabular model can be by using this type of Process option. In fact, it should be possible to use a push model processing, like in a Multidimensional model, and my initial tests say that there is no “out of service” window when you process data in Tabular. So you can forget the lock issue you may have in a Multidimensional model in Analysis Services. But you need memory and it is hard today to say how much this architecture can scale in terms of concurrent users when you start processing data incrementally. Also the quality of compression made by Vertipaq might suffer.

    If you have any experience in this area, please contact me and share your knowledge! Otherwise, stay tuned, I’ll try to further study this topic, then blogging what I’ll found.

  • Looking for Speakers at #PASS DW/BI Virtual Chapter

    I recently joined Chris Webb, Jen Stirrup and Alberto Ferrari as PASS Data Warehouse and Business Intelligence Virtual Chapter for Europe. We will increase the number of virtual sessions delivered in a comfortable European time zone and we are looking for speakers interested in sharing their knowledge in data warehouse and business intelligence with the Microsoft SQL Server Platform.

    If you are interested, please write to PASSDWBIVC@sqlpass.org and present yourself with an abstract and a title for your session. Also mention your previous experience as a speaker – this will help us in understanding what type of assistance you may need. Delivering a virtual session is very different than in front of an audience. You don’t have the visual feedback from attendees and it seems you are talking alone in front of your PC, even when hundreds of people are listening you!

    We look forward to receiving your proposals!

More Posts Next page »

This Blog

Syndication

News

TechEd North America 2012
Microsoft SQL Server & Business Intelligence Conference 2012
Powered by Community Server (Commercial Edition), by Telligent Systems
  Privacy Statement