Java Doc for ExternalSortFactory.java in  » Database-DBMS » db-derby-10.2 » org » apache » derby » impl » store » access » sort » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » Database DBMS » db derby 10.2 » org.apache.derby.impl.store.access.sort 
Source Cross Reference  Class Diagram Java Document (Java Doc) 


java.lang.Object
   org.apache.derby.impl.store.access.sort.ExternalSortFactory

ExternalSortFactory
public class ExternalSortFactory implements SortFactory,ModuleControl,ModuleSupportable,SortCostController(Code)


Field Summary
final protected static  intDEFAULT_MAX_MERGE_RUN
    
final protected static  intDEFAULT_MEM_USE
    


Method Summary
public  voidboot(boolean create, Properties startParams)
    
public  booleancanSupport(Properties startParams)
    
public  voidclose()
    
public  SortcreateSort(TransactionController tran, int segment, Properties implParameters, DataValueDescriptor[] template, ColumnOrdering columnOrdering, SortObserver sortObserver, boolean alreadyInOrder, long estimatedRows, int estimatedRowSize)
     Create a sort.
public  PropertiesdefaultProperties()
     There are no default properties for the external sort..
public  doublegetSortCost(DataValueDescriptor[] template, ColumnOrdering columnOrdering, boolean alreadyInOrder, long estimatedInputRows, long estimatedExportRows, int estimatedRowSize)
     Short one line description of routine.

The sort algorithm is a N * log(N) algorithm.

public  SortCostControlleropenSortCostController()
     Return an open SortCostController.
public  UUIDprimaryFormat()
    
public  StringprimaryImplementationType()
    
public  voidstop()
    
public  booleansupportsFormat(UUID formatid)
    
public  booleansupportsImplementation(String implementationId)
    

Field Detail
DEFAULT_MAX_MERGE_RUN
final protected static int DEFAULT_MAX_MERGE_RUN(Code)



DEFAULT_MEM_USE
final protected static int DEFAULT_MEM_USE(Code)





Method Detail
boot
public void boot(boolean create, Properties startParams) throws StandardException(Code)



canSupport
public boolean canSupport(Properties startParams)(Code)



close
public void close()(Code)



createSort
public Sort createSort(TransactionController tran, int segment, Properties implParameters, DataValueDescriptor[] template, ColumnOrdering columnOrdering, SortObserver sortObserver, boolean alreadyInOrder, long estimatedRows, int estimatedRowSize) throws StandardException(Code)
Create a sort. This method could choose among different sort options, depending on the properties etc., but currently it always returns a merge sort.
See Also:   SortFactory.createSort



defaultProperties
public Properties defaultProperties()(Code)
There are no default properties for the external sort..
See Also:   MethodFactory.defaultProperties



getSortCost
public double getSortCost(DataValueDescriptor[] template, ColumnOrdering columnOrdering, boolean alreadyInOrder, long estimatedInputRows, long estimatedExportRows, int estimatedRowSize) throws StandardException(Code)
Short one line description of routine.

The sort algorithm is a N * log(N) algorithm. The following numbers on a PII, 400 MHZ machine, jdk117 with jit, insane.zip. This test is a simple "select * from table order by first_int_column. I then subtracted the time it takes to do "select * from table" from the result. number of rows elaspsed time in seconds -------------- ----------------------------- 1000 0.20 10000 10.5 100000 80.0 We assume that the formula for sort performance is of the form: performance = K * N * log(N). Solving the equation for the 1000 and 100000 case we come up with: performance = 1 + 0.08 N ln(n) NOTE: Apparently, these measurements were done on a faster machine than was used for other performance measurements used by the optimizer. Experiments show that the 0.8 multiplier is off by a factor of 4 with respect to other measurements (such as the time it takes to scan a conglomerate). I am correcting the formula to use 0.32 rather than 0.08. - Jeff

RESOLVE (mikem) - this formula is very crude at the moment and will be refined later. known problems: 1) internal vs. external sort - we know that the performance of sort is discontinuous when we go from an internal to an external sort. A better model is probably a different set of contants for internal vs. external sort and some way to guess when this is going to happen. 2) current row size is never considered but is critical to performance. 3) estimatedExportRows is not used. This is a critical number to know if an internal vs. an external sort will happen.

The identifier to be used to open the conglomerate later.
exception:
  StandardException - Standard exception policy.




openSortCostController
public SortCostController openSortCostController() throws StandardException(Code)
Return an open SortCostController.

Return an open SortCostController which can be used to ask about the estimated costs of SortController() operations.

The open SortCostController.
exception:
  StandardException - Standard exception policy.
See Also:   SortCostController




primaryFormat
public UUID primaryFormat()(Code)

See Also:   MethodFactory.primaryFormat



primaryImplementationType
public String primaryImplementationType()(Code)

See Also:   MethodFactory.primaryImplementationType



stop
public void stop()(Code)



supportsFormat
public boolean supportsFormat(UUID formatid)(Code)

See Also:   MethodFactory.supportsFormat



supportsImplementation
public boolean supportsImplementation(String implementationId)(Code)

See Also:   MethodFactory.supportsImplementation



Methods inherited from java.lang.Object
native protected Object clone() throws CloneNotSupportedException(Code)(Java Doc)
public boolean equals(Object obj)(Code)(Java Doc)
protected void finalize() throws Throwable(Code)(Java Doc)
final native public Class getClass()(Code)(Java Doc)
native public int hashCode()(Code)(Java Doc)
final native public void notify()(Code)(Java Doc)
final native public void notifyAll()(Code)(Java Doc)
public String toString()(Code)(Java Doc)
final native public void wait(long timeout) throws InterruptedException(Code)(Java Doc)
final public void wait(long timeout, int nanos) throws InterruptedException(Code)(Java Doc)
final public void wait() throws InterruptedException(Code)(Java Doc)

w__w___w.__j__a_v_a__2s__.__c__o__m___ | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.