From gfourny at inf.ethz.ch Tue Jul 7 06:08:12 2020 From: gfourny at inf.ethz.ch (Ghislain Fourny) Date: Tue, 7 Jul 2020 13:08:12 +0000 Subject: [xquery-talk] [ANN] Rumble 1.7.0 "Phoenix Atlantica" Message-ID: Dear all, Rumble 1.7.0 was released today. Rumble runs JSONiq (XQuery's cousin) on top of Spark. We have a lot of new features, prioritized based on our users, that bring us closer to whole coverage, including (since the previous announcement of 1.5.1 to this list): - Running in parallel now "crosses" function boundaries, so you can pass sequences of billions of items to and out of a function. Likewise, global variables may be bound to sequences of billions of items. Many expressions and functions can also now run in parallel on billions of items (conditional, typeswitch, switch, ...) - Declarative machine learning: function items used as estimators and transformers, with Spark ML doing the job inside on your large-scale datasets. - Library modules are supported; for now, the module namespace is used to resolve the location, i.e., the namespace is the actual location on any file system, which should be straightforward to understand for Python programmers. Location hints will follow soon. - Support for writing queries in Jupyter notebooks (very popular with data scientists), with Rumble running as an HTTP server in the background. - HTTP is supported as a ready-only file system, in addition to otherwise HDFS, S3, Azure, the local file system, etc: as most XQuery users already know it, this means that you can share your code on the Web and import modules directly from there. Or you can share your code within your institution on HDFS, etc. - Relative URIs (of imported modules, input data, etc) are resolved according to the standard (e.g., relative URIs in a query are resolved against the query location, etc). - Support for global variables (with dependency cycle detection), try-catch expressions, simple map expressions, XQuery 3.1's "=>" function call notation, many new builtin functions including trace for debugging. - Support for the Avro and SVM input formats (in addition to JSON, Parquet, CSV, ROOT...) - Support for the brand new version of Spark 3.0.0. Enjoy! It's free and open source (Apache 2.0) on http://www.rumbledb.org/ Kind regards, Ghislain From christian.gruen at gmail.com Tue Jul 14 04:41:08 2020 From: christian.gruen at gmail.com (=?UTF-8?Q?Christian_Gr=C3=BCn?=) Date: Tue, 14 Jul 2020 13:41:08 +0200 Subject: [xquery-talk] [ANN] BaseX 9.4: The Summer Edition In-Reply-To: References: Message-ID: Dear all, We are glad to give you Version 9.4 of BaseX, our XML framework, database system and XQuery 3.1 processor: https://basex.org/ We have focused on rewriting and optimizing complex XQuery code and speeding up your RESTXQ apps: WEB APPLICATIONS - DBA: support for millions of log entries - LOGTRACE option: write trace output to logs or STDERR - rest:init: Full or partial initialization of RESTXQ cache - basexhttp: register job services GUI - result view: show number of results and result size - Shift F4-F7: toggle search options (case, regeex, ..) - Ctrl-Shift-B: jump to matching bracket XQUERY LOCKING - single lock option for reading and updating queries - Java bindings: annotation added for updating functions XQUERY FUNCTIONS - convenience functions: json:doc, csv:doc, html:doc - element names: convert:encode-key, convert:decode-key - jobs:eval: option added for writing log entries - session module: only create new sessions if required XQUERY PERFORMANCE - boolean comparisons: flatten nested expressions - boolean expressions: merge conjunctions - comparisons: simplify operands with if expression - database functions: always open at compile time - databases: propagate to more expressions at compile time - filters: inline context for single items - filters: rewrite to simple maps - FLWOR: inline where clauses into let clauses - FLWOR: merge last with return clause, rewrite to simple map - FLWOR: rewrite "return if ..." to "where ... return" - fn:for-each, fn:filter: rewrite to FLWORs and filters - if expression, EBV tests: simplify boolean tests - lists, sets, logical expressions: flatten expressions - lists: rewrite to union expressions - logical expressions: apply more boolean algebra rules - paths: remove redundant predicates - predicates with name functions: rewrite to name tests - predicates: merge expressions, discard redundant tests - predicates: remove of superfluous and redundant tests - set expressions: merge operands - simple map: inline cast expressions - simple maps: faster evaluation - simple maps: merge operands - simple maps: rewrite to paths, optimize for index access - switch: rewrite to if expression - types: skip redundant checks, promotions and conversions For a more comprehensive list of added and updated features, check out our documentation (docs.basex.org) and check out the GitHub issues (github.com/BaseXdb/basex/issues). Have fun, Your BaseX Team