views:

105

answers:

2

I'm looking for freely available sample data to do some ORM validation and performance testing on. My main requirements are:

  • Discriminated types: it needs to include some kind of inheritance eg Party -> Person and Organisation;
  • Reasonably complex data model;
  • Some reasonably large tables (in the hundreds of thousands of rows at least);
  • Multi-platform: at a minimum Oracle, MySQL and SQL Server;
  • Readily understandable. For example a CRM application is what I call readily understandable. People understand clients, customers and so forth.

Can anyone point me to anything like that?

+1  A: 

The SQL Server AdventureWorks database fits most of your criteria. It has around 69 tables and a fair amount of data. It comes scripted, so with a bit of editing it could be made to work with Oracle and MySQL. There are business scenarios and use cases.

Not sure it has discriminated types though.

Mitch Wheat
Inheritance is basically what I mean. The Customer entity qualifies as it has a type: Individual, Consumer or Retail Store. Thanks for the pointer. Shame it's SQL Server only though. Bit painful to make that work in Oracle.
cletus
A: 

What are you trying to accomplish?

  • "ORM validation" What can this possibly mean? That it works at all? That it solves your problem? How will this complex model help you determine if ORM will solve your problem?

  • "performance testing". This makes a certain amount of sense.

Why not just design your application's model? Why not see if ORM has adequate performance for your specific application?


Edit

It appears you have an iBatis ORM model; what do you want to know about pBatis? What's your alternative?

  • It works? Port your model.

  • It has the performance? Port the worst-performing parts of your model and your data and use that.

The results of that are indisputable evidence of the suitability of pBatis. Any other benchmark is just a benchmark -- and debatable.

S.Lott
Because I'm doing a port of ibatis to PHP http://code.google.com/p/pbatis
cletus
The point of the dataset is to validate it, test for performance and, more improtantly, to have those results be reproducible by otehrs, hence I need a publicly available dataset.
cletus
"validate 'it'"? Validate the dataset? ORM? What can validate mean? ORM already works for your application -- it's in iBatis. If your going to test pBatis, use your own data model. Validate doesn't make a lot of sense in this context.
S.Lott