آموزش ملزومات مهندسی داده با استفاده از SQL، Python و PySpark

Data Engineering Essentials using SQL, Python, and PySpark

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
توضیحات دوره: مهارت‌های کلیدی مهندسی داده مانند SQL، Python، Apache Spark (Spark SQL و Pyspark) را با تمرین‌ها و محیط راه‌اندازی پروژه‌ها بیاموزید تا ملزومات SQL و Python برای پایگاه داده مهندسی داده Essentials برای مهندسی داده با استفاده از Postgres مانند ایجاد جداول، نمایه‌ها، اجرای SQL کوئری ها، با استفاده از توابع از پیش تعریف شده مهم، و غیره. ملزومات برنامه نویسی مهندسی داده با استفاده از پایتون مانند ساختارهای برنامه نویسی پایه، مجموعه ها، پانداها، برنامه نویسی پایگاه داده و غیره. مهندسی داده با استفاده از Spark Dataframe API (PySpark) با استفاده از Databricks. همه APIهای مهم Spark Data Frame مانند select، filter، groupBy، orderBy و غیره را با استفاده از Spark SQL (PySpark و Spark SQL) یاد بگیرید. یاد بگیرید چگونه با استفاده از SELECT، WHERE، GROUP BY، ORDER BY و غیره، Query های Spark SQL با کیفیت بالا بنویسید. ارتباط Spark Metastore و ادغام Dataframe ها و Spark SQL توانایی ساخت خطوط لوله مهندسی داده با استفاده از Spark با استفاده از پایتون به عنوان زبان برنامه نویسی استفاده از فرمت های مختلف فایل مانند Parquet، JSON، CSV و غیره در ساختن راه اندازی خطوط لوله مهندسی داده Hadoop و Spark Cluster در GCP با استفاده از GCP Dataproc درک کامل چرخه عمر توسعه برنامه Spark برای ساخت برنامه های Spark با استفاده از Pyspark. برنامه ها را با استفاده از Spark UI مرور کنید. پیش نیازها:لپ‌تاپ با پیکربندی مناسب (حداقل 4 گیگابایت رم و دو هسته‌ای) با اعتبار موجود یا آزمایشگاه خود پشتیبانی AWS Access Setup در پلتفرم‌های ابری برای GCP ثبت‌نام کنید (مگر اینکه اعتباری نداشته باشید، ممکن است مجبور شوید هزینه ابری قابل‌اجرا را بپردازید) CS یا مدرک IT یا تجربه قبلی IT بسیار مورد نظر است

به‌عنوان بخشی از این دوره آموزشی، شما تمام اصول مهندسی داده مربوط به ساخت خطوط لوله داده با استفاده از SQL، Python به‌عنوان Hadoop، Hive، یا Spark SQL و همچنین PySpark Data Frame APIs را خواهید آموخت. همچنین چرخه عمر توسعه و استقرار برنامه های پایتون را با استفاده از Docker و همچنین PySpark در خوشه های چند گره درک خواهید کرد. همچنین دانش اولیه ای در مورد بررسی Spark Jobs با استفاده از Spark UI کسب خواهید کرد.

درباره مهندسی داده

مهندسی داده چیزی جز پردازش داده ها بسته به نیازهای پایین دست ما نیست. ما باید خطوط لوله مختلفی مانند خط لوله دسته ای، خط لوله جریان و غیره را به عنوان بخشی از مهندسی داده بسازیم. تمام نقش های مربوط به پردازش داده ها تحت مهندسی داده ادغام شده است. به طور متعارف، آنها به عنوان توسعه ETL، توسعه انبار داده و غیره شناخته می شوند.

در اینجا برخی از چالش‌هایی وجود دارد که یادگیرندگان برای یادگیری مهارت‌های مهندسی داده‌های کلیدی مانند Python، SQL، PySpark و غیره با آن‌ها مواجه هستند.

  • داشتن یک محیط مناسب با همکاری Apache Hadoop، Apache Spark، Apache Hive و غیره.

  • محتوای با کیفیت خوب با پشتیبانی مناسب.

  • کارها و تمرینات کافی برای تمرین

این دوره برای رسیدگی به این چالش‌های کلیدی برای حرفه‌ای‌ها در همه سطوح طراحی شده است تا مهارت‌های مهندسی داده مورد نیاز (پایتون، SQL و Apache Spark) را کسب کنند.

  • تنظیم محیط برای یادگیری ملزومات مهندسی داده مانند SQL (با استفاده از Postgres)، Python و غیره.

  • برای تمرین SQL جداول مورد نیاز را در Postgres تنظیم کنید

  • نوشتن پرس و جوهای اولیه SQL با مثال های عملی با استفاده از WHERE، JOIN، GROUP BY، HAVING، ORDER BY، و غیره

  • پرسش‌های SQL پیشرفته با مثال‌های عملی مانند تجمعات تجمعی، رتبه‌بندی و غیره

  • سناریوهایی که عیب‌یابی و اشکال‌زدایی مربوط به پایگاه‌های داده را پوشش می‌دهند.

  • تنظیم عملکرد جستجوهای SQL

  • تمرین‌ها و راه‌حل‌ها برای پرسش‌های SQL.

  • مبانی برنامه نویسی با استفاده از پایتون به عنوان زبان برنامه نویسی

  • مجموعه های پایتون برای مهندسی داده

  • پردازش داده یا مهندسی داده با استفاده از پانداها

  • 2 پروژه Real Time Python با توضیحات (تبدیل فرمت فایل و بارگذار پایگاه داده)

  • سناریوهایی که عیب یابی و اشکال زدایی در برنامه های پایتون را پوشش می دهند

  • سناریوهای تنظیم عملکرد مربوط به برنامه های مهندسی داده با استفاده از پایتون

  • شروع به کار با Google Cloud Platform برای راه اندازی Spark Environment با استفاده از Databricks

  • نوشتن Queries Basic Spark SQL با مثال های عملی با استفاده از WHERE، JOIN، GROUP BY، HAVING، ORDER BY، و غیره

  • ایجاد جداول دلتا در Spark SQL همراه با عملیات CRUD مانند INSERT، UPDATE، DELETE، MERGE و غیره

  • پرسش‌های پیشرفته Spark SQL با مثال‌های عملی مانند رتبه‌بندی

  • ادغام Spark SQL و Pyspark

  • پوشش عمیق Apache Spark Catalyst Optimizer برای تنظیم عملکرد

  • خواندن توضیح طرح‌های Spark SQL Queries یا Pyspark Data Frame API

  • پوشش عمیق فرمت های فایل ستونی و تنظیم عملکرد با استفاده از پارتیشن بندی


سرفصل ها و درس ها

مقدمه ای بر اصول مهندسی داده با استفاده از SQL، Python و PySpark Introduction to Data Engineering Essentials using SQL, Python, and PySpark

  • مقدمه ای بر دوره اصول مهندسی داده Introduction to Data Engineering Essentials Course

  • مروری بر پشتیبانی ما از دوره آموزشی ضروریات مهندسی داده Overview of our support to Data Engineering Essentials course

  • مروری بر سرفصل های SQL تحت پوشش دوره Overview of SQL topics covered in the course

  • مروری بر مباحث پایتون که در این دوره آموزش داده شده است Overview of Python topics covered in the course

  • مروری بر شروع کار با GCP مربوط به دوره Overview of Getting Started with GCP related to the course

  • مروری بر موضوعات مرتبط با محیط Spark و Databricks Overview of Spark and Databricks Environment related topics

  • طرح کلی موضوعات Spark SQL در دوره Detailed outline of Spark SQL Topics in the course

  • طرح دقیق موضوعات Pyspark در دوره Detailed outline of Pyspark Topics in the course

  • طرح دقیق خطوط لوله داده ELT در Databricks Detailed outline of ELT Data Pipelines on Databricks

شروع کار با SQL برای مهندسی داده Getting Started with SQL for Data Engineering

  • مقدمه ای بر SQL برای مهندسی داده Introduction to SQL for Data Engineering

  • مروری بر معماری اپلیکیشن و RDBMS Overview of Application Architecture and RDBMS

  • مروری بر فناوری های پایگاه داده و ارتباط SQL Overview of Database Technologies and relevance of SQL

  • مروری بر پایگاه های داده با هدف ساخته شده Overview of Purpose Built Databases

  • مروری بر Data Warehouse و Data Lake Overview of Data Warehouse and Data Lake

  • استفاده از فناوری های RDBMS و Data Warehouse Usage of RDBMS and Data Warehouse technologies

  • تفاوت ها و شباهت های بین RDBMS و فناوری های انبار داده Differences and Similarities between RDBMS and Data Warehouse Technologies

ابزارهای راه اندازی برای ملزومات مهندسی داده Setup Tools for Data Engineering Essentials

  • مقدمه ای بر راه اندازی ابزارهایی برای ملزومات مهندسی داده Introduction to Setting up Tools for Data Engineering Essentials

  • راه اندازی VS Code در ویندوز Setup VS Code on Windows

  • راه اندازی پایتون 3.9 در ویندوز Setup Python 3.9 on Windows

  • پیکربندی PATH متغیر محیطی برای پایتون در ویندوز Configure Environment Variable PATH for Python on Windows

  • مروری بر یادگیری پایتون با استفاده از Python CLI Overview of learning Python using Python CLI

  • VSCode را با پایتون در ویندوز ادغام کنید Integrate VSCode with Python on Windows

  • Postgres 14 را روی ویندوز 11 نصب کنید Install Postgres 14 on Windows 11

  • شروع کار با pgAdmin در ویندوز Getting Started with pgAdmin on Windows

  • شروع کار با pgAdmin در مک Getting Started with pgAdmin on Mac

  • نتیجه‌گیری از راه‌اندازی ابزارهایی برای ملزومات مهندسی داده Conclusion of Setting up Tools for Data Engineering Essentials

