RSS
 

Flex OLAP Benchmarks

14 Jun

I ran some benchmarks for the OLAP components in Flex. The OLAP components allow you to perform you’re OLAP operations client side out of the box. You *can* utilize the SDK interfaces and move your processing to the backend, should you have too much data for the browser.

That said, the benchmarks below should help define the line for “too much data.”

Record Structure:

Course:String
School:String
GradeLevel:String
SubjectArea:String
Grade:Number (Our measure)

Records / Processing Time (s)

1,000 / 3 sec
5,000 / 12 sec
10,000 / 22 sec
15,000 / 33 sec
20,000 / 43 sec

The processing times listed above are for the *client* side processing time. The data was loaded from the server before starting the benchmark.

I ran the benchmarks at various rollup depths (multiple hierarchies) which the components actually handled very well, the processing time was not significantly affected.

Extending the dataset to 125K+ records caused errors with the script timeouts occurring.

For datasets above 5-10K records, I’d suggest moving the processing to the server and passing the results to the UI. (assuming you’re looking to leverage the OLAP components as provided)

 
3 Comments

Posted in RIA

 

Leave a Reply

 

*
To prove you're a person (not a spam script), type the security word shown in the picture. Click on the picture to hear an audio file of the word.
Anti-spam image

 
  1. Twitter Trackbacks for Flex OLAP Benchmarks | Joshua Ostrom - riafan [joshuaostrom.com] on Topsy.com

    June 14, 2010 at 9:39 am

    […] Flex OLAP Benchmarks | Joshua Ostrom – riafan joshuaostrom.com/2010/06/14/flex-olap-benchmarks/ – view page – cached I ran some benchmarks for the OLAP components in Flex. The OLAP components allow you to perform you’re OLAP operations client side out of the box. You *can* utilize the SDK interfaces and move your processing to the backend, should you have too much data for the browser. Tweets about this link Topsy.Data.Twitter.User[‘creativetweet’] = {“photo”:”http://a1.twimg.com/profile_images/533922660/CreativeTweet_normal.png”,”url”:”http://twitter.com/creativetweet”,”nick”:”creativetweet”}; creativetweetInfluential: “Flex News: Flex OLAP Benchmarks: I ran some benchmarks for the OLAP components in Flex. The OLAP components allow … http://bit.ly/cDdJ5G ” 24 minutes ago retweet Topsy.Data.Twitter.User[‘mojogeeks’] = {“photo”:”http://a3.twimg.com/profile_images/476530319/twitterProfilePhoto_normal.jpg”,”url”:”http://twitter.com/mojogeeks”,”nick”:”mojogeeks”}; mojogeeks: “Flex OLAP Benchmarks: I ran some benchmarks for the OLAP components in Flex. The OLAP components allow you to perf… http://bit.ly/9CPWaK ” 25 minutes ago retweet Topsy.Data.Twitter.User[‘geekguypc’] = {“photo”:”http://a1.twimg.com/profile_images/960752858/Sin_t_tulo-1_normal.png”,”url”:”http://twitter.com/geekguypc”,”nick”:”geekguypc”}; geekguypc: “Flex OLAP Benchmarks http://dlvr.it/1hmbL ” 50 minutes ago retweet Filter tweets […]

     
  2. Mike Thompson

    June 15, 2010 at 12:56 am

    When creating the rolled up hierarchical data, the performance of the OLAP components it utterly, astoundingly TERRIBLE. Criminally terrible.

    And the components themselves are pretty awlful too.

    We ended up writing our own, but these days there’s a couple of third party ones about, including Elixer and … one other whose name I can’t think of right now.

    If you do it yourself, just remember that the final OLAP grid is just a 2D structure, which you can represent as a dictionary or dictionaries. The keys of said dictionaries will be arrays of values (one for each dimension on the axis), and the leaf values are probably arrays of all the rows which match the two keys.

    Anyway, all you really need to know is DO NOT use these components.

     
  3. Flex OLAP Take Two | Joshua Ostrom - riafan

    June 15, 2010 at 2:37 pm

    […] « Flex OLAP Benchmarks […]