GitHub user maropu opened a pull request:

    https://github.com/apache/spark/pull/17733

    [SPARK-20425][SQL] Support an extended display mode for Dataset.show

    ## What changes were proposed in this pull request?
    This pr added an extended display mode for `Dataset.show`. In the current 
master, when printing Dataset with many columns, the readability is low like;
    
    ```
    scala> val df = spark.range(100).selectExpr((0 until 100).map(i => s"rand() 
AS c$i"): _*)
    scala> df.show(3, 0)
    
+------------------+------------------+------------------+-------------------+------------------+------------------+-------------------+------------------+------------------+------------------+------------------+-------------------+------------------+------------------+------------------+-------------------+-------------------+-------------------+------------------+------------------+-------------------+------------------+-------------------+------------------+-------------------+-------------------+-------------------+--------------------+-------------------+------------------+-------------------+--------------------+------------------+------------------+-------------------+-------------------+-------------------+------------------+------------------+-------------------+------------------+------------------+-------------------+-------------------+-------------------+------------------+--------------------+--------------------+-------------------+-------------------+-------------
 
------+-------------------+-------------------+-------------------+--------------------+-------------------+-------------------+-------------------+-------------------+------------------+------------------+-------------------+-------------------+------------------+-------------------+------------------+------------------+-----------------+-------------------+-------------------+------------------+-------------------+------------------+-------------------+-------------------+-------------------+------------------+-------------------+------------------+-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+------------------+-------------------+-------------------+------------------+------------------+------------------+-------------------+------------------+-------------------+------------------+-------------------+-------------------+-------------------+
    |c0                |c1                |c2                |c3                
 |c4                |c5                |c6                 |c7                
|c8                |c9                |c10               |c11                
|c12               |c13               |c14               |c15                
|c16                |c17                |c18               |c19               
|c20                |c21               |c22                |c23               
|c24                |c25                |c26                |c27                
 |c28                |c29               |c30                |c31                
 |c32               |c33               |c34                |c35                
|c36                |c37               |c38               |c39                
|c40               |c41               |c42                |c43                
|c44                |c45               |c46                 |c47                
 |c48                |c49                |c50          
       |c51                |c52                |c53                |c54         
        |c55                |c56                |c57                |c58        
        |c59               |c60               |c61                |c62          
      |c63               |c64                |c65               |c66            
   |c67              |c68                |c69                |c70               
|c71                |c72               |c73                |c74                
|c75                |c76               |c77                |c78               
|c79                |c80                |c81                |c82                
|c83                |c84                |c85                |c86                
|c87               |c88                |c89                |c90               
|c91               |c92               |c93                |c94               
|c95                |c96               |c97                |c98                
|c99                |
    
+------------------+------------------+------------------+-------------------+------------------+------------------+-------------------+------------------+------------------+------------------+------------------+-------------------+------------------+------------------+------------------+-------------------+-------------------+-------------------+------------------+------------------+-------------------+------------------+-------------------+------------------+-------------------+-------------------+-------------------+--------------------+-------------------+------------------+-------------------+--------------------+------------------+------------------+-------------------+-------------------+-------------------+------------------+------------------+-------------------+------------------+------------------+-------------------+-------------------+-------------------+------------------+--------------------+--------------------+-------------------+-------------------+-------------
 
------+-------------------+-------------------+-------------------+--------------------+-------------------+-------------------+-------------------+-------------------+------------------+------------------+-------------------+-------------------+------------------+-------------------+------------------+------------------+-----------------+-------------------+-------------------+------------------+-------------------+------------------+-------------------+-------------------+-------------------+------------------+-------------------+------------------+-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+------------------+-------------------+-------------------+------------------+------------------+------------------+-------------------+------------------+-------------------+------------------+-------------------+-------------------+-------------------+
    
|0.6306087152476858|0.9174349686288383|0.5511324165035159|0.3320844128641819 
|0.7738486877101489|0.2154915886962553|0.4754997600674299 |0.922780639280355 
|0.7136894772661909|0.2277580838165979|0.5926874459847249|0.40311408392226633|0.467830264333843
 |0.8330466896984213|0.1893258482389527|0.6320849515511165 |0.7530911056912044 
|0.06700254871955424|0.370528597355559 
|0.2755437445193154|0.23704391110980128|0.8067400174905822|0.13597793616251852|0.1708888820162453|0.01672725007605702|0.983118121881555
  
|0.25040195628629924|0.060537253723083384|0.20000530582637488|0.3400572407133511|0.9375689433322597
 
|0.057039316954370256|0.8053269714347623|0.5247817572228813|0.28419308820527944|0.9798908885194533
 
|0.31805988175678146|0.7034448027077574|0.5400575751346084|0.25336322371116216|0.9361634546853429|0.6118681368289798|0.6295081549153907
 
|0.13417468943957422|0.41617137072255794|0.7267230869252035|0.023792726137561115|0.5776157058356362
  |0.04884204913195467|0.26728716103441275|0.64668037080
 7925  |0.9782712690657244 
|0.16434031314818154|0.20985522381321275|0.24739842475440077 
|0.26335189682977334|0.19604841662422068|0.10742950487300651|0.20283136488091502|0.3100312319723688|0.886959006630645
 |0.25157102269776244|0.34428775168410786|0.3500506818575777|0.3781142441912052 
|0.8560316444386715|0.4737104888956839|0.735903101602148|0.02236617130529006|0.8769074095835873
 |0.2001426662503153|0.5534032319238532 
|0.7289496620397098|0.41955191309992157|0.9337700133660436 
|0.34059094378451005|0.6419144759403556|0.08167496930341167|0.9947099478497635|0.48010888605366586|0.22314796858167918|0.17786598882331306|0.7351521162297135
 |0.5422057170020095 |0.9521927872726792 |0.7459825486368227 
|0.40907708791990627|0.8903819313311575|0.7251413746923618 |0.2977174938745204 
|0.9515209660203555|0.9375968604766713|0.5087851740042524|0.4255237544908751 
|0.8023768698664653|0.48003189618006703|0.1775841829745185|0.09050775629268382|0.6743909291138167
 |0.2498415755876865 |
    |0.6866473844170801|0.4774360641212433|0.631696201340726 
|0.33979113021468343|0.5663049010847052|0.7280190472258865|0.41370958502324806|0.9977433873622218|0.7671957338989901|0.2788708556233931|0.3355106391656496|0.88478952319287
   
|0.0333974166999893|0.6061744715862606|0.9617779139652359|0.22484954822341863|0.12770906021550898|0.5577789629508672
 |0.2877649024640704|0.5566577406549361|0.9334933255278052 
|0.9166720585157266|0.9689249324600591 |0.6367502457478598|0.7993572745928459 
|0.23213222324218108|0.11928284054154137|0.6173493362456599  
|0.0505122058694798 |0.9050228629552983|0.17112767911121707|0.47395598348370005 
|0.5820498657823081|0.6241124650645072|0.18587258258036776|0.14987593554122225|0.3079446253653946
 |0.9414228822867968|0.8362276265462365|0.9155655305576353 
|0.5121559807153562|0.8963362656525707|0.22765970274318037|0.8177039187132797 
|0.8190326635933787 |0.5256005177032199|0.8167598457269669  
|0.030936807130934496|0.6733006585281015 |0.4208049626816347 |0.24603085738
 518538|0.22719198954208153|0.1622280557565281 
|0.22217325159218038|0.014684419513742553|0.08987111517447499|0.2157764759142622
 |0.8223414104088321 |0.4868624404491777 
|0.4016191733088167|0.6169281906889263|0.15603611040433385|0.18289285085714913|0.9538408988218972|0.15037154865295121|0.5364516961987454|0.8077254873163031|0.712600478545675|0.7277477241003857
 
|0.19822912960348305|0.8305051199208777|0.18631911396566114|0.8909532487898342|0.3470409226992506
 |0.35306974180587636|0.9107058868891469 
|0.3321327206004986|0.48952332459050607|0.3630403307479373|0.5400046826340376 
|0.5387377194310529 
|0.42860539421837585|0.23214101630985995|0.21438968839794847|0.15370603160082352|0.04355605642700022|0.6096006707067466
 |0.6933354157094292|0.06302172470859002|0.03174631856164001|0.664243581650643 
|0.7833239547446621|0.696884598352864 
|0.34626385933237736|0.9263495598791336|0.404818892816584  
|0.2085585394755507|0.6150004897990109 |0.05391193524302473|0.28188484028329097|
    
+------------------+------------------+------------------+-------------------+------------------+------------------+-------------------+------------------+------------------+------------------+------------------+-------------------+------------------+------------------+------------------+-------------------+-------------------+-------------------+------------------+------------------+-------------------+------------------+-------------------+------------------+-------------------+-------------------+-------------------+--------------------+-------------------+------------------+-------------------+--------------------+------------------+------------------+-------------------+-------------------+-------------------+------------------+------------------+-------------------+------------------+------------------+-------------------+-------------------+-------------------+------------------+--------------------+--------------------+-------------------+-------------------+-------------
 
------+-------------------+-------------------+-------------------+--------------------+-------------------+-------------------+-------------------+-------------------+------------------+------------------+-------------------+-------------------+------------------+-------------------+------------------+------------------+-----------------+-------------------+-------------------+------------------+-------------------+------------------+-------------------+-------------------+-------------------+------------------+-------------------+------------------+-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+-------------------+------------------+-------------------+-------------------+------------------+------------------+------------------+-------------------+------------------+-------------------+------------------+-------------------+-------------------+-------------------+
    only showing top 2 rows
    ```
    
    `psql`, CLI for PostgreSQL, supports an extended display mode for this case 
like:
    http://stackoverflow.com/questions/9604723/alternate-output-format-for-psql
    
    ```
    -RECORD 0-------------------
     c0  | 0.6306087152476858
     c1  | 0.9174349686288383
     c2  | 0.5511324165035159
    ...
     c98 | 0.05391193524302473  
     c99 | 0.28188484028329097  
    -RECORD 1-------------------
     c0  | 0.6866473844170801
     c1  | 0.4774360641212433
     c2  | 0.631696201340726
    ...
     c98 | 0.05391193524302473
     c99 | 0.28188484028329097
    only showing top 2 rows
    ```
    
    ## How was this patch tested?
    Added tests in `DataFrameSuite`.


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

    $ git pull https://github.com/maropu/spark SPARK-20425

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

    https://github.com/apache/spark/pull/17733.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 #17733
    
----
commit 901bcf8491d384b94fa19d6f9b96b54d395484d6
Author: Takeshi Yamamuro <yamam...@apache.org>
Date:   2017-04-21T07:33:46Z

    Support an extended display mode in spark-shell

----


---
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.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org
For additional commands, e-mail: reviews-h...@spark.apache.org

Reply via email to