Some comment saying that you cannot complain oracle for non-standard setup... However, should I break anything else just to install oracle? Anyway, may be a useful resource of installing oracle cluster - http://thedailywtf.com/forums/65743/ShowPost.aspx Oracle SQL links - http://mycodeblog.blogspot.com/2007/06/sql-cheat-sheet.html Pure java solution to full text search - http://www.infoq.com/news/2007/10/lucene-oracle http://marceloochoa.blogspot.com/2007/09/running-lucene-inside-your-oracle-jvm.html http://dbprism.cvs.sourceforge.net/dbprism/ojvm/ Oracle does allow definitions of user-defined types.Please see http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/sql_elements001.htm#i46376 User-defined types can then be used for column definitions. See e.g. the fourth example given here http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/statements_7002.htm#i2062833 Oracle also allows creation of a table based on one user-defined type, i.e. an "object table". See here http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/statements_7002.htm#i2159410 User-defined types can be changed; see http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/statements_4002.htm#i2057828 Oracle even offers an option as to whether existing data in tables based on previous type definition is converted or not; see http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/statements_4002.htm#i2079300 There are a couple of pages in the Object-Relational Developer's Guide explaining the consequences, briefly... Note: all links above are to Oracle 11g documentation, but many, if not all, of these features have been available since 9i. row base permission - http://technotes.towardsjob.com/oracle/virtual-private-database-oracle/ How fetch size can affect performance - http://www.skill-guru.com/blog/2010/07/25/jdbc-performance-tuning-with-fetch-size/ Recycle bin for Oracle 10g - http://mahmoudoracle.blogspot.gr/2012/11/recycle-bin-in-database.html#.UNXprSUqthH Oracle won't put null in index... how can we find the column with issue out? - http://blog.jooq.org/2014/05/12/the-index-youve-added-is-useless-why/ You can have java like stacetrace at PLSQL - http://blog.jooq.org/2014/08/29/plsql-backtraces-for-debugging/ Need to be careful about using rownum to limit the result in oracle - http://www.monkeycancode.com/oracle-limit-returned-records-with-rownum