{"repo":"Claviz/bellboy","free":true,"listed":false,"github":"https://github.com/Claviz/bellboy","clone":"git clone https://github.com/Claviz/bellboy.git","description":"Highly performant JavaScript data stream ETL engine.","language":"TypeScript","stars":107,"topics":["etl","streaming","excel","postgres","mssql","nodejs","csv","mysql","rest-api"],"license":"MIT","category":"databases-storage","readme_excerpt":"bellboy Highly performant JavaScript data stream ETL engine. How it works? Bellboy streams input data row by row. Every row, in turn, goes through user-defined function where it can be transformed. When enough data is collected in batch, it is being loaded to destination. Installation Before install, make sure you are using latest version of Node.js. If you will be using bellboy with the native [msnodesqlv8][msnodesqlv8-url] driver, add it as a dependency. Example This example shows how bellboy can extract rows from the Excel file, modify it on the fly, load to the Postgres database, move processed file to the other folder and process remaining files. Just in five simple steps. Jobs A job in bellboy is a relationship link between processor and destinations. When the job is run, data processing and loading mechanism will be started. Initialization To initialize a Job instance, pass processor and some destination(s). Options - reporters Reporter[] \\ Array of reporters. - jobName string \\ Optional user-defined name of the job. Can become handy if used in combination with extended events to distinguish events from different jobs. Instance methods - run async function() \\ Starts processing data. - on function(event, async function listener) \\ Add specific event listener. - onAny function(async function listener) \\ Add any event listener. - stop function(errorMessage?) \\ Stops job execution. If errorMessage is passed, job will throw an error with this message. Events and event list","default_branch":null,"files":null,"tree":[],"storefront":"/r/Claviz","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/Claviz/bellboy/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}