جداول و داده های برنامه را در پایگاه داده Postgres تنظیم کنید Setup Application Tables and Data in Postgres Database

  • مروری بر سرور پایگاه داده Postgres و pgAdmin Overview of Postgres Database Server and pgAdmin

  • مروری بر جزئیات اتصال پایگاه داده Overview of Database Connection Details

  • نمای کلی اتصال به پایگاه های داده خارجی با استفاده از pgAdmin Overview of Connecting to External Databases using pgAdmin

  • ایجاد پایگاه داده برنامه و کاربر در سرور پایگاه داده Postgres Create Application Database and User in Postgres Database Server

  • کلون کردن مجموعه داده ها از مخزن Git برای اسکریپت های پایگاه داده Clone Data Sets from Git Repository for Database Scripts

  • ثبت سرور در pgAdmin با استفاده از پایگاه داده برنامه و کاربر Register Server in pgAdmin using Application Database and User

  • جداول و داده های برنامه را در پایگاه داده Postgres تنظیم کنید Setup Application Tables and Data in Postgres Database

  • مروری بر pgAdmin برای نوشتن کوئری های SQL Overview of pgAdmin to write SQL Queries

نوشتن پرس و جوهای اولیه SQL Writing Basic SQL Queries

  • نمودار مدل داده را مرور کنید Review Data Model Diagram

  • بیانیه مشکل را برای پرس و جوهای SQL تعریف کنید Define Problem Statement for SQL Queries

  • فیلتر کردن داده ها با استفاده از پرس و جوهای SQL Filtering Data using SQL Queries

  • مجموع تجمعات با استفاده از پرس و جوهای SQL Total Aggregations using SQL Queries

  • با استفاده از پرس و جوهای SQL گروه بندی بر اساس تجمیع ها Group By Aggregations using SQL Queries

  • ترتیب اجرای کوئری های SQL Order of Execution of SQL Queries

  • قوانین و محدودیت ها برای گروه بندی و فیلتر کردن داده ها در پرس و جوهای SQL Rules and Restrictions to Group and Filter Data in SQL queries

  • فیلتر کردن داده ها بر اساس نتایج جمع آوری شده با استفاده از Group By و Having Filter Data based on Aggregated Results using Group By and Having

  • اتصالات داخلی با استفاده از پرس و جوهای SQL Inner Joins using SQL Queries

  • اتصالات بیرونی با استفاده از پرس و جوهای SQL Outer Joins using SQL Queries

  • نتایج را با استفاده از SQL فیلتر و جمع کنید Filter and Aggregate on Join Results using SQL

  • مروری بر نماهای پایگاه داده Overview of Database Views

  • مروری بر عبارات جدول رایج یا CTE Overview of Common Table Expressions or CTEs

  • پیوستن خارجی با شرایط اضافی در پرس و جوهای SQL Outer Join with Additional Conditions in SQL Queries

  • توضیحی در مورد رفع پرس و جوهای SQL با فیلتر کردن نتایج Join Outer Explanation about Fix of SQL Queries with Filtering on Outer Join Results

تجمعات و رتبه بندی تجمعی در پرس و جوهای SQL Cumulative Aggregations and Ranking in SQL Queries

  • مقدمه ای بر تجمعات تجمعی و رتبه بندی در پرس و جوهای SQL Introduction to Cumulative Aggregations and Ranking in SQL Queries

  • نمای کلی CTAS برای ایجاد جداول بر اساس نتایج پرس و جو Overview of CTAS to create tables based on Query Results

  • جداول برای انباشتگی و رتبه بندی ایجاد کنید Create Tables for Cumulative Aggregations and Ranking

  • نمای کلی OVER و PARTITION BY Clause در SQL Queries Overview of OVER and PARTITION BY Clause in SQL Queries

  • جمع آوری کل را با استفاده از OVER و PARTITION BY در کوئری های SQL محاسبه کنید Compute Total Aggregation using OVER and PARTITION BY in SQL Queries

  • مروری بر رتبه بندی در SQL Overview of Ranking in SQL

  • محاسبه رتبه های جهانی با استفاده از SQL Compute Global Ranks using SQL

  • محاسبه رتبه ها بر اساس کلید با استفاده از SQL Compute Ranks based on key using SQL

  • قوانین و محدودیت ها برای فیلتر کردن داده ها بر اساس رتبه ها در SQL Rules and Restrictions to Filter Data based on Ranks in SQL

  • فیلتر کردن بر اساس رتبه های جهانی با استفاده از پرس و جوهای تودرتو و CTE در SQL Filtering based on Global Ranks using Nested Queries and CTEs in SQL

  • فیلتر کردن بر اساس رتبه در هر پارتیشن با استفاده از پرس و جوهای تودرتو و CTE در SQL Filtering based on Ranks per Partition using Nested Queries and CTEs in SQL

  • جدول Students را با داده ها برای رتبه بندی با استفاده از SQL ایجاد کنید Create Students table with Data for ranking using SQL

  • تفاوت بین رتبه و رتبه متراکم با استفاده از SQL Difference between rank and dense rank using SQL

راهنمای عیب یابی و اشکال زدایی SQL SQL Troubleshooting and Debugging Guide

  • مقدمه ای بر راهنمای عیب یابی و اشکال زدایی SQL Introduction to SQL Troubleshooting and Debugging Guide

  • مروری بر مشکلات اتصال پایگاه داده Overview of Database Connectivity Issues

  • اعتبارسنجی و راه اندازی Telnet در مک یا رایانه شخصی Validate and Setup Telnet on Mac or PC

  • اعتبار سنجی اتصال به سرور پایگاه داده با استفاده از telnet Validate Connectivity to Database Server using telnet

  • عیب‌یابی مشکل اتصال پایگاه داده با جزئیات صحیح میزبان Troubleshoot Database Connectivity Issue with Correct Host Details

  • پایگاه های داده فعلی و کاربران در سرور پایگاه داده Postgres Current Databases and Users in Postgres Database Server

  • عیب یابی مشکلات اعتبار پایگاه داده و مجوزها Troubleshoot Database Credentials and Permissions Issues

  • مروری بر کامپایل کوئری های SQL Overview of Compilation of SQL Queries

  • عیب یابی خطاهای نحوی در پرس و جوهای SQL Troubleshooting Syntax Errors in SQL Queries

  • عیب یابی خطاهای Semantec در پرس و جوهای SQL Troubleshooting Semantec Errors in SQL Queries

  • مروری بر اشکالات در پرس و جوهای SQL Overview of Bugs in SQL Queries

  • بهترین روش های توسعه با نکاتی برای عیب یابی اشکالات SQL Development Best Practices with tips to troubleshoot SQL bugs

  • راه حل اولیه را بر اساس نیاز ایجاد کنید Develop Initial Solution based on the requirement

  • شناسایی و عیب یابی اشکالات در پرس و جوهای SQL Identify and Troubleshoot Bugs in SQL Queries

  • توسعه راه حل با استفاده از بهترین روش های توسعه Develop Solution using Development Best Practices

تنظیم عملکرد پرس و جوهای SQL Performance Tuning of SQL Queries

  • مقدمه ای بر تنظیم عملکرد پرس و جوهای SQL Introduction to Performance Tuning of SQL Queries

  • مروری بر فرآیند کامپایل SQL و توضیح پلان ها Overview of SQL Compilation Process and Explain Plans

  • برنامه های توضیحی را برای پرس و جوهای SQL ایجاد کنید Generate Explain Plans for SQL Queries

  • بررسی جداول مورد استفاده برای تنظیم عملکرد پرس و جوهای SQL Review Tables used for Performance Tuning of SQL Queries

  • موارد داخلی ذخیره سازی داده را برای جداول و نمایه ها مرور کنید Review Data Storage Internals for Tables and Indexes

  • اصطلاحات کلیدی مورد استفاده در Explain Plans for SQL Queries را مرور کنید Review key terms used in Explain Plans for SQL Queries

  • تفسیر برنامه های توضیحی برای پرس و جوهای اولیه SQL Interpret Explain Plans for Basic SQL Queries

  • سناریوهای کاربردی رایج برای تنظیم عملکرد را مرور کنید Review the Common Application Scenarios for Performance Tuning

  • برای سفارشات مشتری کوئری های SQL بنویسید Write SQL Queries for Customer Orders

  • تست عملکرد کوئری های SQL با استفاده از روش ذخیره شده Performance Testing of SQL Queries using Stored Procedure

  • برای تنظیم عملکرد کوئری های SQL، فهرست های مورد نیاز را اضافه کنید Add Required Indexes to tune performance of SQL Queries

  • دستورالعمل‌هایی در مورد افزودن فهرست‌ها در جداول برای پرسش‌های SQL Guidelines on adding Indexes on Tables for SQL Queries

  • تفسیر طرح توضیحی برای پرسش‌های SQL با استفاده از شاخص‌ها Interpreting the explain plan for SQL Queries using Indexes

  • نتیجه گیری از تنظیم عملکرد کوئری های SQL Conclusion of Performance Tuning of SQL Queries

