GitHub user cloverhearts reopened a pull request:

    https://github.com/apache/zeppelin/pull/1533

    [ ZEPPELIN-1559 ] Code Editor slow performance resolve of the many 
Notebooks 

    ### What is this PR for?
    Currently, if you have a Notebook large number of,
    There is a sharp decrease in performance of the Code editor.
    The number and Paragraph creation of the Notebook does not have a 
relationship.
    We are should always use the Code editor of the same performance.
    
    I had to print a Notebook list only if there is a request.
    There was quite a lot of performance improvements.
    
    
    ### What type of PR is it?
    Improvement
    
    ### Todos
    - [x] - change Notebook list render logic
    
    ### What is the Jira issue?
    https://issues.apache.org/jira/browse/ZEPPELIN-1559
    https://issues.apache.org/jira/browse/ZEPPELIN-1513
    
    ### How should this be tested?
    1. Create a notebook over 1000. (tested 10,000)
       I've used script on this.  (important! please, backup for notebooks 
directory.)
    ```
    #/bin/bash
    
    idx="0"
    
    while [ $idx -lt 1000 ] # notebooks count 1000
    do
      mkdir $idx
      echo """
    {
        \"paragraphs\": [
        {
                \"text\": 
\"fsdkljfowiejfowejfoiwefiowejfiojlkdsjfklsdjflkjsdflkjwlkjefewf\",
                        \"dateUpdated\": \"Oct 13, 2016 5:02:44 PM\",
                        \"config\": {
                                \"colWidth\": 12.0,
                        \"graph\": {
                                \"mode\": \"table\",
                        \"height\": 300.0,
                        \"optionOpen\": false,
                        \"keys\": [],
                        \"values\": [],
                        \"groups\": [],
                        \"scatter\": {},
                        \"map\": {
                                \"baseMapType\": \"Streets\",
                        \"isOnline\": true,
                        \"pinCols\": []
        }
        },
                \"enabled\": true,
                \"editorMode\": \"ace/mode/scala\"
        },
                \"settings\": {
                        \"params\": {},
                \"forms\": {}
        },
                \"apps\": [],
                \"jobName\": \"paragraph_1476345687682_-1459653828\",
                \"id\": \"20161013-170127_68316618\",
                \"dateCreated\": \"Oct 13, 2016 5:01:27 PM\",
                \"status\": \"READY\",
                \"progressUpdateIntervalMs\": 500
        }
        ],
                \"name\": \""${idx}"\",
                \"id\": \""${idx}"\",
                \"angularObjects\": {
                        \"2BZSC9D3G:shared_process\": [],
                \"2BXGWF5TF:shared_process\": [],
                \"2BYKTADMA:shared_process\": [],
                \"2BYFT9HTZ:shared_process\": [],
                \"2BXDTJMED:shared_process\": [],
                \"2BZHPZ6NS:shared_process\": [],
                \"2BYKRWYB3:shared_process\": [],
                \"2BZH2UAT4:shared_process\": [],
                \"2BZ38J35G:shared_process\": [],
                \"2BXJ2X464:shared_process\": [],
                \"2BYQ57ED9:shared_process\": [],
                \"2BXDSA2SN:shared_process\": [],
                \"2BWZCTD2B:shared_process\": [],
                \"2BWT81MNU:shared_process\": [],
                \"2BWA7ZTRD:shared_process\": [],
                \"2BXW6X5KN:shared_process\": [],
                \"2BVWDQPXH:shared_process\": [],
                \"2BZGAF8KG:shared_process\": []
    },
        \"config\": {},
        \"info\": {}
        }
      """ > $idx/note.json
      
      idx=$[$idx+1]
    done
     
    ```
    
    2. zeppelin restart or refresh notebook.
    3. Try coding in any notebook. (fast)
    
    ### Screenshots (if appropriate)
    #### before ( 5000 notebooks)
    
![optimization_before_codeditor](https://cloud.githubusercontent.com/assets/10525473/19457150/f18845a0-94ff-11e6-876d-4386dbf1e7de.gif)
    
    #### after ( 5000 notebooks)
    
![optimization_for_codeeidtor](https://cloud.githubusercontent.com/assets/10525473/19457184/1f7d5036-9500-11e6-8b0c-91b301641c73.gif)
    
    ### Questions:
    * Does the licenses files need update? no
    * Is there breaking changes for older versions? no
    * Does this needs documentation? no
    


You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/cloverhearts/zeppelin 
ZEPPELIN-1559-Notebook-broadcast-opti

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/zeppelin/pull/1533.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1533
    
----
commit 14e88bb768f65a34c699e856a6583671a65ecd67
Author: CloverHearts <cloverhearts...@gmail.com>
Date:   2016-10-17T21:43:48Z

    selectively modified to render the Notebook list.

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to