- From: Michael Rys <mrys@microsoft.com>
- Date: Mon, 21 May 2001 10:17:41 -0700
- To: "Ken North" <ken_north@compuserve.com>, <xml-dev@lists.xml.org>, "W3C Query Comments" <www-xml-query-comments@w3.org>, "XPath Comments" <www-xpath-comments@w3.org>
Hi Ken Due to the side-effect free nature of the FLWR expressions in XQuery (and the functional semantics in XPath), I see no problem of being able to parallelize XQuery expressions (assuming that UDFs are written side-effect free as well). Do you have any specific point in the functionality that makes you believe otherwise? Best regards Michael > -----Original Message----- > From: Ken North [mailto:ken_north@compuserve.com] > Sent: Monday, May 21, 2001 10:02 AM > To: xml-dev@lists.xml.org; W3C Query Comments; XPath Comments > Subject: Parallel execution: functions, XPath, XQuery, > > > > A review of the current working documents for XQuery and > XPath 2.0 requirements raises some questions about building a > search engine that can be deployed over a parallel processing > architecture. > > Because SQL query optimizers can "parallelize" operations, > SQL engines can exploit parallel architectures and use > multiple processors for query evaluation and execution. > Clearly we want XML processing to be able to exploit > massively parallel processing, clusters, and other parallel > architectures, but there are issues: > > 1. SQL is set-oriented so it's possible to partition data across > (processing) nodes, partition queries, and combine results. > An SQL query doesn't define a navigation path for getting to > data. The query just specifies what's wanted and a query > optimizer determines the most efficient means of execution. > > So issue 1 is how to partition document collections for > optimal parallel execution with XPath and XQuery. I've not > found any published research on parallel evaluation or > parallel execution with XPath. Anyone have a URL? > > 2. The XPath 2.0 requirements document identifies the need > for additional string and aggregate functions, but doesn't > define a requirement for being able to invoke user-defined > functions (UDFs). XQuery supports XPath functions but it also > supports UDFs. A future version will support UDFs implemented > in programming languages. > > So issue 2 is the future direction of XPath, particularly > functions and extensibility. > > 3. If you are using an SQL products such as Oracle 8i and IBM > DB2, you can add UDFs for processing XML data by implementing > them in Java, C/C++ and deploying them as a database plug-in. > For example, by implementing FOO() in Java, I can use SELECT > FOO() in SQL queries. It's possible to use FOO() in parallel > queries. DB2, for example, provides an ALLOW PARALLEL option > when I register my function classes with the database. > Therefore, SQL queries can still be "parallelized" if they > include my Java, C/C++ UDFs. > > So issue 3 is how to express to XPath or XQuery details such > as whether to use a single instance of the Java class per > query or allow parallel use of an UDF. > > > > > > > ------------------------------------------------------------------ > The xml-dev list is sponsored by XML.org, an initiative of > OASIS <http://www.oasis-open.org> > > The list archives are at > http://lists.xml.org/archives/xml-dev/ > > To unsubscribe from this elist send a message with the single > word "unsubscribe" in the body to: xml-dev-request@lists.xml.org >
Received on Monday, 21 May 2001 14:17:08 UTC