Just to add to Joachim's reply. There are 4 platforms that are currentlty supported (rc5) through database meta data reading PK->FK relationships: MySQL InnoDB, Oracle, Postgres and MSQL Server. The fifth one: MySQL MyISM is supported through a column naming convention: 'table_id' with a 'key guessing' option
a Arek Kasprzyk Director, Bioinformatics Operations and Principal Investigator Ontario Institute for Cancer Research MaRS Centre, South Tower 101 College Street, Suite 800 Toronto, Ontario, Canada M5G 0A3 Tel: 416-673-8559 Toll-free: 1-866-678-6427 www.oicr.on.ca Administrative Assistant: [email protected] This message and any attachments may contain confidential and/or privileged information for the sole use of the intended recipient. Any review or distribution by anyone other than the person for whom it was originally intended is strictly prohibited. If you have received this message in error, please contact the sender and delete all copies. Opinions, conclusions or other information contained in this message may not be that of the organization. From: Joachim Baran <[email protected]<mailto:[email protected]>> Date: Fri, 4 Mar 2011 14:56:11 -0500 To: Andrea Edwards <[email protected]<mailto:[email protected]>> Cc: "[email protected]<mailto:[email protected]>" <[email protected]<mailto:[email protected]>> Subject: Re: [BioMart Users] installing biomart and memory requirements On 11-03-04 2:34 PM, "Andrea Edwards" <[email protected]<mailto:[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]<mailto:[email protected]> https://lists.biomart.org/mailman/listinfo/users
_______________________________________________ Users mailing list [email protected] https://lists.biomart.org/mailman/listinfo/users
