2017-09-06 10 views
2

私はAWS GlueコンソールにDevelopment Endpointを作成しましたが、今度はgluepysparkコンソールでSparkContextとSQLContextにアクセスできます。AWSグルーカタログ内のすべてのデータベースとテーブルを表示するには?

カタログにアクセスしてすべてのデータベースとテーブルを一覧表示する方法を教えてください。通常sqlContext.sql("show tables").show()は機能しません。

CatalogConnection Classは役に立ちますが、どのパッケージに含まれているかわかりません。 awsglue.contextからのインポートを試みましたが、成功しませんでした。

答えて

3

私はCatalogConnectionクラスについての情報を見つけようと数時間を費やしていますが、何も見つかりませんでした。

:私の場合は

(でも、AWS-糊-libのリポジトリhttps://github.com/awslabs/aws-glue-libsに)私は最後に、私はグルークライアントとデータベース名とテーブル名をのbotoライブラリを使用して取得し

グルージョブスクリプトコンソール内のテーブル名を必要と - http://boto3.readthedocs.io/en/latest/reference/services/glue.html#Glue.Client.get_databases

get_databases:
import boto3 


client = boto3.client('glue',region_name='us-east-1') 

responseGetDatabases = client.get_databases() 

databaseList = responseGetDatabases['DatabaseList'] 

for databaseDict in databaseList: 

    databaseName = databaseDict['Name'] 
    print '\ndatabaseName: ' + databaseName 

    responseGetTables = client.get_tables(DatabaseName = databaseName) 
    tableList = responseGetTables['TableList'] 

    for tableDict in tableList: 

     tableName = tableDict['Name'] 
     print '\n-- tableName: '+tableName 

重要なことは、セットアップに適切

リファレンス領域であり、

get_tables - http://boto3.readthedocs.io/en/latest/reference/services/glue.html#Glue.Client.get_tables

関連する問題