On 11-03-04 2:34 PM, "Andrea Edwards" <[email protected]> wrote: >How does the system 'know' how to rewrite the schema? It rewrites star schema into reverse star schema. So, there is an algorithm that does that and it is not really that much magic.
> For example, how does it know which tables to use as the central 'fact' >tables [...] You pick the table around which all your data revolves. That is why you see gene-centric marts, pathway-centric marts, etc., where someone has chosen that their data revolves around their gene- or pathway-table respectively. >I'm wondering how it is possible for any database schema to be compatible. It is not possible. :) If your schema are in 3NF and you used primary keys and foreign keys, then it will definitely work. Otherwise, there is a chance that the mart creation might not be possible. However, I have also created marts from MyISAM tables with neither primary nor foreign keys set and it worked like a charm too. As a rule of thumb: if your data adheres to at least some database design-principles, then you can create a mart out of it. >if a new database is published, i can be sure i can add it to my >existing mart regardless of its schema. I appreciate this might not be a >simple answer but a concrete example would be really useful if possible. If you only run virtual marts, then you are fine, because the transformation to reverse star schema is never applied to the data. Of course, you can always rewrite other database schema so that they conform to 3NF, but it is not possible to guarantee for any kind of database schema that you will be able to materialise a mart out of the box. You need to ask yourself why anyone would want to store data in a very obscure way to start with though. That would be like writing a C/C#/Java program in one line: just because it is possible does not mean that it is a sensible thing to do. >Is a physical mart quicker than a virtual mart? I presume that is the >benefit of materializing over not materializing. Yes, a materialised mart is faster to query than a virtual mart. >Do i have to have a virtual mart if i use a machine on a remote server >or can materialization get the data from the remote database You can still materialise the mart, but the remote data will stay on the remote server. It will only rewrite your local data for query optimisation. Joachim _______________________________________________ Users mailing list [email protected] https://lists.biomart.org/mailman/listinfo/users
