Loading TOC...
Release Notes (PDF)

Release Notes — Chapter 6

Other Notes

This section provides the following information about MarkLogic Server:

Memory and Disk Space Requirements

MarkLogic Server requires at least 2 GB of system memory.

The first time it runs, MarkLogic Server automatically configures itself to the amount of memory on the system, reserving as much as it can for its own use. If you need to change the default configuration, you can manually override these defaults at a later time using the Admin Interface.

MarkLogic recommends the following two guidelines for server sizing:

  • Configure your server with 1 GB of physical memory for every 16 GB of source content you expect to manage.
  • Configure your server with at least one CPU (or core) per 100 GB of source content.

Pragmatically, we recommend running most configurations with a minimum of two CPUs (or two cores).

MarkLogic Server requires 1.5 times the disk space of the total forest size. Specifically, each forest on a filesystem requires its filesystem to have at least 1.5 times the forest size in disk space (or, for each forest less than 48 GB, 3 times the forest size) when the merge max size database merge setting is set to the default of 48 GB. This translates to approximately 1.5 times the disk space of the source content after it is loaded. For example, if you plan on loading content that will result in a 200 GB database, reserve at least 300 GB of disk space. The disk space reserve is required for merges.

It is critical for swap space to be properly configured on your system according to the recommendations for your platform, as described in Memory, Disk Space, and Swap Space Requirements in the Installation Guide.

For more details about memory, disk, and swap requirements, see Memory, Disk Space, and Swap Space Requirements in the Installation Guide.

* You need at least 2 times the merge max size of free space per forest, regardless of the forest size. Therefore, with the default merge max size of 48 GB, you need at least 96 GB of free space. Additionally, if your journals are not yet created, you need 2 times the journal size of free disk space (if the journal space is not yet allocated). Therefore, to be safe, you need (with the default merge max size and a 2G journal size) at least 100 GB of free space for each forest, no matter what size the forest is.

Compatibility with XQuery Specifications

MarkLogic implements the XQuery language, functions and operators specified in the W3C XQuery 1.0 Recommendations:

Additionally, there is backwards compatibility with the May 2003 version of the XQuery 1.0 Draft specification used in MarkLogic Server 3.2 and previous versions. For details on the XQuery implementation in MarkLogic Server 4.1, including the three different dialects supported, see the XQuery and XSLT Reference Guide.

XQuery Extensions

Working within the W3C XQuery 1.0 Recommendation, MarkLogic has created a number of language extensions enabling key functionality not supported in the current release of the language specification. These extensions provide transactional update capabilities, assorted search and retrieval features, various data manipulation functions, and administrative tools.

The extensions, as well as the XQuery standard functions, are documented at http://developer.marklogic.com.

SQL Queries

This section lists the SQL queries that are known not to work in 10.0-9 and those that are not yet fully optimized.

  • Queries that return tens of thousands of rows are not optimized. Use LIMIT to restrict the number of rows returned, or focus your query with more filters in the WHERE clause or a cts:query to restrict by collection, date range, etc. If you are using a BI Tool, configure it to avoid an unrestricted SELECT * FROM table.
  • Special use of the MATCH keyword is retained in MarkLogic 10.0-9, but MATCH queries run filtered (MATCH does not use the Universal Index).
  • SQL is read-only in 10.0-9. The only way to create a persistent view is by means of a template view or a range view. You can't create a view over views and save it. And you can't create a TEMP table. Applications, such as BI Tools, that rely on creating TEMP tables to cache results need to be configured to use some other method.

REST Extensions with Large XQuery Dependencies May Lead to Segmentation Fault and Server Restart

The deployment of a REST extension with many XQuery dependencies many lead to a segmentation fault and server restart, due to a segmentation fault in derivesFrom(). In some cases, the import of variables from XQuery module A into module B is causing MarkLogic Server to crash.


MarkLogic Server includes the following documentation, available through the developer web site at http://developer.marklogic.com/:

