از Pista Academy حمایت کنید
مرور سریع مفاهیم اصلی پیش از تماشای کامل یا برای جمعبندی بعد از آموزش.
در جلسه ۲۶ آموزش مهندسی داده و بیگ دیتا، مدرس به مفهوم دیتا تایپ در پوسگرس و اهمیت انتخاب صحیح نوع داده برای ستونهای جدول پرداخته است. به انواع مختلف دیتا تایپ مانند اینتیجر، نومریک، کرکتر، تکست، پولی، تایم استمپ و یوآیدی اشاره شده است. همچنین، نحوه استفاده از دستوراتی مانند ترانکت و دراپ برای مدیریت جدولها و تغییرات آنها نیز مورد بحث قرار گرفته است.
نکات کلیدی
انتخاب نوع داده مناسب برای ستونهای جدول در پوسگرس میتواند عملکرد و کارایی پایگاه داده را بهبود بخشد.
انواع دیتا تایپ در پوسگرس شامل اینتیجر، نومریک، کرکتر، تکست، پولی، تایم استمپ و یوآیدی هستند.
دستوراتی مانند ترانکت و دراپ برای مدیریت جدولها و انجام تغییرات در آنها استفاده میشوند.
استفاده از دیتا تایپ مناسب میتواند به کاهش مصرف حافظه و بهبود عملکرد پایگاه داده کمک کند.
متن ویدیو
متن زمانبندیشده این جلسه برای مرور، جستجو و دسترسی سریعتر.
سلام عرض میکنم خدمت دوستان عزیز. بریم سراغ ادامه بحث پوسگرز.
ما توی دو قسمت قبل رفتیم سراغ نصب پوسگرس
و معماریش.
میخوایم بریم سراغ قسمت بعدی
راجع به این صحبت کنیم که دادهای که داخل
یه تیبل ذخیره میکنیم دقیقاً چه نوعی
داره.
در اصل میخوایم راجع به دیتا تایپ صحبت
بکنیم. موضوع موضوع مهمیه از این بابت که
شما زمانی که دارید دیتایی رو ذخیره
میکنید اگر تایپ اون دیتا رو به درستی
انتخاب نکرده باشید یه سری مشکلات میتونه
درست بکنه.
بریم جلوتر. پس ما قراره راجع به این
ستونهایی که داخل این جداول صحبت بکنیم
که چه دیتا تایپی داخلشه.
مثلاً فرض کنید برای یه دیتابیس فروشگاهی برای جدول محصولاتش
ما چه دیتایی میتونیم داشته باشیم؟ مثلاً
اسم محصول، قیمتش، موجودیش و آیا محصول
الان فعاله یا نه؟
مثلاً یه ردیفیو در نظر بگیرید با آیدی ی
یه لپتاپه
قیمتش ۱۲۰۰ دلاره مثلاً ۱۰ تا ازش مونده و
فعالم هست.
هر کدوم از این
ستونها باید یک تایپی داشته باشه
زمانی که شما دارید یک جدولی رو همون بار اول میسازید و اسم ستونا رو مشخص میکنید
بعد تایپش رو هم مشخص میکنید.
مثلاً ما الان تو این جدول پروداکت چه دیتا تایپهایی داریم؟ یه اینتیجر داریم
یه ورکر داریم یا ورچر
نومریک داریم اینتیجر داریم بولین داریم و
تایم استمپ
اینا لیستشه که اینا همه دیتا تایپن چرا دیتا تایپ مهمه فرض کنید قیمت
پروداکتو ما به جایی که به صورت عددی
ذخیره کنیم بیایم به صورت تکست متن ذخیره
کنیم
چه اتفاقی میفته؟ پستگرس اونو به صورت یک متن میبینه و دیگه شما نمیتونید روش به
راحتی عملیات ریاضی انجام بدی
مگر اینکه یک تبدیلی انجام بده که خب
منطقی نیست این کار.
عددییا مشخصه دیگه شما هر دیتایی دارید که مفهوم عدد داره
مثل سن مثل موجودی مثل قیمت
یه اون اینتیجر بود یه چیز دیگه داریم به نام اسمال ایندت
اگر رنج عددی شما کوچیکه
خیلی بزرگ نیست مثل مثلاً ریت معمولاً ریت
مثلاً بین ی پ لازم نیست اینتیجر بگیرید
چرا
بچهها شما وقتی که مثلاً میگید دیتا تایپ
این ستون اینتیجره
عملاً شما یه حافظهای رو برای اون ستون
در نظر میگیرید برای هر سلولش
خب اگه بتونید این فضا رو کوچکتر در نظر
بگیرید خیلی بهتره
پس باید دیتا تایپی رو همیشه انتخاب بکنید
که به اندازه نیازتون از حافظهتون فضا
آشغال بکنه کنه
پس مثلاً برای ریت لازم نیست بگیرید
اینتیجر ی تا ۵ نهایتاً اسمال اینتم جواب
میده
من برعکسش
اگه عدد خیلی گنده بود بهتره که اینتیجر
نگیرید که مشکل پیش نید چون لیمیت داره
اینجا میتونید برعکس بیگ این در نظر
بگیرید
نومریک جاییه که در حقیقت دقت عدد مهمه یعنی شما مثلاً عدد عدد صحیح نیست اعشار
داره و اون حتی اون دقت رقم اعشارشم مهمه
مثلاً شما میخواید دقیقاً مشخص بکنی که
چند رقم اعشار داشته باشه
و همون شبیه نومری که میگه خیلی تفاوتی ندارن
یه ریل داریم یه دابل پریسیشن داریم جاهایی که مثلاً محاسبات علمی ماشین
لرنینگ مژرمنت به درد میخوره
اما برای پول و اینا بچهها بهتر از نومریک استفاده کنید.
اما بریم سراغ کرکتر
یه ورکر داریم که جلوش یه عددی میدیم که
اون عدده حداکثر طول اون کا اون رشته رو
مشخص میکنه چقده
مثلاً برای اسم ۱۰۰ تا کفایت میکنه زیادم
هست خیلی باید کسی اسمش بیشتر از ۱۰۰
کاراکتر باشه
یه دتا دا تا دا تایپ دیگه داریم به نام تکست اینجا دیگه محدودیت طول شما مشخص
نمیکنید کجا به درد میخوره مثلاً جاهای
که راجع به دسکریپشنه، کامنته معلوم نیست
چقده میتونید اینو استفاده کنید
پس جاهایی که شما اون متنتون میدونید حدوداً چه محدود چقدر طولش از ورکر
استفاده کنید. جاهایی که نمیدونید برید
سراغ تکست.
اگر دادهتون همیشه طولش ثابته
میتونید از کر استفاده کنید. مثلاً کد
ملی
مثلاً
چه میدونم مثلاً شماره دانشجویی دانشگاه
که معمولاً عددش ثابته یا هر چیز ثابت
دیگهای فرق نمیکنه.
پولیالم مشخصه که جاهایی که شما دو حالت دارید
یه چیز دو حالت هست میتونید به صورت پولی
میتونید پیشفرضش مشخص کنید که چی باشه
مقدارش توروئه یا فارسه طبیعتاً
تایم و دیتو دارید من اینا یه دیگه
سریعتر میبینم چون یه سریش تکراریه
احتمالاً طبیعتاً شما همتون تا یه حدی با
برنامه آشنا هستید
اینا رو سریعتر ازش رد میشم
اینم داره حالتهای مختلف تایمو میگه که حالا ما تو خود کارمون جلوتر بریم هر جا
لازم باشه راجش صحبت میکنیم.
اینجا راجع به یویآیدی داره صحبت میکنه. این مهمه یویو آیدی چیه؟ یونیورسالی یونیک
آیدنتیفایر همون آیدی خودمونه یه جورایی
مثلاً یه همچین نمونهای خب
میگه پستگرس یه دیتا تاپ مخصوص این کار
داره
یعنی آیدیتون رو میتونید از جنس یوآیدی
در نظر بگیرید
چرا چون بچهها لزوماً همیشه آیدیمون این
شکلی نیست
۱ ۲ ۳ ۴ ۵ بلکه معمولاً چیز شبیه اینه
برای همین میان تایت تایپ آیدی رو میزنن یو آیدی
حتی مثلاً یه همچین چیزی مینویسن که خودش آیدی رندم تولید بکنه و یونیک هم باشه
دیگه لازم نیست شما آیدی بدید خودش آیدی
رو درست میکنه
اگه اینجا شما بنویسید سریال توی این قسمت آیدی معنا و مفهومش اینه که این آیدیه
باید به صورت افزایشی تولید بشه.
اگرم میخواید عدد خیلی گنده باشه میتونید بنویسید بیگ سریال.
یه چیز دیگه هم داریم به نام آیدنتیتی. چیکار میکنه؟ این
اگه هم بنویسیم به این صورت میگه اگه اولیزو بنویسید پستگز خودش آیدی رو تولید
میکنه
آره لازم نیست آیدی برید
نالم که دیگه همتون احتمالاً شنیدید حداقل
یه بار و با صفرم طبیعتاً فرق داره داره
اگه میخوایم یه ستون نال نباشه هیچوقت
جلوش مینویسیم نات نال و اگر موقع اینسرت
کردن مقداری برای اون ستون در نظر نگیرید
خطا میده دیفالتم که دیدیم
خب پست گرس میگه از آرایه هم پشتیبانی
میکنن
این مثلاً یه یه آرایه از تکستا
یه همچین چیزی میشه جاهایی که اگه یه ستونی نیاز بود چند تا
مقدارو ذخیره بکنید میتونید از آرایی
استفاده کنید.
جیسونو داریم. جیسونم چیز باحالیه. بعد اینامو داریم
اینام فرقش بالایی چیه؟ اینام زمانی
استفاده میشه که مقادیر یک ستون مقادیر
ثابتن. چند تا حالت ثابت داره.
مثلاً وضعیت سفارش پندینگ و پید و شیپ و
کنسل حالتا ثابته. اینجا میاید از اینام
استفاده میکنید که اگر مقداری خارج از
اینا داد خطا بده. یعنی تو موقع وارد کردن
دیتا مقداری خارج از این چار تا بیاد خطا
میده. فرقش با آرایه اینه.
اینا ارم بگذریم میره یه تیبل بسازه حالا ما چند بار این
کارو کردیم دیگه ورود نمیکنیم اینا رو و
به نظرم برا این جلسه کافیه
بذارید اینا ارم بذارید بگم حالا برای تغییرن یه تیبل در دستور التر
استفاده میشه اوکی
حذف ستونم که اینجوریه تغییر نام ستون
تغییر نام تیبل
تغییر دیتا تایپ
حذف تیبل
اینجا میتونیم یه شرط بذاریم اگه تیبل هست حذف بشه که ارور نده اگه نبود
موقعی هم که داریم تیبلو میسازیم
میتونیم بگیم اگر نیست نیست بساز اگه هست
نیاز نیست دوباره بسازی
اگه میخوایم تیبله بمونه محتویاتش خالی بشه از دستور ترانکت استفاده میکنیم دراپ
کلاً عذب میکنه ترانکت محتویاتشو خالی
میکنه
یه دیلیتم داریم که یه مقدار متفاوته با ترانکت ولی بعداً راجع بهش صحبت میکنیم
خب خب
بچهها شماره تلفنو وقتی دارید دیتا تایپ براش مشخص میکنید عدد نیستا حواستون باشه
خب از جنس عدد نیست کاراکتره محاسبات
ریاضی شما نمیخواید به شما تلفن انجام
بدید برای پست کد و پستی هم همچنین اینا
عدد نیستن کد ملی اینجور چیزا
پس اینا رو دقت بکنید جایی که همیشه عددم لزوماً نباید عدد بذاره دیتا تایپو امکان
داره اصلاً عدد نباشه اونا
خب به نظرم برا این جلسه کافیه بریم بیایم ادامهشو جلسه بعدی صحبت میکنیم فعلاً
خداحافظ
پرسشهای رایج
پاسخ کوتاه و مستقیم به پرسشهایی که معمولاً هنگام یادگیری این موضوع مطرح میشوند.
انواع دیتا تایپ در پوسگرس شامل اینتیجر، نومریک، کرکتر، تکست، پولی، تایم استمپ و یوآیدی هستند.
انتخاب نوع داده مناسب میتواند عملکرد پایگاه داده را بهبود بخشد و مصرف حافظه را کاهش دهد.
دستوراتی مانند ترانکت و دراپ برای مدیریت جدولها و انجام تغییرات در آنها استفاده میشوند.
آخرین بهروزرسانی محتوای متنی:
🎓 دوره جامع «متخصص مهندسی داده و بیگ دیتا» | Pista Academy در دنیای امروز، حجم عظیمی از دادهها هر روز توسط سازمانها، کسبوکارها و سرویسهای آنلاین تولید میشود؛ اما داده زمانی ارزشمند است که بتوانیم آن را بهدرستی جمعآوری، ذخیره، پردازش و مدیریت کنیم. در دوره «متخصص مهندسی داده و بیگ دیتا» در Pista Academy، قدمبهقدم با مفاهیم، ابزارها و تکنولوژیهای مهم حوزه Data Engineering و Big Data آشنا میشویم و تلاش میکنیم مسیر یادگیری را از مفاهیم پایه تا ابزارهای حرفهای این حوزه طی کنیم. 📚 در این دوره با موضوعاتی مانند موارد زیر آشنا خواهید شد: 🔹 Linux Server و ابزارهای موردنیاز مهندسی داده 🔹 Python و Java برای کار با ابزارهای Data Engineering 🔹 مفاهیم دادههای توزیعشده و پایگاه داده 🔹 پایگاه دادههای رابطهای و SQL 🔹 پایگاه دادههای NoSQL 🔹 مفاهیم Big Data 🔹 اکوسیستم Hadoop 🔹 کار با ابزارهای Hadoop و مثالهای کاربردی 🔹 Apache Spark و پردازش دادههای حجیم 🔹 کار عملی با ابزارهای Spark 🔹 Kubernetes 🔹 خودکارسازی و مدیریت فرایندهای انتشار در مهندسی داده 🎯 این دوره برای چه کسانی مناسب است؟ اگر قصد دارید وارد حوزه مهندسی داده شوید، دانش خود را در زمینه Big Data گسترش دهید یا با ابزارهایی مانند Hadoop، Spark، SQL، NoSQL و Kubernetes بهصورت جدیتر آشنا شوید، این دوره میتواند مسیر مناسبی برای شروع و توسعه مهارتهای شما باشد. در طول دوره تلاش میکنیم مفاهیم را به زبان ساده و کاربردی بررسی کنیم و در کنار مباحث تئوری، با ابزارها و سناریوهای واقعی نیز آشنا شویم. ━━━━━━━━━━━━━━━━━━ 📌 نام دوره: متخصص مهندسی داده و بیگ دیتا 🏫 Pista Academy آموزش تخصصی، ساده و کاربردی اگر این آموزش برای شما مفید بود، با 👍 لایک کردن ویدیو و Subscribe کردن کانال Pista Academy از ادامه تولید آموزشهای تخصصی حمایت کنید. همچنین اگر درباره مباحث دوره سؤال یا پیشنهادی دارید، در بخش نظرات مطرح کنید. 👇 #مهندسی_داده #بیگ_دیتا #DataEngineering #BigData #Python #SQL #NoSQL #Hadoop #Spark #Kubernetes #PistaAcademy