تمرینات برای پرس و جوهای SQL پایه Exercises for Basic SQL Queries

  • تمرین های ساده برای فیلتر کردن و تجمع Simple Exercises for Filtering and Aggregations

  • تمرینات مربوط به Joins و Aggregations با استفاده از SQL Exercises on Joins and Aggregations using SQL

راه حل هایی برای پرس و جوهای پایه SQL Solutions for Basic SQL Queries

  • راه حل هایی برای فیلتر کردن و تجمع Solutions for Filtering and Aggregations

  • راه حل هایی برای فیلتر کردن و تجمع Solutions for Filtering and Aggregations

  • اعتبارسنجی داده ها و بررسی نمودار مدل داده ها Validate Data and Review Data Model Diagram

  • راه حل تمرین 1 برای دریافت تعداد سفارش مشتری Solution for Exercise 1 to get Customer Order Count

  • راه حل تمرین 2 برای به دست آوردن مشتریان خفته با استفاده از Outer Join Solution for Exercise 2 to get Dormant Customers using Outer Join

  • راه حل تمرین 3 برای دریافت درآمد به ازای هر مشتری با استفاده از Outer Join Solution for Exercise 3 to get Revenue Per Customer using Outer Join

  • راه حل تمرین 4 برای دریافت درآمد به ازای هر دسته Solution for Exercise 4 to get Revenue Per Category

  • راه حل تمرین 5 برای دریافت تعداد محصول در هر بخش Solution for Exercise 5 to get Product Count Per Department

شروع کار با پایتون Getting Started with Python

  • راه اندازی فضای کاری ویژوال استودیو برای توسعه برنامه پایتون Setup Visual Studio Workspace for Python Application Development

  • راه اندازی محیط نوت بوک در فضای کاری VS Code Setup Notebook Environment in VS Code Workspace

  • مروری بر محیط نوت بوک کد VS Overview of VS Code Notebook Environment

  • مروری بر سلول ها در نوت بوک کد VS Overview of Cells in VS Code Notebook

  • تعریف توابع در نوت بوک کد VS Defining Functions in VS Code Notebooks

  • کد را در VS Code Notebook Cell by Line اجرا کنید Run the Code in VS Code Notebook Cell by Line

  • ثابت ها و متغیرها در پایتون Constants and Variables in Python

  • مروری بر انواع داده های پایتون Overview of Python Data Types

  • دریافت کمک در مورد متغیرها و توابع پایتون Getting help on Python Variables and Functions

  • توابع دستکاری رشته از پیش تعریف شده Pre-Defined String Manipulation Functions

  • مروری بر لیست های پایتون Overview of Python Lists

  • حلقه ها و شرایط در پایتون Loops and Conditions in Python

  • توابع تعریف شده توسط کاربر در پایتون User Defined Functions in Python

مجموعه‌های پایتون برای مهندسی داده Python Collections for Data Engineering

  • نمای کلی فایل IO با استفاده از پایتون Overview of File IO using Python

  • داده ها را از فایل CSV در لیست پایتون بخوانید Read Data from CSV File into Python List

  • مروری بر مجموعه های پایتون Overview of Python Collections

  • شروع کار با پردازش لیست های پایتون Getting Started with Processing Python Lists

  • مروری بر توابع لامبدا در پایتون Overview of Lambda Functions in Python

  • استفاده از توابع لامبدا Usage of Lambda Functions

  • فیلتر کردن داده ها در لیست های پایتون با استفاده از فیلتر و لامبدا Filter Data in Python Lists using filter and lambda

  • مقادیر منحصر به فرد را از لیست با استفاده از نقشه و تنظیم دریافت کنید Get unique values from list using map and set

  • لیست های پایتون را با استفاده از کلید مرتب کنید Sort Python lists using key

  • نمای کلی رشته ها و فایل های JSON Overview of JSON Strings and Files

  • رشته‌های JSON را به دستورات یا لیست‌های پایتون بخوانید Read JSON Strings to Python dicts or lists

  • طرحواره های JSON را از فایل به دستور پایتون بخوانید Read JSON Schemas from file to Python dicts

  • مروری بر پردازش داده های JSON با استفاده از پایتون Overview of Processing JSON Data using Python

  • استخراج جزئیات از آرایه های پیچیده JSON با استفاده از پایتون Extract Details from Complex JSON Arrays using Python

  • مرتب سازی داده ها در آرایه های JSON با استفاده از پایتون Sort Data in JSON Arrays using Python

  • برای دریافت جزئیات ستون از فایل JSON Schemas، تابع ایجاد کنید Create Function to get Column Details from Schemas JSON File

پردازش داده با استفاده از APIهای Pandas Dataframe Data Processing using Pandas Dataframe APIs

  • مروری بر پانداها برای پردازش داده ها Overview of Pandas for Data Processing

  • مروری بر خواندن داده های CSV با استفاده از پانداها Overview of Reading CSV Data using Pandas

  • خواندن داده ها از فایل های CSV به Pandas Dataframes Read Data from CSV Files to Pandas Dataframes

  • فیلتر کردن داده ها در Pandas Dataframe با استفاده از پرس و جو Filter Data in Pandas Dataframe using query

  • با استفاده از APIهای Pandas Dataframe، شمارش بر اساس وضعیت را دریافت کنید Get Count by Status using Pandas Dataframe APIs

  • با استفاده از APIهای Pandas Dataframe تعداد ماه و وضعیت را دریافت کنید Get count by Month and Status using Pandas Dataframe APIs

  • ایجاد Dataframe با استفاده از لیست ستون پویا در CSV Data Create Dataframes using dynamic column list on CSV Data

  • اجرای Inner Join بین Dataframes Pandas Performing Inner Join between Pandas Dataframes

  • جمع‌بندی‌ها را در نتایج Join انجام دهید Perform Aggregations on Join results

  • مرتب سازی داده ها در Pandas Dataframes Sort Data in Pandas Dataframes

  • مروری بر نوشتن قاب های داده پاندا در فایل ها Overview of Writing Pandas Dataframes to Files

  • Pandas Dataframes را در فایل‌های JSON بنویسید Write Pandas Dataframes to JSON Files

پروژه 1 - تبدیل فرمت فایل با استفاده از پایتون Project 1 - File Format Converter using Python

  • پروژه 1 - جزوه تبدیل فرمت فایل Project 1 - File Format Converter Handout

  • دریافت نام فایل برای پردازش با استفاده از glob Get File Names to be processed using glob

  • با استفاده از Schemas File نام ستون ها را دریافت کنید Get Column Names using Schemas File

  • با استفاده از عبارات منظم، نام‌های مجموعه داده‌ها را از نام‌های فایل یا مسیرها دریافت کنید Get Data Set Names from File Names or Paths using regular expressions

  • داده‌های CSV را با Schema Dynamically در Pandas Dataframe بخوانید Read CSV Data into Pandas Dataframe with Schema Dynamically

  • مسیرهای فایل را برای فایل های JSON هدف به صورت پویا ایجاد کنید Generate File Paths for Target JSON Files Dynamically

  • خلاصه ای از نوشتن Dataframe Pandas در فایل JSON Recap of Writing Pandas Dataframe to JSON File

  • Pandas Dataframe را در فایل‌های JSON بنویسید Write Pandas Dataframe to JSON Files

  • تبدیل فرمت فایل برای مجموعه داده را مدولار کنید Modularize File Format Converter for Dataset

  • Wrapper برای پردازش تمام مجموعه داده ها Wrapper to Process all Data Sets

  • راه اندازی پروژه برای مبدل فرمت فایل با استفاده از پایتون Setup Project for File Format Converter using Python

  • با استفاده از pip، Dependencies را برای پروژه پایتون نصب کنید Install Dependencies for the Python Project using pip

  • Core Logic را به برنامه پایتون اضافه کنید Add Core Logic to Python Application

  • مروری بر آرگومان های زمان اجرا و متغیرهای محیطی Overview of Run-time Arguments and Environment Variables

  • استفاده از آرگومان های زمان اجرا در برنامه های پایتون Using Run Time Arguments in Python Applications

  • مروری بر متغیرهای محیطی Overview of Environment Variables

  • تنظیم متغیرهای محیط در ویندوز یا مک یا لینوکس Setting Environment Variables on Windows or Mac or Linux

  • از متغیرهای محیطی در برنامه های پایتون استفاده کنید Use Environment Variables in Python Applications

  • از متغیرهای محیطی در تبدیل فرمت فایل استفاده کنید Use Environment Variables in File Format Converter

  • آرایه JSON را به عنوان آرگومان به برنامه های پایتون ارسال کنید Pass JSON Array as argument to Python Applications

  • مجموعه داده ها را به عنوان آرگومان های زمان اجرا به مبدل فرمت فایل منتقل کنید Pass Data Sets as Run Time Arguments to File Format Converter

  • مدیریت استثنا در برنامه های پایتون Exception Handling in Python Applications

  • ایجاد استثنا در برنامه های پایتون Raising Exceptions in Python Applications

  • رسیدگی به استثنا در برنامه تبدیل فرمت فایل Exception Handling in File Format Converter Application

پروژه 2 - فایل ها به بارگذار پایگاه داده Project 2 - Files to Database Loader

  • پروژه 2 - جزوه بارگذار فایل ها به پایگاه داده Project 2 - Files To Database Loader Handout

  • وابستگی پایتون را برای پانداها و ادغام پایگاه داده نصب کنید Install Python Dependencies for Pandas and Database Integration

  • کوئری ها را از Notebook با استفاده از SQL Magic اجرا کنید Run Queries from Notebook using SQL Magic

  • اعتبار پانداها و ادغام SQL Validate Pandas and SQL Integration

  • داده های CSV را از فایل به جدول پایگاه داده بنویسید Write CSV Data from File to Database Table

  • داده‌های CSV را از فایل‌ها در جداول پایگاه داده به صورت تکه‌ای بنویسید Write CSV Data from Files to Database Tables in Chunks

  • بررسی اجمالی استقرار فایل در پروژه لودر DB Overview of Deploying File to DB Loader Project