Documentation Description
MarkLogic Server-Side JavaScript Function Reference API documentation for the Server-Side MarkLogic built-in extensions to the JavaScript standard functions.
MarkLogic XQuery and XSLT Function Reference API documentation for the MarkLogic built-in and module extensions to the XQuery standard functions, as well as API documentation for the W3C functions implemented in MarkLogic Server.
Getting Started with MarkLogic Server A quick, step-by-step overview of how to get up and running with MarkLogic Server.
Installation Guide Provides procedures for installing MarkLogic Server.
Release Notes Contains a summary of new features and upgrade compatible information.
Concepts Guide Provides an overview of MarkLogic and conceptual information about the server architecture.
Application Developer's Guide Provides procedures, methodologies, and conceptual information about general MarkLogic Server application development tasks.
Search Developer's Guide Provides procedures, methodologies, and conceptual information about search-based application development tasks.
Node.js Application Developer's Guide Provides procedures, methodologies, and conceptual information about developing MarkLogic Server applications using the Node.js Client API.
Java Application Developer's Guide Provides procedures, methodologies, and conceptual information about developing MarkLogic Server applications using the Java API.
XCC Developer's Guide An overview of the what you can do with the XCC libraries, examples of how to use XCC, and an overview of the sample applications included with XCC.
MarkLogic Connector for Hadoop Developer's Guide Provides information on the MarkLogic Connector for Hadoop, a Java library to help you build applications that combine MarkLogic Server and Hadoop map-reduce jobs.
REST Application Developer's Guide Provides information on MarkLogic Server administration and application development using the MarkLogic REST API.
Semantic Graph Developer's Guide Provides procedures, methodologies, and conceptual information about semantic application development tasks and MarkLogic SPARQL and triple support.
Temporal Developer's Guide Provides information on developing applications using MarkLogic bi-temporal features.
Entity Services Developer's Guide Provides procedures, methodologies, and conceptual information about developing MarkLogic Applications using entity relationship modeling and the Entity Services API.
Reference Application Architecture Guide Provides an overview of reference application architectures for multi-tiered applications built using MarkLogic as the database.
Administrator's Guide Provides procedures for administrative tasks such as creating servers, creating databases, backing up databases, creating users, setting up your security policy, and so on.
Scripting Administrative Tasks Guide Provides information on writing code to script various administrative tasks such as creating and modifying databases, App Servers, and so on.
Database Replication Guide Provides information on database replication, useful for disaster recovery scenarios.
Flexible Replication Guide Provides information on Flexible Replication, useful for information sharing from one database to another.
Ops Director Guide Provides procedures for setting up and using Ops Director for monitoring MarkLogic clusters.
Monitoring MarkLogic Guide Provides information on monitoring MarkLogic Server, including using the built-in monitoring tools and integrating with external tools such as HP Operations Manager.
MarkLogic Connector for SharePoint® Administrator's Guide Documentation for the MarkLogic Connector for SharePoint°Æ, which allows you to mirror documents from a Microsoft SharePoint repository in MarkLogic Server.
JavaScript Reference Guide A language reference for the MarkLogic Server-Side JavaScript language. This book includes MarkLogic-specific Object reference, but is not a comprehensive language reference.
XQuery and XSLT Reference Guide A condensed overview of the XQuery language, including information on the three XQuery dialects in MarkLogic Server. This book does include some syntax information, although it is primarily intended as in introduction and quick-reference to the language, not as a comprehensive reference.
mlcp User Guide A procedural guide that explains how to use MarkLogic Content Pump (mlcp) command line tool to load content into MarkLogic, extract content from MarkLogic, or copy content between databases.
Content Processing Framework Guide Provides an introduction to the Content Processing Framework and procedures for installing the default content processing framework.
Query Performance and Tuning Guide Provides performance-related information that is useful to application developers and administrators.
Scalability, Availability, and Failover Guide Provides information on large-scale system architecture, clustering, availability, and details on setting up shared-disk and local-disk failover.
Security Guide Provides information on the role-based security model in MarkLogic Server.
MarkLogic Server on Amazon Web Services (AWS) Guide Information about running MarkLogic Server in an EC2 environment.
Query Console User Guide Provides step-by step information on using Query Console, a tool to create and run arbitrary XQuery code.
Loading Content Into MarkLogic Server Guide Provides procedures, methodologies, and conceptual information about loading content into MarkLogic Server. Includes an overview of ingestion techniques available using XQuery, Java, REST, and the MarkLogic Content Pump (mlcp).
SQL Data Modeling Guide Provides information on how to use MarkLogic's SQL interface, including the creation of relational schemas and views.
Messages and Codes Reference Guide A reference guide to MarkLogic Server and MarkLogic Application Services error and log messages.
Glossary, Copyright, and Support Includes a glossary of terms as well as copyright and support information.
MarkLogic REST API Reference API documentation for the REST API.
Java Client API Documentation API documentation for the MarkLogic Java Client API.
Node.js Client API Reference API documentation for the MarkLogic Node.js Client API.
XCC Javadoc API Documentation API documentation for the MarkLogic XML Contentbase Connector for Java API (XCC/J).
MarkLogic Hadoop MapReduce Connector API API documentation for the MarkLogic Hadoop MapReduce Connector.
C++ UDF API Reference API documentation for the C++ User Defined Function (UDF) API.

XQuery language documentation is provided through the W3C working group drafts specified in Compatibility with XQuery Specifications. Sample code is provided through the demo server at http://localhost:8000/, which is automatically installed as part of the MarkLogic Server installation process. Additionally, there are many samples available on the MarkLogic developer site (http://developer.marklogic.com).

XQuery language extensions specific to MarkLogic Server are documented online in the MarkLogic XQuery and XSLT Function Reference. Example code snippets are provided as part of that documentation. The Admin Interface provides a large-scale example of complex XQuery programming, using many of the MarkLogic XQuery language extensions.

The Admin Interface includes built-in help screens that explain the purpose of the various controls and parameters in the Admin Interface.

Known bugs are documented online as we find them or as they are reported to us. See http://support.marklogic.com (supported customers only) for more details.

Browser Requirements

The Admin Interface and many of the other GUI tools (Query Console, Ops Director 1.x, and so on) are supported as follows:

Other browser/platform combinations may work but are not as thoroughly tested. Please consult the documentation for your individual GUI tool for exact browser requirements.

Security: Prevent Abuse of System Entity Expansion

Normal XML processing allows for external entities to be referenced and included in the parsed content of XML files. If you want to disable this processing, set the trace event Disable XML External Entities.

« Previous chapter