I am currently using gradle mlExportToFile to export json documents to a file. However, I need the final file to be in newline delimited JSON format, with each document on its own line within the file. I saw that the mlExportToFile + REST transform method could be used to create CSVs, so I am assuming this approach will also work for NDJSON. I've tried just about everything I can think of and the file is still not putting records on their own lines. Any advice is greatly appreciated!!
How to use gradle mlExportToFile and REST Transform to Create NDJSON File
103 Views Asked by Hank At
1
There are 1 best solutions below
Related Questions in MARKLOGIC
- How to transform multiple documents into a single document using MarkLogic's REST API?
- MarkLogic 8 - Stream large result set to a file - JavaScript - Node.js Client API
- MarkLogic 8 - Node.js Client API - Can I do a SPARQL Query?
- Search documents with parent-child context : Marklogic
- MarkLogic 8 - XQuery write large result set to a file efficiently
- MarkLogic 8 - After upgrade we are getting 405 Method Not Allowed on a GET
- REST Error during extract document data : Marklogic
- MarkLogic 8 - Rest Endpoint Returning XML even though we specify JSON
- Marklogic 8 xml search
- MarkLogic Samplestack installation issue (Execution failed for task ':dbTeardown')
- Converting database to RDF using D2RQ
- Using MarkLogic Java API, search and retrieve formatted XML matching property, collection, and content
- Xquery get the children nodes by passing parent value at run time
- dateTime range query
- How to automate a calculation in MarkLogic 8 after a document is loaded or updated?
Related Questions in ML-GRADLE
- Unable to setup MarkLogic spring batch basic app
- mDeploy failing after DHF, Gradle and Marklogic upgrades
- How to configuring Taskserver 'max time limit' in MarkLogic Deployment Using mlgradle?
- How to use gradle mlExportToFile and REST Transform to Create NDJSON File
- Deploy a specific MarkLogic Database configuration using ml-gradle
- Gradle Build Failed With ml-gradle plugin install
- ml-gradle local message error causing deployment to fail
- Can I use mlDatabasesWithForestsOnOneHost with replicas?
- Creating Marklogic Forest using ML Gradle
- Dynamically setting ml-gradle properties
- Setting total number of Marklogic forests for a database in ml-gradle
- 401 Unauthorized while resolving gradle dependencies
- How do I manage MarkLogic REST endpoint extension versions using gradle?
- Is it possible to use ml-gradle on MarkLogic 9 without the Admin role?
- ml-gradle NOT to create my-app-content database
Related Questions in MARKLOGIC-10
- Does MarkLogic store JSON natively?
- what is the difference between cts, fn and xdmp functions in Marklogic?
- How do I make environment variables available in Grove?
- Getting Bad request While using Transaction API [MarkLogic]
- Get all roles from security database in Marklgoic
- Is there any way to limit the number of documents returned by a structured query?
- How to set session in marklogic cluster?
- Can I run MarkLogic optic 'where' with cts.Query in "filtered" manner
- MarkLogic xdmp.nodeInsertChild how to insert an array in json object
- Marklogic Admin UI and Query console not accessible
- clear database of marklogic
- How to use gradle mlExportToFile and REST Transform to Create NDJSON File
- Release all document locks at a specified time in Marklogic
- Clear document properties as soon as document is unlocked
- Importing database and app server configurations from ML 8 to ML10 in Marklogic
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
I think the limitation here is that when the underlying ExportToWriterListener (from the ML Java Client / DMSDK library) will write the document to the File in the format that it's retrieved from ML, which will include newlines by default in it. The ml-gradle task is just a single line of code -
runQueryBatcherJob(new ExportToFileJob())- so you could easily customize your own task.I believe you can reuse ExportToFileJob (which is in the marklogic-data-movement-components project) - it has a
getExportListener()method on it that returns theExportToWriterListener(in the marklogic-client-api project). And that has anonGenerateOutput(OutputListener)method, where you can write anOutputListenerthat smushes the JSON into a single line.That could certainly become a new feature in ml-gradle too; i.e. a property such as
-PnewlineDelimitedJson=true.Feel free to raise a ticket in the ml-gradle project for this (though the enhancement will actually be made in the marklogic-data-movement-components project).