عیب یابی و اشکال زدایی مشکلات پایتون Troubleshooting and Debugging Python Issues

  • مقدمه ای بر عیب یابی و اشکال زدایی مسائل پایتون Introduction to Troubleshooting and Debugging Python issues

  • دستورالعمل هایی برای عیب یابی و اشکال زدایی مسائل مربوط به پایتون Guidelines for Troubleshooting and Debugging Python related Issues

  • بررسی اجمالی اتصال پایگاه داده با استفاده از برنامه های کاربردی پایتون Overview of Database Connectivity using Python Applications

  • بررسی اجمالی اتصال پایگاه داده با استفاده از پایتون Overview of Database Connectivity using Python

  • عیب یابی اتصال شبکه به سرور پایگاه داده با استفاده از telnet Troubleshoot Network Connectivity to the Database Server using telnet

  • عیب یابی مسائل مربوط به ماژول برای اتصال به پایگاه داده با استفاده از پایتون Troubleshoot Module Related issues for Database Connectivity using Python

  • عیب یابی مشکلات مربوط به اعتبارنامه برای اتصال پایگاه داده با استفاده از پایتون Troubleshoot Credentials Related issues for Database Connectivity using Python

  • مروری بر فرآیند پایتون برای اجرای برنامه های کاربردی پایتون Overview of Python process to run Python Applications

  • عیب یابی خطاهای کامپایل در پایتون Troubleshooting Compilation Errors in Python

  • عیب یابی خطاهای زمان اجرا در پایتون Troubleshooting Run Time Errors in Python

  • مروری بر چرخه عمر توسعه نرم افزار Overview of Software Development Life Cycle

  • بررسی اجمالی تست واحد یا اعتبار سنجی برنامه ها Overview of Unit Testing or Validation of Applications

  • مروری بر اشکال زدایی نوت بوک های کد VS با استفاده از ویژگی Debug Overview of Debugging VS Code Notebooks using Debug Feature

  • اشکال زدایی در مقابل نوت بوک کد با استفاده از ویژگی Debug Debug VS Code Notebooks using Debug Feature

  • شروع با اشکال زدایی برنامه های پایتون با استفاده از کد VS Getting Started with Debugging of Python Programs using VS Code

  • خلاصه ای از اجرای برنامه تبدیل فرمت فایل Recap of running File Format Converter application

  • اشکال زدایی برنامه پایتون با استفاده از کد VS با نقاط شکست Debug Python Application using VS Code with breakpoints

  • مدیریت نقاط شکست برای اشکال زدایی در کد VS Managing Breakpoints for Debugging in VS Code

  • نتیجه گیری برای عیب یابی و اشکال زدایی مسائل پایتون Conclusion to Troubleshooting and Debugging Python Issues

تنظیم عملکرد برنامه های پایتون Performance Tuning of Python Applications

  • مقدمه ای بر عملکرد برنامه های کاربردی پایتون Introduction to Performance of Python Applications

  • راه اندازی برنامه پایتون لودر پایگاه داده Setup Database Loader Python Application

  • اطمینان حاصل کنید که پایگاه داده Postgres برای برنامه پایتون بارگذار فایل به db تنظیم شده است Ensure Postgres Database is setup for file to db loader Python Application

  • جداول را پاک کنید تا فایل به db loader اجرا شود Cleanup the tables to run file to db loader application

  • فایل را در برنامه بارگذار DB اجرا و اعتبار سنجی کنید Run and Validate File to DB Loader Application

  • پیغام خطا موجود در برنامه فایل به db loader را برطرف کنید Fix the error message in file to db loader application

  • بررسی اجمالی اجرای برنامه لودر فایل به db Overview of Execution of file to db loader application

  • تنظیم عملکرد با استفاده از Chunksize در پانداها Performance Tuning using Chunksize in Pandas

  • Pandas Data Frame API را مرور کنید تا داده ها را در جدول هدف بارگیری کنید Review Pandas Data Frame API to load data into the target table

  • نمای کلی درج چند یا دسته ای در جداول پایگاه داده Overview of multi or batch insert into Database Tables

  • توسعه برنامه برای چند پردازش Develop application for multiprocessing

  • شروع کار با چند پردازش با استفاده از پایتون Getting Started with Multiprocessing using Python

  • فراخوانی توابع تعریف شده توسط کاربر با استفاده از پردازش چندگانه در پایتون Invoking User Defined Functions using multiprocessing in Python

  • Refactor File to Database Loader Application for Multiprocessing Refactor File to Database Loader Application for Multiprocessing

  • پردازش موازی را به فایل به db loader برنامه پایتون اضافه کنید Add Parallel Processing to file to db loader Python Application

  • اعتبار سنجی فایل به برنامه بارگذار DB با چند پردازش Validate File to DB Loader Application with Multiprocessing

  • درک مفهوم Multiprocessing در پایتون Understanding the concept of Multiprocessing in Python

  • سناریوهای تنظیم عملکرد برنامه های کاربردی پایتون Performance Tuning Scenarios of Python Applications

شروع کار با GCP Getting Started with GCP

  • مقدمه ای بر شروع کار با GCP Introduction to Getting Started with GCP

  • مهارت های پیش نیاز برای ثبت نام در دوره GCP Data Analytics Pre-requisite Skills to Sign up for course on GCP Data Analytics

  • مروری بر پلتفرم های ابری Overview of Cloud Platforms

  • نمای کلی Google Cloud Platform یا GCP Overview of Google Cloud Platform or GCP

  • مروری بر امضای حساب GCP Overview of Signing for GCP Account

  • با استفاده از شناسه غیر Gmail یک حساب Google جدید ایجاد کنید Create New Google Account using Non Gmail Id

  • با استفاده از حساب Google برای GCP ثبت نام کنید Sign up for GCP using Google Account

  • مروری بر اعتبارات GCP Overview of GCP Credits

  • مروری بر پروژه و صورتحساب GCP Overview of GCP Project and Billing

  • نمای کلی Google Cloud Shell Overview of Google Cloud Shell

  • Google Cloud SDK را روی ویندوز نصب کنید Install Google Cloud SDK on Windows

  • gcloud CLI را با استفاده از پروژه GCP راه اندازی کنید Initialize gcloud CLI using GCP Project

  • Google Cloud Shell را با شناسه پروژه مجدداً راه اندازی کنید Reinitialize Google Cloud Shell with Project id

  • بررسی اجمالی سرویس های تجزیه و تحلیل در GCP Overview of Analytics Services on GCP

  • نتیجه گیری برای شروع با GCP برای مهندسی داده Conclusion to Get Started with GCP for Data Engineering

مروری بر کلان داده ها و دریاچه های داده Overview of Big Data and Data Lakes

  • انواع مختلف پایگاه داده Different Types of Databases

  • موارد استفاده برای انواع مختلف پایگاه داده Usecases for Different Types of Databases

  • فن آوری برای انواع مختلف پایگاه های داده Technologies for Different Types of Databases

  • جلد برای انواع مختلف پایگاه داده Volumes for Different Types of Databases

  • مروری بر کلان داده Overview of Big Data

  • تکامل فن آوری های داده های بزرگ Evolution of Big Data Technologies

  • مروری بر دریاچه داده با استفاده از سیستم اکو Hadoop Overview of Data Lake using Hadoop eco system

  • محدودیت های سیستم اکو Hadoop Limitations of Hadoop eco system

  • مروری بر دریاچه های داده مدرن در ابر Overview of Modern Data Lakes on Cloud

  • پیاده سازی دریاچه های داده مدرن در ابر Implementation of Modern Data Lakes on Cloud

  • مزایای دریاچه های داده مدرن در ابر Advantages of Modern Data Lakes on Cloud

مروری بر معماری Spark و Spark Overview of Spark and Spark Architecture

  • مروری بر پردازش داده ها Overview of Data Processing

  • مروری بر کتابخانه های پردازش داده Overview of Data Processing Libraries

  • محیطی را برای کاوش در پانداها، داسک و پی اسپارک تنظیم کنید Setup Environment to explore Pandas, Dask and Pyspark

  • نمونه کد پانداها، Dask و Pyspark Code Examples of Pandas, Dask and Pyspark

  • تفاوت بین پانداها، داسک و پی اسپارک Differences between Pandas, Dask and Pyspark

  • مروری بر محاسبات توزیع شده Overview of Distributed Computing

  • مروری بر اسناد رسمی آپاچی اسپارک Overview of Official Documentation of Apache Spark

  • مروری بر ویژگی ها و پلتفرم های کلیدی Spark Overview of Spark Key Features and Platforms

  • مروری بر زیرساخت اسپارک Overview of Spark Infrastructure

  • نمای کلی Spark Cluster با استفاده از Databricks Overview of Spark Cluster using Databricks

  • مروری بر مجریان در Spark Cluster Overview of Executors in Spark Cluster

  • مروری بر واژه نامه اسپارک Overview of Spark Glossary

  • اصطلاحات کلیدی Spark را درک کنید Understand Spark Key Terms

راه اندازی محیط Databricks با استفاده از GCP Setup Databricks Environment using GCP

  • مروری بر Databicks در GCP Overview of Databicks on GCP

  • ثبت نام برای Databricks در GCP Signing up for Databricks on GCP

  • ایجاد فضای کاری Databricks در GCP Create Databricks Workspace on GCP

  • شروع کار با Databricks Cluster در GCP Getting Started with Databricks Clusters on GCP

  • شروع کار با Databricks Notebook Getting Started with Databricks Notebook

  • مروری بر Databricks در GCP Overview of Databricks on GCP

  • معماری سطح بالای Databricks High level architecture of Databricks

  • Databricks CLI را در مک یا ویندوز راه اندازی کنید Setup Databricks CLI on Mac or Windows

  • مروری بر Databricks CLI و سایر مشتریان Overview of Databricks CLI and other clients

  • Databricks CLI را در مک یا ویندوز پیکربندی کنید Configure Databricks CLI on Mac or Windows

  • برای پیکربندی Databricks CLI مشکلات را عیب یابی کنید Troubleshoot issues to configure Databricks CLI

  • بررسی اجمالی دستورات Databricks CLI Overview of Databricks CLI Commands

  • مخزن داده را برای مجموعه داده ها تنظیم کنید Setup Data Repository for Data Sets

  • تنظیم مجموعه داده ها در DBFS با استفاده از دستورات Databricks CLI Setup Data Sets in DBFS using Databricks CLI Commands

تبدیل اولیه با استفاده از Spark SQL Basic Transformation using Spark SQL

  • پردازش داده ها در DBFS با استفاده از Databricks Spark SQL Process Data in DBFS using Databricks Spark SQL

  • شروع با Spark SQL مثال با استفاده از Databricks Getting Started with Spark SQL Example using Databricks

  • ایجاد نماهای موقت با استفاده از Spark SQL Create Temporary Views using Spark SQL

  • برای ایجاد نماهای موقت با استفاده از Spark SQL تمرین کنید Exercise to create temporary views using Spark SQL

  • برای محاسبه درآمد روزانه محصول، Query SQL را جرقه بزنید Spark SQL Query to compute Daily Product Revenue

  • نتیجه پرس و جو را با استفاده از Spark SQL در DBFS ذخیره کنید Save Query Result to DBFS using Spark SQL

  • مروری بر نمونه های Pyspark در Databricks Overview of Pyspark Examples on Databricks

  • جزئیات طرحواره را در JSON با استفاده از Pyspark پردازش کنید Process Schema Details in JSON using Pyspark

  • با استفاده از Pyspark از فایل JSON با Schema Dataframe ایجاد کنید Create Dataframe with Schema from JSON File using Pyspark

  • تبدیل داده ها با استفاده از Spark API Transform Data using Spark APIs

  • با استفاده از Pyspark جزئیات طرحواره را برای همه مجموعه داده ها دریافت کنید Get Schema Details for all Data Sets using Pyspark

  • با استفاده از Pyspark CSV را به پارکت با Schema تبدیل کنید Convert CSV to Parquet with Schema using Pyspark

جداول دلتا را با استفاده از Spark SQL ایجاد کنید Create Delta Tables using Spark SQL

  • مقدمه ای بر ایجاد جداول دلتا با استفاده از Spark SQL Introduction to Creating Delta Tables using Spark SQL

  • مروری بر ارائه دهندگان پشتیبانی شده برای جداول Spark Metastore Overview of Supported Providers for Spark Metastore Tables

  • ایجاد پایگاه داده و بررسی جزئیات Create Database and Review the Details

  • جدول مدیریت شده Spark Metastore را با استفاده از قالب دلتا ایجاد و بررسی کنید Create and Review Managed Spark Metastore Table using Delta Format

  • داده ها را در جدول مدیریت شده Spark Metastore کپی کنید Copy Data into Spark Metastore Managed Table

  • اعتبارسنجی داده ها در جدول مدیریت شده Spark Metastore Validate Data in Spark Metastore Managed Table

  • جدول External Spark Metastore را با استفاده از Delta Format ایجاد و بررسی کنید Create and Review External Spark Metastore Table using Delta Format

  • داده ها را در جدول خارجی Spark Metastore قرار دهید Insert Data into Spark Metastore External Table

  • اعتبارسنجی داده ها در جدول خارجی Spark Metastore Validate Data in Spark Metastore External Table

  • نمای کلی Spark Metastore Overview of Spark Metastore

  • تفاوت بین جداول Metastore Spark مدیریت شده و خارجی Difference Between Managed and External Spark Metastore Tables

  • عملیات CRUD را روی جداول دلتا در Spark Metastore انجام دهید Perform CRUD Operations on Delta Tables in Spark Metastore

  • استفاده از Merge برای به روز رسانی و درج در جداول دلتا در Spark Metastore Using Merge to Update and Insert into Delta Tables in Spark Metastore

  • نتیجه گیری از ایجاد جداول دلتا با استفاده از Spark SQL Conclusion of Creating Delta Tables using Spark SQL

توابع از پیش تعریف شده در Spark SQL Pre-Defined Functions in Spark SQL

  • مروری بر توابع در Spark SQL Overview of Functions in Spark SQL

  • اعتبار سنجی توابع در Spark SQL Validate Functions in Spark SQL

  • مروری بر توابع دستکاری رشته در Spark SQL Overview of String Manipulation Functions in Spark SQL

  • تبدیل Case و طول رشته ها با استفاده از Spark SQL Case Conversion and Length of Strings using Spark SQL

  • Substring را با استفاده از substr در Spark SQL استخراج کنید Extract Substring using substr in Spark SQL

  • استخراج زیر رشته ها از رشته های جدا شده با استفاده از split در Spark SQL Extract Substrings from Delimited Strings using split in Spark SQL

  • برش کاراکترها یا رشته ها با استفاده از Spark SQL Trimming Characters or Strings using Spark SQL

  • با استفاده از Spark SQL کاراکترها را به رشته ها اضافه کنید Padding Characters to Strings using Spark SQL

  • معکوس و الحاق رشته ها با استفاده از Spark SQL Reverse and Concatenate Strings using Spark SQL

  • مروری بر توابع دستکاری تاریخ در Spark SQL Overview of Date Manipulation Functions in Spark SQL

  • مروری بر تاریخ استاندارد و مهر زمانی در Spark SQL Overview of Standard Date and Timestamp in Spark SQL

  • محاسبه تاریخ با استفاده از توابع Spark SQL Date Arithmetic using Spark SQL Functions

  • نمای کلی trunc و date_trunc در Spark SQL Overview of trunc and date_trunc in Spark SQL

  • استخراج اطلاعات از تاریخ یا زمان با استفاده از Spark SQL Extract Information from Date or Time using Spark SQL

  • با استفاده از Spark SQL تاریخ ها یا مهرهای زمانی غیر استاندارد را به موارد استاندارد تبدیل کنید Convert Non Standard Dates or Timestamps to Standard Ones using Spark SQL

  • استخراج اطلاعات با استفاده از توابع تقویم از تاریخ یا مهر زمان با استفاده از Spark Extract Information using Calendar Functions from Date or Timestamp using Spark

  • برخورد با Unix Timestamp با استفاده از Spark SQL Dealing with Unix Timestamp using Spark SQL

  • مروری بر توابع عددی در Spark SQL Overview of Numeric Functions in Spark SQL

  • تبدیل نوع داده با استفاده از Spark SQL Data Type Conversion using Spark SQL

  • مروری بر مدیریت مقادیر پوچ با استفاده از Spark SQL Overview of Handling Null Values using Spark SQL

  • با استفاده از nvl و coalesce در Spark SQL، مقادیر Null را با مقادیر پیش فرض جایگزین کنید Replace Null Values with default values using nvl and coalesce in Spark SQL

  • منطق شرطی روی مقادیر تهی با استفاده از nvl2 و case در Spark SQL Conditional Logic on Null Values using nvl2 and case in Spark SQL

  • مروری بر Case و When در Spark SQL Overview of Case and When in Spark SQL

  • استفاده از CASE و WHEN برای منطق شرطی در Spark SQL Using CASE and WHEN for conditional logic in Spark SQL

  • با استفاده از CASE و WHEN در GROUP BY در Spark SQL جمع کنید Aggregate using CASE and WHEN in GROUP BY in Spark SQL

  • پرس و جو تعداد کلمات با استفاده از توابع از پیش تعریف شده در Spark SQL Word Count Query using Pre-defined Functions in Spark SQL

  • تمرین هایی برای توابع از پیش تعریف شده در Spark SQL Exercises for Pre-defined functions in Spark SQL

  • راه حل های تمرین 1 و 2 در مورد توابع از پیش تعریف شده در Spark SQL Solutions for Exercises 1 and 2 on Pre-defined Functions in Spark SQL

  • راه حل های تمرین 3 و 4 در مورد توابع از پیش تعریف شده در Spark SQL Solutions for Exercises 3 and 4 on Pre-defined Functions in Spark SQL

  • راه حل های تمرین 5 و 6 در مورد توابع از پیش تعریف شده در Spark SQL Solutions for Exercises 5 and 6 on Pre-defined Functions in Spark SQL

  • راه حل برای تمرینات 7 و 8 در مورد توابع از پیش تعریف شده در Spark SQL Solutions for Exercises 7 and 8 on Pre-defined Functions in Spark SQL

جداول Spark Metastore را برای تبدیل‌های اولیه تنظیم کنید Setup Spark Metastore Tables for Basic Transformations

  • مقدمه ای بر تبدیل های پایه با استفاده از Spark SQL Introduction to Basic Transformations using Spark SQL

  • جداول Spark Metastore را برای تبدیل های اولیه آماده کنید Prepare Spark Metastore Tables for Basic Transformations

  • طراحی داده ها با استفاده از Spark SQL Projecting Data using Spark SQL

فیلتر کردن داده ها با استفاده از Spark SQL Queries Filtering Data using Spark SQL Queries

  • فیلتر کردن داده ها با استفاده از شرایط برابر در Spark SQL Filtering Data using Equal Condition in Spark SQL

  • استفاده از IN، LIKE و BETWEEN در Spark SQL Queries Using IN, LIKE and BETWEEN in Spark SQL Queries

  • فیلتر کردن داده ها با استفاده از Boolean AND در Spark SQL Queries Filter Data using Boolean AND in Spark SQL Queries

  • فیلتر کردن داده ها با استفاده از Boolean OR در Spark SQL Queries Filter Data using Boolean OR in Spark SQL Queries

  • برخورد با NULLS هنگام فیلتر کردن داده ها در Spark SQL Queries Dealing with NULLS while Filtering Data in Spark SQL Queries

تجمیع با استفاده از Spark SQL Queries Aggregations using Spark SQL Queries

  • با استفاده از Spark SQL Queries، Total Aggregations را انجام دهید Perform Total Aggregations using Spark SQL Queries

  • مروری بر تجمیع با استفاده از GROUP BY در Spark SQL Queries Overview of Aggregations using GROUP BY in Spark SQL Queries

  • GROUP BY نمونه هایی با استفاده از Spark SQL Queries GROUP BY Examples using Spark SQL Queries

  • ترتیب اجرای کوئری های Spark SQL Order of Execution of Spark SQL Queries

  • فیلتر کردن داده‌ها بر اساس نتایج جمع‌آوری شده با استفاده از HAVING در Spark SQL Queries Filter Data based on Aggregate Results using HAVING in Spark SQL Queries

با استفاده از Spark SQL Queries می پیوندد Joins using Spark SQL Queries

  • بررسی اجمالی Join ها در Spark SQL Queries Overview of Joins in Spark SQL Queries

  • Inner Join با استفاده از Spark SQL Queries Inner Join using Spark SQL Queries

  • مفاهیم پشت اتصالات داخلی در Spark SQL Concepts Behind Inner Joins in Spark SQL

  • اتصالات بیرونی با استفاده از Spark SQL Queries Outer Joins using Spark SQL Queries

  • مثال - Inner Join همراه با GROUP BY با استفاده از Spark SQL Queries Example - Inner Join along with GROUP BY using Spark SQL Queries

  • مثال - Outer Join همراه با GROUP BY با استفاده از Spark SQL Queries Example - Outer Join along with GROUP BY using Spark SQL Queries

  • مثال - فیلتر کردن و اتصالات خارجی به همراه GROUP BY در Spark SQL Queries Example - Filtering and Outer Joins along with GROUP BY in Spark SQL Queries

  • مثال - فیلتر کردن و اتصالات خارجی به همراه GROUP BY در Spark SQL Queries Example - Filtering and Outer Joins along with GROUP BY in Spark SQL Queries

مرتب سازی با استفاده از Spark SQL Queries Sorting using Spark SQL Queries

  • مرتب سازی داده ها با استفاده از Spark SQL Queries Sorting Data using Spark SQL Queries

  • برخورد با Nulls هنگام مرتب سازی داده ها با استفاده از Spark SQL Queries Dealing with Nulls while Sorting Data using Spark SQL Queries

رتبه بندی با استفاده از توابع Windowing Spark SQL Ranking using Spark SQL Windowing Functions

  • رتبه بندی با استفاده از توابع Windowing Spark SQL Ranking using Spark SQL Windowing Functions

  • با استفاده از Spark SQL Windowing Functions برای رتبه بندی نمای موقت ایجاد کنید Create Temporary View for ranking using Spark SQL Windowing Functions

  • رتبه جهانی را با استفاده از توابع پنجره Spark SQL محاسبه کنید Compute Global Rank using Spark SQL Windowing Functions

  • با استفاده از توابع Windowing Spark SQL، رتبه ها را در هر کلید محاسبه کنید Compute Ranks Per Key using Spark SQL Windowing Functions

  • تفاوت بین رتبه و رتبه_ متراکم Difference Between rank and dense_rank

  • با استفاده از توابع پنجره Spark SQL، رتبه‌ها را فیلتر کنید Filter on Ranks using Spark SQL Windowing Functions

نتایج پرس و جو را در جداول Spark Metastore کپی کنید Copy Query Results into Spark Metastore Tables

  • مروری بر کپی کردن نتایج جستجو در جداول Spark Metastore Overview of Copying Query Results into Spark Metastore Tables

  • پرس و جو برای محاسبه درآمد روزانه با استفاده از Spark SQL Query to Compute Daily Revenue using Spark SQL

  • نتایج پرس و جو را با استفاده از CTAS در جداول Spark Metastore کپی کنید Copy Query Results into Spark Metastore Tables using CTAS

  • با استفاده از INSERT، نتایج Query را در جداول Spark Metastore کپی کنید Copy Query Results into Spark Metastore Tables using INSERT

  • طراحی Pipeline با استفاده از CTAS و INSERT در Spark SQL Design Pipeline using CTAS and INSERT in Spark SQL

  • نتایج جستجو را با استفاده از MERGE در جداول Spark Meatstore کپی کنید Copy Query Results into Spark Meatstore Tables using MERGE

پردازش JSON مانند داده با استفاده از Spark SQL Processing JSON like Data using Spark SQL

  • مقدمه ای بر پردازش JSON مانند داده با استفاده از Spark SQL Introduction to Processing JSON like Data using Spark SQL

  • مروری بر JSON Overview of JSON

  • ایجاد جداول Spark Metastore با ستون های نوع آرایه Creating Spark Metastore Tables with Array Type Columns

  • برخورد با ستون های نوع آرایه با استفاده از Spark SQL Queries Dealing with Array Type Columns using Spark SQL Queries

  • ایجاد جداول Spark Metastore با ستون های نوع ساختار Creating Spark Metastore Tables with Struct Type Columns

  • پروجکشن داده ها از فیلدهای نوع ساختار در Spark SQL Projecting Data From Struct Type Fields in Spark SQL

  • ایجاد جداول Spark Metastore با Array of Struct Column Creating Spark Metastore Tables with Array of Struct Column

  • برخورد با آرایه از ستون های نوع ساختار با استفاده از Spark SQL Queries Dealing with Array of Struct Type Columns using Spark SQL Queries

  • مروری بر توابع مهم برای پردازش داده های JSON در Spark SQL Overview of Important Functions to Process JSON Data in Spark SQL

  • ستون های نوع آرایه را از ستون های معمولی در Spark SQL ایجاد کنید Generate Array Type Columns from Regular Columns in Spark SQL

  • آرایه ای از ستون های نوع ساختار را از ستون های معمولی در Spark SQL ایجاد کنید Generate Array of Struct Type Columns from Regular Columns in Spark SQL

  • پردازش رشته های محدود شده با استفاده از Spark SQL Queries Processing Delimited Strings using Spark SQL Queries

شروع به کار با Pyspark Data Frame API Getting Started with Pyspark Data Frame APIs

  • مروری بر نمونه های Pyspark در Databricks Overview of Pyspark Examples on Databricks

  • جزئیات طرحواره را در JSON با استفاده از Pyspark پردازش کنید Process Schema Details in JSON using Pyspark

  • با استفاده از Pyspark از فایل JSON با Schema Dataframe ایجاد کنید Create Dataframe with Schema from JSON File using Pyspark

  • تبدیل داده ها با استفاده از Spark API Transform Data using Spark APIs

  • با استفاده از Pyspark جزئیات طرحواره را برای همه مجموعه داده ها دریافت کنید Get Schema Details for all Data Sets using Pyspark

  • با استفاده از Pyspark CSV را به پارکت با Schema تبدیل کنید Convert CSV to Parquet with Schema using Pyspark

Spark Data Frame را با استفاده از Pyspark Data Frame API ایجاد کنید Create Spark Data Frames using Pyspark Data Frame APIs

  • Spark Data Frame را با استفاده از Pyspark Data Frame API ایجاد کنید Create Spark Data Frame using Pyspark Data Frame APIs

  • مروری بر پردازش داده ها با استفاده از حلقه های معمولی Overview of Data Processing using Conventional loops

  • مروری بر مفاهیم چارچوب داده Overview of Data Frame Concepts

  • مزایای Pyspark Data Frame Advantages of Pyspark Data Frames

  • مروری بر فریم های داده اسپارک و ویژگی های آنها Overview of Spark Data Frames and their Characteristics

  • پروجکشن داده در Spark Data Frames با استفاده از Select Projecting Data in Spark Data Frames using Select

  • استفاده از drop برای رها کردن ستون ها از Spark Data Frame Using drop to drop columns from Spark Data Frame

  • اعمال توابع بر روی ستون های Spark Data Frame Applying functions on Spark Data Frame Columns

  • استفاده از withColumn برای اعمال تبدیل در Spark Data Frames Using withColumn to apply transformations on Spark Data Frames

  • مروری بر نوشتن داده ها در قاب داده در فایل های دلتا Overview of Writing Data in Data Frame to Delta Files

تبدیل های اساسی با استفاده از APIهای قاب داده Pyspark Basic Transformations using Pyspark Data Frame APIs

  • مروری بر تحولات اساسی با استفاده از APIهای قاب داده Pyspark Overview of Basic Transformations using Pyspark Data Frame APIs

  • مروری بر تغییرات سطح ردیف Overview of Row Level Transformations

  • با استفاده از APIهای Pyspark Data Frame، تبدیل‌های سطح ردیف را اعمال کنید Apply Row Level transformations using Pyspark Data Frame APIs

  • فیلتر کردن داده ها با استفاده از Pyspark Data Frame API Filtering Data using Pyspark Data Frame APIs

  • فیلتر کردن داده ها با شرایط چندگانه با استفاده از Pyspark Data Frame API Filtering Data with Multiple Conditions using Pyspark Data Frame APIs

  • با استفاده از Spark Data Frame APIs را با کلید انجام دهید Perform Aggregations by Key using Spark Data Frame APIs

  • با استفاده از Spark Data Frame APIs را با کلید انجام دهید Perform Aggregations by Key using Spark Data Frame APIs

  • با استفاده از Spark Data Frame APIs را با کلید انجام دهید Perform Aggregations by Key using Spark Data Frame APIs

  • مرتب سازی داده ها با استفاده از Spark Data Frame API Sorting Data using Spark Data Frame APIs

  • مرتب سازی ترکیبی با استفاده از Spark Data Frame API Composite Sorting using Spark Data Frame APIs

  • کوئری های Spark SQL را برای مرتب سازی داده ها توسعه دهید Develop Spark SQL Queries for Sorting Data

  • مجموعه داده‌ها را با Nulls برای مرتب‌سازی با استفاده از Spark Data Frame API مرور کنید Review Data Set with Nulls for Sorting using Spark Data Frame APIs

  • برخورد با Nulls هنگام مرتب سازی داده ها در Spark Data Frames Dealing with Nulls while Sorting the Data in Spark Data Frames

اتصال داده ها با استفاده از Spark Data Frame API Joining Data using Spark Data Frame APIs

  • مقدمه ای بر اتصال داده ها با استفاده از Spark Data Frame API Introduction to Joining Data using Spark Data Frame APIs

  • با استفاده از APIهای Spark Data Frame Frame های داده برای پیوستن ایجاد کنید Create Data Frames to Join using Spark Data Frame APIs

  • Syntax را برای پیوستن با استفاده از Spark Data Frame APIs مرور کنید Review Syntax for join using Spark Data Frame APIs

  • Inner Join با استفاده از Spark Data Frame APIs Inner Join using Spark Data Frame APIs

  • به APIهای Spark Data Frame بپیوندید تا داده ها را پردازش کنید Join and other Spark Data Frame APIs to process the data

  • تجزیه و تحلیل داده ها برای اتصالات خارجی با استفاده از Spark Data Frame API Analyze Data for outer joins using Spark Data Frame APIs

  • با استفاده از Spark Data Frame APIs Outer Join را ترک کنید Left Outer Join using Spark Data Frame APIs

  • با استفاده از Spark Data Frame APIs Outer Join راست کنید Right Outer Join using Spark Data Frame APIs

  • معادل Spark SQL Queries for Joins Equivalent Spark SQL Queries for Joins

رتبه بندی با استفاده از APIهای Pyspark Data Frame Ranking using Pyspark Data Frame APIs

  • مقدمه ای بر رتبه بندی با استفاده از Spark Data Frame APIs Introduction to Ranking using Spark Data Frame APIs

  • نحو برای رتبه‌بندی با استفاده از APIهای Spark Data Frame Syntax for ranking using Spark Data Frame APIs

  • رتبه های جهانی را با استفاده از Spark Data Frame APIs محاسبه کنید Compute Global Ranks using Spark Data Frame APIs

  • فیلتر بر اساس رتبه های جهانی با استفاده از Spark Data Frame API Filter Based on Global Ranks using Spark Data Frame APIs

  • محاسبه رتبه در هر پارتیشن با استفاده از Spark Data Frame API Compute Ranks per Partition using Spark Data Frame APIs

  • فیلتر بر اساس رتبه در هر پارتیشن با استفاده از Spark Data Frame API Filter Based on Ranks Per Partition using Spark Data Frame APIs

  • تفاوت بین رتبه و رتبه_ متراکم Difference Between rank and dense_rank

ادغام Spark SQL و Pyspark Data Frame API Integration of Spark SQL and Pyspark Data Frame APIs

  • مقدمه ای بر ادغام Spark SQL و Pyspark Data Frame API Introduction to Integration of Spark SQL and Pyspark Data Frame APIs

  • Spark SQL Queries را روی Spark Data Frames اجرا کنید Run Spark SQL Queries on Spark Data Frames

  • جداول Spark Metastore را با استفاده از Data Frames ایجاد کنید Create Spark Metastore Tables using Data Frames

  • با استفاده از Data Frames در جداول Spark Metastore قرار دهید Insert into Spark Metastore Tables using Data Frames

  • داده ها را از Spark Metastore Table تا Data Frames بخوانید Read Data from Spark Metastore Table to Data Frames

  • پردازش داده ها در جداول Spark Metastore با استفاده از Data Frame API Process Data in Spark Metastore Tables using Data Frame APIs

  • اشیاء پایگاه داده Spark Metastore را با استفاده از Spark API مدیریت کنید Manage Spark Metastore Database Objects using Spark APIs

خطوط لوله داده ELT با استفاده از Databricks ELT Data Pipelines using Databricks

  • مروری بر گردش کار Databricks Overview of Databricks Workflows

  • ارسال آرگومان ها به نوت بوک های پایتون Databricks Pass Arguments to Databricks Python Notebooks

  • ارسال آرگومان ها به نوت بوک های Databricks SQL Pass Arguments to Databricks SQL Notebooks

  • ایجاد و اجرای First Databricks Job Create and Run First Databricks Job

  • Databricks Jobs و Tasks را با پارامترها اجرا کنید Run Databricks Jobs and Tasks with Parameters

  • ایجاد و اجرای خط لوله هماهنگ با استفاده از Databricks Job Create and Run Orchestrated Pipeline using Databricks Job

  • وارد کردن ELT Data Pipeline Applications به Databricks Environment Import ELT Data Pipeline Applications into Databricks Environment

  • برنامه Spark SQL برای پاکسازی پایگاه داده و مجموعه داده ها Spark SQL Application to Cleanup Database and Datasets

  • کد Pyspark مبدل فرمت فایل را بررسی کنید Review File Format Converter Pyspark Code

  • نوت بوک های Databricks SQL را برای جداول و نتایج نهایی مرور کنید Review Databricks SQL Notebooks for Tables and Final Results

  • اعتبار سنجی برنامه های کاربردی برای خط لوله ELT با استفاده از Databricks Validate Applications for ELT Pipeline using Databricks

  • خط لوله ELT را با استفاده از Databricks Job در گردش کار بسازید Build ELT Pipeline using Databricks Job in Workflows

  • اجرای و بررسی جزئیات اجرای خط لوله داده ELT با استفاده از Databricks Job Run and Review Execution details of ELT Data Pipeline using Databricks Job

  • پاکسازی محیط Databricks در GCP Cleanup Databricks Environment on GCP

تنظیم عملکرد Spark - Catalyst Optimizer Performance Tuning of Spark - Catalyst Optimizer

  • شروع کار با تنظیم عملکرد با استفاده از Spark در Databricks Getting Started with Performance Tuning using Spark on Databricks

  • مروری بر Spark Catalyst Optimizer Overview of Spark Catalyst Optimizer

  • با استفاده از Spark UI، طرح توضیحی برای منطق Spark Dataframe را مرور کنید Review Explain Plan for Spark Dataframe logic using Spark UI

  • با استفاده از Spark UI، طرح توضیحی برای منطق Spark SQL را مرور کنید Review Explain Plan for Spark SQL logic using Spark UI

  • با استفاده از تابع توضیح، پلان های توضیحی را روی Spark Dataframes ایجاد کنید Generate Explain Plans on Spark Dataframes using explain function

  • با استفاده از دستور توضیح، پلان های توضیحی را در کوئری های Spark SQL ایجاد کنید Generate Explain Plans on Spark SQL Queries using explain command

  • تفسیر طرح توضیح برای Spark SQL Query Interpreting Explain Plan for Spark SQL Query

  • مروری بر معماری Spark Overview of Spark Architecture

  • درک فیلتر و پخش داده های سفارشات Understand Filter and Broadcast of Orders Data

  • درک عضویت و تجمیع برای درآمد روزانه محصول Understand Join and Aggregation for Daily Product Revenue

تنظیم عملکرد Spark - پیکربندی خوشه Performance Tuning of Spark - Cluster Configuration

  • مقدمه ای بر پیکربندی خوشه Databricks Introduction to Databricks Cluster Configuration

  • تفاوت بین خوشه های همه منظوره و مشاغل Difference Between All Purpose and Jobs Clusters

  • راه اندازی همه منظوره Databricks Compute Cluster Setting up All Purpose Databricks Compute Clusters

  • اندازه داده ها را با استفاده از dbutils درک کنید Understand the size of the data using dbutils

  • خوشه Databricks Multinode را با مقیاس خودکار ایجاد کنید Create Multinode Databricks Cluster with Auto Scaling

  • مروری بر مقیاس خودکار خوشه های Databricks Overview of Auto Scaling of Databricks Clusters

  • تنظیم عملکرد خوشه با استفاده از مقیاس خودکار Performance Tuning of Cluster using Auto Scaling

  • تجزیه و تحلیل داده های خطوط هوایی با استفاده از Spark SQL Analyze Airlines Data using Spark SQL

  • راه اندازی Databricks Job Compute Clusters با استفاده از Workflows Setup Databricks Job Compute Clusters using Workflows

  • جزئیات کار در حال اجرا را با استفاده از Spark UI مرور کنید Review Running Job Details using Spark UI

  • جزئیات کار تکمیل شده را با استفاده از Spark UI مرور کنید Review Completed Job Details using Spark UI

تنظیم عملکرد هنگام استنباط طرحواره از فایل‌های CSV یا JSON Performance Tuning while inferring schema from CSV or JSON files

  • نمای کلی طرحواره استنتاج با استفاده از فایل‌های CSV یا JSON Overview of Inferring Schema using CSV or JSON Files

  • مراحل تبدیل فایل‌های CSV یا JSON به فایل‌های پارکت یا دلتا Steps to convert CSV or JSON Files to Parquet or Delta Files

  • نمای کلی فایل‌های CSV یا JSON Overview of CSV or JSON Files

  • نمای کلی سربار برای استنتاج طرحواره Overview of overhead for inferring schema

  • تنظیم عملکرد برای استنباط طرحواره Spark Dataframe Performance Tuning to infer schema of Spark Dataframe

تنظیم عملکرد با استفاده از قالب فایل ستونی و استراتژی پارتیشن بندی Performance Tuning using Columnar File Format and Partitioning Strategy

  • مقدمه ای بر تنظیم عملکرد هنگام ذخیره داده ها در Data Lake Introduction to Performance Tuning while storing data in Data Lake

  • عوارض جانبی استفاده از فایل های CSV در Data Lake Side effects of using CSV Files in Data Lake

  • بررسی عوارض استفاده از فایل های CSV در دیتا لیک Review the side effects of using CSV Files in Data Lake

  • با استفاده از Pyspark داده های CSV را به قالب ستونی تغییر ساختار دهید Restructure CSV Data to Columnar Format using Pyspark

  • اندازه داده های بازسازی شده را با استفاده از قالب فایل پارکت محاسبه کنید Compute Size of restrucutured data using Parquet File Format

  • عملیات را روی داده های پارکت پارتیشن بندی شده اجرا کنید Run Operations on Partitioned Parquet Data

  • بررسی اجمالی ارزیابی عملکرد Spark Jobs Overview of Performance Assessment of Spark Jobs

  • جزئیات عملکرد عملیات Spark را در فایل‌های پارکت مرور کنید Review Performance Details of Spark Operations on Parquet Files

  • مروری بر فرمت های فایل ستونی در Spark و Databricks Overview of Columnar File Formats in Spark and Databricks

  • نمای کلی ساختار پوشه برای داده های پارتیشن بندی شده در Spark Overview of Folder Structure for Partitioned Data in Spark

  • ارزیابی الزامات در برابر هرس پارتیشن Evaluate Requirements against Partition Pruning

  • راه حل های داده های خطوط هوایی برای تنظیم عملکرد با استفاده از پارتیشن بندی Solutions on Airlines Data for Performance Tuning using Partitioning

  • جزئیات اجرا را برای تنظیم عملکرد با استفاده از پارتیشن بندی مرور کنید Review Execution Details for Performance Tuning using Partitioning

  • دریافت اطلاعات خطوط هوایی با استفاده از محدوده تاریخ بدون هرس پارتیشن Get Airlines Data using Date Range without Partition Pruning

  • Parameterize Spark SQL Solution for Partition Pruning Parameterize Spark SQL Solution for Partition Pruning

  • اضافه کردن شرایط برای هرس پارتیشن Add Condition for Partition Pruning

  • طراحی مجدد استراتژی پارتیشن برای تنظیم عملکرد Redesign Partition Strategy to tune the performance

  • خلاصه ای از سناریوهای تنظیم عملکرد اسپارک Recap of Spark Performance Tuning Scenarios

راه اندازی Hadoop و Spark Cluster با استفاده از Dataproc Setup Hadoop and Spark Cluster using Dataproc

  • مروری بر پلتفرم های مختلف Spark در Cloud Overview of different Spark Platforms on Cloud

  • مروری بر انواع و معماری Hadoop و Spark Cluster Overview of Hadoop and Spark Cluster Types and Architecture

  • راه اندازی Single Node Hadoop و Spark Cluster با استفاده از Dataproc Setup Single Node Hadoop and Spark Cluster using Dataproc

  • اعتبار اتصال SSH به خوشه Dataproc را تأیید کنید Validate SSH Connectivity to the Dataproc Cluster

  • تبدیل آدرس IP به Static برای Dataproc Cluster Convert IP Address to Static for Dataproc Cluster

  • راه اندازی پروژه با استفاده از VS Code Remote Development Setup Project using VS Code Remote Development

  • مجموعه داده های محلی را در Hadoop و Spark Cluster تنظیم کنید Setup Local Data Sets on Hadoop and Spark Cluster

  • شروع به کار با دستورات HDFS برای مدیریت فایل ها Getting Started with HDFS Commands to Manage Files

  • شروع کار با Spark CLI با استفاده از پایتون Getting Started with Spark CLI using Python

  • شروع کار با Spark CLI با استفاده از Scala Getting Started with Spark CLI using Scala

  • شروع کار با Spark CLI با استفاده از SQL Getting Started with Spark CLI using SQL

  • توقف خوشه و درک هزینه ها Stopping the Cluster and Understanding the costs

خلاصه ای از دستورات مهم لینوکس برای مهندسی داده Recap of important Linux Commands for Data Engineering

  • مقدمه ای بر دستورات و اسکریپت های لینوکس برای مهندسان داده Introduction to Linux Commands and Scripts for Data Engineers

  • نمای کلی پروفایل در لینوکس شل Overview of Profile in Linux Shell

  • مروری بر متغیرهای محیطی در لینوکس Overview of Environment Variables in Linux

  • ایجاد پوشه در لینوکس با استفاده از mkdir Creating Folders in Linux using mkdir

  • جستجوی فایل ها با استفاده از دستور find در لینوکس Searching for files using find command in Linux

نمایش نظرات

نظری ارسال نشده است.

آموزش ملزومات مهندسی داده با استفاده از SQL، Python و PySpark
خرید اشتراک و دانلود خرید تکی و دانلود | 480,000 تومان (7 روز مهلت دانلود) در صورت خرید اشتراک، این آموزش بدلیل حجم بالا معادل 4 دوره است و 4 دوره از اشتراک شما کم می شود. زمان تقریبی آماده سازی لینک دانلود این دوره آموزشی حدود 5 تا 24 ساعت می باشد.
جزییات دوره
40 hours
494
Udemy (یودمی) udemy-small
15 فروردین 1402 (آخرین آپدیت رو دریافت می‌کنید، حتی اگر این تاریخ بروز نباشد.)
47,705
4.2 از 5
ندارد
دارد
دارد

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Durga Viswanatha Raju Gadiraju Durga Viswanatha Raju Gadiraju

مشاور فناوری و Evangelist 13 سال تجربه در اجرای پروژه های پیچیده با استفاده از مجموعه گسترده ای از فناوری ها از جمله Big Data و Cloud. Iversity، llc - یک شرکت مستقر در ایالات متحده برای ارائه آموزش با کیفیت برای متخصصان فناوری اطلاعات و کارکنان و همچنین راه حل های مشاوره ای برای مشتریان سازمانی ، پیدا کردم. من هزاران نفر از متخصصان فناوری اطلاعات را در زمینه فن آوری های زیادی از جمله Big Data و Cloud آموزش داده ام. ایجاد حرفه ای فناوری اطلاعات برای افراد و ارائه خدمات با کیفیت به مشتریان از اهمیت بالاتری در سازمان ما برخوردار است. به عنوان یک استراتژی ورود ، ارائه آموزش با کیفیت در زمینه های ABCD خواهد بود * توسعه برنامه * داده های بزرگ و هوش تجاری * ابر * پایگاه داده ، پایگاه داده

Asasri Manthena Asasri Manthena

Udemy (یودمی)

یودمی یکی از بزرگ‌ترین پلتفرم‌های آموزشی آنلاین است که به میلیون‌ها کاربر در سراسر جهان امکان دسترسی به دوره‌های متنوع و کاربردی را فراهم می‌کند. این پلتفرم امکان آموزش در زمینه‌های مختلف از فناوری اطلاعات و برنامه‌نویسی گرفته تا زبان‌های خارجی، مدیریت، و هنر را به کاربران ارائه می‌دهد. با استفاده از یودمی، کاربران می‌توانند به صورت انعطاف‌پذیر و بهینه، مهارت‌های جدیدی را یاد بگیرند و خود را برای بازار کار آماده کنند.

یکی از ویژگی‌های برجسته یودمی، کیفیت بالای دوره‌ها و حضور استادان مجرب و با تجربه در هر حوزه است. این امر به کاربران اعتماد می‌دهد که در حال دریافت آموزش از منابع قابل اعتماد و معتبر هستند و می‌توانند به بهترین شکل ممکن از آموزش‌ها بهره ببرند. به طور خلاصه، یودمی به عنوان یکی از معتبرترین و موثرترین پلتفرم‌های آموزشی آنلاین، به افراد امکان می‌دهد تا به راحتی و با کیفیت، مهارت‌های مورد نیاز خود را ارتقا دهند و به دنبال رشد و پیشرفت شغلی خود باشند.