Skip to content

Conversation

@martinivanoff
Copy link
Contributor

No description provided.

@TanyaDimitrova TanyaDimitrova self-assigned this Jan 10, 2017
Thank you for choosing Telerik **RadSpreadStreamProcessing**!

**RadSpreadStreamProcessing** is a library that allows you create big spreadsheet documents and export them to the most common file formats with a great performance and minimal resources.
This article briefly explains the Spread Stream library specifics as what is spread streaming, how it works compared to the **RadSpreadProcessing** library and when to use it.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This article briefly explains the specifics of RadSpreadStreamProcessing - what is spread streaming, how it works compared to the RadSpreadProcessing library and when to use it.


Spread streaming is a document processing paradigm that allows you to create big spreadsheet documents with great performance and minimal memory footprint.

The key for the memory efficiency is that the spread streaming library writes the spreadsheet content directly to a stream without creating and preserving the spreadsheet document model in memory. Each time a value is set, the export kicks-in and the new value is written into the stream. This allows you to create large documents with an excellent performance.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not absolutely true. All the values that should be preserved in the exported document are written when the corresponding object is disposed. E.g., if the users set a value to a cell, this value along with the other cell properties will be written when the used ICellExporter object is disposed.

## RadSpreadStreamProcessing vs. RadSpreadProcessing

There are two main differences between the libraries.
* __RadSpreadStreamProcessing__ can be used only to create documents and append data to existing ones. On the other hand you can use the __RadSpreadProcessing__ also for reading documents.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On the other hand, you can use the RadSpreadProcessing also for reading and modifying the content of documents.

* __RadSpreadStreamProcessing__ can be used only to create documents and append data to existing ones. On the other hand you can use the __RadSpreadProcessing__ also for reading documents.
* __RadSpreadStreamProcessing__ writes directly into a stream, unlike __RadSpreadProcessing__ which creates models for the elements in the document. This is why the memory used with the spread streaming library is significantly lower than when using __RadSpreadProcessing__.

## When to Use the Spread Streaming
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When to Use RadSpreadStreamProcessing


## When to Use the Spread Streaming

You can use the spread stream processing to create and export large amount of data with a low memory footprint. You can also append data to already existing document stream.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can use RadSpreadStreamProcessing...
Mention the great performance as well.

* [Freezing panes]({%slug radspreadstreamprocessing-features-worksheetviewexporter%}#freeze-panes)

## RadSpreadStreamProcessing vs. RadSpreadProcessing

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add a link to the Overview page for RadSpreadProcessing, so the customers can find it easily if they are not familiar with the library.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The same link could be added to the first sentence of the article as well.

@martinivanoff martinivanoff merged commit 9756000 into master Jan 11, 2017
@martinivanoff martinivanoff deleted the SpreadStream_Overview branch January 11, 2017 14:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants