Cara menggunakan python scramble string

Tutorial ini menunjukkan caraPyCharm ProfesionalIDE Python berjalan pada mesin lokal Anda ke sebuah titik akhir pengembangan sehingga Anda dapat secara interaktif menjalankan, melakukan debug, dan mengujiAWS GlueETL (ekstrak, transfer, dan memuat) skrip sebelum menerapkannya. Petunjuk dan tangkapan layar dalam tutorial didasarkan pada PyCharm Versi profesional 2019.3.

Untuk terhubung ke titik akhir pengembangan interaktif, Anda harus memilikinya PyCharm Profesional diinstal. Anda tidak dapat melakukan ini dengan menggunakan edisi gratis.

Tutorial ini mengasumsikan bahwa Anda telah melakukan langkah-langkah yang diuraikan di Prasyarat Tutorial.

Tutorial ini menggunakan Amazon S3 sebagai sumber data. Jika Anda ingin menggunakan sumber data JDBC sebagai gantinya, maka Anda harus menjalankan titik akhir pengembangan Anda di virtual private cloud (VPC). Untuk terhubung dengan SSH ke titik akhir pengembangan di sebuah VPC, Anda harus membuat terowongan SSH. Tutorial ini tidak menyertakan petunjuk untuk membuat terowongan SSH. Untuk informasi tentang cara menggunakan SSH untuk terhubung ke titik akhir pengembangan dalam sebuah VPC, lihat Connect Secara Aman ke Instans Linux yang Berjalan di Amazon VPC Privat di blog keamanan AWS.

Topik

  • Terhubung PyCharm profesional ke titik akhir pengembangan
  • Menerapkan skrip ke titik akhir pengembangan Anda
  • Mengonfigurasi penerjemah jarak jauh
  • Menjalankan skrip Anda di titik akhir pengembangan

Terhubung PyCharm profesional ke titik akhir pengembangan

  1. Buat proyek Python murni baru di PyCharm menamakanlegislators.

  2. Membuat file bernama get_person_schema.py dalam proyek tersebut dengan konten berikut:

    from pyspark.context import SparkContext
    from awsglue.context import GlueContext
    
    
    def main():
        # Create a Glue context
        glueContext = GlueContext(SparkContext.getOrCreate())
    
        # Create a DynamicFrame using the 'persons_json' table
        persons_DyF = glueContext.create_dynamic_frame.from_catalog(database="legislators", table_name="persons_json")
    
        # Print out information about this data
        print("Count:  ", persons_DyF.count())
        persons_DyF.printSchema()
    
    
    if __name__ == "__main__":
        main()
    
  3. Lakukan salah satu dari berikut:

    • Untuk AWS Glue versi 0.9, unduh file perpustakaan Python AWS Glue, PyGlue.zip, dari https://s3.amazonaws.com/aws-glue-jes-prod-us-east-1-assets/etl/python/PyGlue.zip ke lokasi yang nyaman pada mesin lokal Anda.

    • Untuk AWS Glue versi 1.0 dan versi yang lebih baru, unduh file perpustakaan Python AWS Glue, PyGlue.zip, dari https://s3.amazonaws.com/aws-glue-jes-prod-us-east-1-assets/etl-1.0/python/PyGlue.zip ke lokasi yang nyaman pada mesin lokal Anda.

  4. TambahkanPyGlue.zipsebagai root konten untuk proyek Anda PyCharm:

    • Masuk PyCharm, chooseBerkas,PengaturanmembukaPengaturankotak dialog. (Anda juga dapat menekan Ctrl+Alt+S.)

    • Perluas proyek legislators dan pilih Struktur Proyek. Kemudian di panel kanan, pilih +Tambah Root Konten.

    • Navigasi ke lokasi tempat Anda menyimpan PyGlue.zip, pilih, lalu pilih Terapkan.

    Layar Pengaturan akan terlihat seperti berikut ini:

    Cara menggunakan python scramble string

    Biarkan kotak dialog Pengaturan terbuka setelah Anda memilih Terapkan.

  5. Konfigurasi pilihan deployment untuk mengunggah skrip lokal ke titik akhir pengembangan Anda menggunakan SFTP (kemampuan ini hanya tersedia di PyCharm Profesional):

    • Di kotak dialog Pengaturan, perluas bagian Membangun, Eksekusi, Deployment. Pilih subbagian Deployment.

    • Pilih ikon + di bagian atas panel tengah untuk menambahkan sebuah server baru. Atur Jenis-nya ke SFTP dan beri nama.

    • Atur Host SFTP ke Alamat Publik dari titik akhir pengembangan Anda, seperti yang tercantum pada halaman detailnya. (Pilih nama titik akhir pengembangan Anda di konsol AWS Glue untuk menampilkan halaman detail). Untuk titik akhir pengembangan yang berjalan di sebuah VPC, atur Host SFTP ke alamat host dan atur port lokal terowongan SSH Anda ke titik akhir pengembangan.

    • Atur Nama pengguna ke glue.

    • Atur Jenis autentikasi ke Pasangan kunci (OpenSSH atau Putty). Atur File kunci privat dengan menelusuri ke lokasi di mana file kunci privat dari titik akhir pengembangan Anda terletak. Perhatikan bahwa PyCharm hanya mendukung jenis kunci OpenSSH DSA, RSA dan ECDSA, dan tidak menerima kunci dalam format privat Putty. Anda dapat menggunakan up-to-date versissh-keygenuntuk menghasilkan tipe key-pair yang PyCharm menerima, menggunakan sintaks seperti berikut:

      ssh-keygen -t rsa -f <key_file_name> -C "<your_email_address>"
    • Pilih Uji koneksi, dan biarkan koneksi diuji. Jika koneksi berhasil, pilih Terapkan.

    Layar Pengaturan sekarang akan terlihat seperti berikut ini:

    Cara menggunakan python scramble string

    Sekali lagi, biarkan kotak dialog Pengaturan terbuka setelah Anda memilih Terapkan.

  6. Memetakan direktori lokal ke direktori jarak jauh untuk deployment:

    • Dalam panel kanan di halaman Deployment, pilih tab tengah di bagian atas, yang berlabel Pemetaan.

    • Di kolom Path Deployment, masukkan sebuah path di bawah /home/glue/scripts/ untuk deployment path proyek Anda. Misalnya: /home/glue/scripts/legislators.

    • Pilih Apply (Terapkan).

    Layar Pengaturan sekarang akan terlihat seperti berikut ini:

    Cara menggunakan python scramble string

    Pilih OK untuk menutup kotak dialog Pengaturan.

Menerapkan skrip ke titik akhir pengembangan Anda

  1. Pilih Alat, Deployment, kemudian pilih nama di mana Anda menyiapkan titik akhir pengembangan Anda, seperti yang ditunjukkan pada gambar berikut ini:

    Cara menggunakan python scramble string

    Setelah skrip Anda di-deploy, bagian bawah layar akan terlihat seperti berikut ini:

    Cara menggunakan python scramble string

  2. Pada bilah menu, pilih Alat, Deployment, Unggah Otomatis (selalu). Pastikan bahwa tanda centang muncul di samping Unggah Otomatis (selalu).

    Ketika opsi ini diaktifkan, PyCharm secara otomatis mengunggah file yang sudah diubah ke titik akhir pengembangan.

Mengonfigurasi penerjemah jarak jauh

Konfigurasi PyCharm untuk menggunakan penerjemah Python pada titik akhir pengembangan.

  1. Dari menu File, pilih Pengaturan.

  2. Perluas legislator proyek dan pilih Penerjemah proyek.

  3. Pilih ikon roda gigi di samping Penerjemah proyek, dan kemudian pilih Tambahkan.

  4. Di kotak dialog Tambahkan Penerjemah Python, di panel sebelah kiri, pilih Penerjemah SSH.

  5. Pilih Konfigurasi server yang ada, dan di daftar Konfigurasi deployment, pilih konfigurasi Anda.

    Layar Anda akan terlihat seperti gambar berikut.

    Cara menggunakan python scramble string

  6. Pilih Pindahkan server ini ke pengaturan IDE, lalu pilih Selanjutnya.

  7. Di bidang Penerjemah, ubah path ke /usr/bin/gluepython jika Anda menggunakan Python 2, atau ke /usr/bin/gluepython3 jika Anda menggunakan Python 3. Lalu pilih Selesai.

Menjalankan skrip Anda di titik akhir pengembangan

Untuk menjalankan skrip:

  • Di panel sebelah kiri, klik kanan nama file dan pilih Jalankan '<filename>'.

    Setelah serangkaian pesan, output akhir seharusnya menunjukkan jumlah dan skema.

    Count:   1961
    root
    |-- family_name: string
    |-- name: string
    |-- links: array
    |    |-- element: struct
    |    |    |-- note: string
    |    |    |-- url: string
    |-- gender: string
    |-- image: string
    |-- identifiers: array
    |    |-- element: struct
    |    |    |-- scheme: string
    |    |    |-- identifier: string
    |-- other_names: array
    |    |-- element: struct
    |    |    |-- lang: string
    |    |    |-- note: string
    |    |    |-- name: string
    |-- sort_name: string
    |-- images: array
    |    |-- element: struct
    |    |    |-- url: string
    |-- given_name: string
    |-- birth_date: string
    |-- id: string
    |-- contact_details: array
    |    |-- element: struct
    |    |    |-- type: string
    |    |    |-- value: string
    |-- death_date: string
    
    
    Process finished with exit code 0
    

Anda sekarang disiapkan untuk melakukan debug pada skrip Anda dari jarak jauh pada titik akhir pengembangan Anda.