ASF GitHub Bot commented on BAHIR-110:

Github user mayya-sharipova commented on the issue:

    The code using `option` parameters work as expected, and dbs are 
successfully loaded through `_changes`. But it seems to me that there could be 
better separation between classes `CloudantAllDocsConfig` and 
`CloudantChangesConfig`. Even though I am loading data using `_changes`, I have 
noticed there is still unnecessary calculations for the partitions going on. A 
part of it, is an extra unnecessary http request to calculate the number of 
`totalRows` in `JsonStoreRDD`: 

> Replace use of _all_docs API with _changes API in all receivers
> ---------------------------------------------------------------
>                 Key: BAHIR-110
>                 URL: https://issues.apache.org/jira/browse/BAHIR-110
>             Project: Bahir
>          Issue Type: Improvement
>            Reporter: Esteban Laver
>   Original Estimate: 216h
>  Remaining Estimate: 216h
> Today we use the _changes API for Spark streaming receiver and _all_docs API 
> for non-streaming receiver. _all_docs API supports parallel reads (using 
> offset and range) but performance of _changes API is still better in most 
> cases (even with single threaded support).
> With this ticket we want to:
> a) re-implement all receivers using _changes API
> b) compare performance between the two implementations based on _changes and 
> _all_docs
> Based on the results in b) we could decide to either
> - replace _all_docs implementation with _changes based implementation OR
> - allow customers to pick one (with a solid documentation about pros and 
> cons) 

This message was sent by Atlassian JIRA

Reply via email to