شاید براتون سوال باشه این Index ها چیکار میکنن روی دیتابیس ؟
توی MySQL و تقریبا بقیه دیتابیس ها پنج نوع index داریم :
که اولیش و معروف ترینش Primary هست که کلید اصلی جدول هست و نمیتونه NULL یا تکراری باشه و فقط یدونه توی هر جدولی وجود داره
دومیش Index هست که برای سریع تر کردن جستجو استفاده میشه و میتونه SELECT، WHERE، ORDER BY و JOIN رو بهینه سازی کنه
سومیش Unique هست که همون Index عه ولی نمیتونه مقدار تکراری داشته باشه
چهارمیش SPATIAL هستش که فقط روی ستونهایی از نوع Spatial (مثل GEOMETRY, POINT, POLYGON) استفاده میشه.
و اخری که خیلی هم پر کاربرده FULLTEXT هست که برای جستجوی متنی توی ستونهای CHAR, VARCHAR, یا TEXT استفاده میشه و حتی میتونه تا یه حدی زبان طبیعی NLS رو بفهمه و حتی منطق بولی هم میفهمه مثلا میتونین بگین چه چیزی توی متن باشه و چه چیزی نباشه
البته نحوه سرچش متفاوته و بجای LIKE و = از MATCH استفاده میکنه
@Linuxor
توی MySQL و تقریبا بقیه دیتابیس ها پنج نوع index داریم :
که اولیش و معروف ترینش Primary هست که کلید اصلی جدول هست و نمیتونه NULL یا تکراری باشه و فقط یدونه توی هر جدولی وجود داره
دومیش Index هست که برای سریع تر کردن جستجو استفاده میشه و میتونه SELECT، WHERE، ORDER BY و JOIN رو بهینه سازی کنه
سومیش Unique هست که همون Index عه ولی نمیتونه مقدار تکراری داشته باشه
چهارمیش SPATIAL هستش که فقط روی ستونهایی از نوع Spatial (مثل GEOMETRY, POINT, POLYGON) استفاده میشه.
و اخری که خیلی هم پر کاربرده FULLTEXT هست که برای جستجوی متنی توی ستونهای CHAR, VARCHAR, یا TEXT استفاده میشه و حتی میتونه تا یه حدی زبان طبیعی NLS رو بفهمه و حتی منطق بولی هم میفهمه مثلا میتونین بگین چه چیزی توی متن باشه و چه چیزی نباشه
البته نحوه سرچش متفاوته و بجای LIKE و = از MATCH استفاده میکنه
@Linuxor
❤72👍46🔥4
این دوره گوگل رو از دست ندید. یه دوره برای Prompt نویسی که کمکتون میکنه
-مثل حرفهایها انجام بدید
- برای وظایف تکراری پرامپت بنویسید
- برای تحلیل داده دستورات رو بنویسید
حسنش هم اینه که از پایه آموزش میده و به زبان ساده تدریس میشه.
grow.google/prompting-essentials/
@Linuxor ~ samanfaegh
-مثل حرفهایها انجام بدید
- برای وظایف تکراری پرامپت بنویسید
- برای تحلیل داده دستورات رو بنویسید
حسنش هم اینه که از پایه آموزش میده و به زبان ساده تدریس میشه.
grow.google/prompting-essentials/
@Linuxor ~ samanfaegh
2👍78❤10
This media is not supported in your browser
VIEW IN TELEGRAM
این ریپو رو یه نفر درست کرده که بیش از 150 تا notebooks آموزشی داره راجع به استفاده از لایبرری Transformers برای انواع اپلیکیشن ها و روی انواع دیتا مثل PDF و تصویر و ویدیو
هر کدوم از این notebooks های آموزشی کلی چیز راجع به مدلها و معماری های مختلف یاد میده :
github.com/NielsRogge/Transformers-Tutorials
@Linuxor ~ MehdiAllahyari
هر کدوم از این notebooks های آموزشی کلی چیز راجع به مدلها و معماری های مختلف یاد میده :
github.com/NielsRogge/Transformers-Tutorials
@Linuxor ~ MehdiAllahyari
👍51❤6
اگه تازه سایت میخواین بیارین بالا با این سایت میتونین آنالیزش کنید و بهتون میگه چیکار کنید که سرعت لودش بره بالا، این سایت مال خود گوگله :
pagespeed.web.dev
@Linuxor
pagespeed.web.dev
@Linuxor
👍89🤣15🔥4
یه نفر تجربه 2 ساله خودش از استفاده از Rust رو نوشته، اگه میخواین تازه Rust یاد بگیرین خیلی جلوتون میندازه
borretti.me/article/two-years-of-rust
@Linuxor
borretti.me/article/two-years-of-rust
@Linuxor
👍76🔥8❤7
اکثر برنامه نویس ها همیشه حواسشون به بروت فورس هست یعنی میآن و تعداد دفعات اشتباه رو ذخیره میکنن و به یه نحوی مثلا بلاک کردن اکانت و ... جلوشو میگیرن
ولی اصلا حواسشون به Password Spraying نیست، اسپری کردن پسورد یعنی بر خلاف اینکه هکر روی یه یوزر پسورد های زیادی تست کنه یه پسورد رو روی یوزر های زیادی تست میکنه و مشکل لیمیت هم دیگه نداره (اگه لیمیت ساده گذاشته باشین)
مثلا فرض کنید شما یه پیام رسان دارین و من میام کد یه بار مصرف 78921 رو روی همه شماره ها تست میکنم اگه حواستون به لیمیشن مثلا ایپی من نباشه من به راحتی وارد یه اکانت میشم چون بلخره یکبار سرور 78921 رو تولید میکنه
@Linuxor
ولی اصلا حواسشون به Password Spraying نیست، اسپری کردن پسورد یعنی بر خلاف اینکه هکر روی یه یوزر پسورد های زیادی تست کنه یه پسورد رو روی یوزر های زیادی تست میکنه و مشکل لیمیت هم دیگه نداره (اگه لیمیت ساده گذاشته باشین)
مثلا فرض کنید شما یه پیام رسان دارین و من میام کد یه بار مصرف 78921 رو روی همه شماره ها تست میکنم اگه حواستون به لیمیشن مثلا ایپی من نباشه من به راحتی وارد یه اکانت میشم چون بلخره یکبار سرور 78921 رو تولید میکنه
@Linuxor
👍256🔥13👎12❤3
یه برنامه نوشته بودم که میرفت چند میلیون پست از یه وبلاگ رو میخوند و میزان بازدید پست هارو توی دیتابیسم ذخیره میکرد
انقدر تعداد پست ها زیاد بود که هر چرخه دو سه روز طول میکشید و دیتا هام زیاد بهروز و قابل اعتماد نبودن.
اومدم یه پارامتر جدید تعریف کردم و میزان تغییر بازدید پست رو هم در نظر گرفتم اینطوری پست های پر تغییر بیشتر چک میشن و الان مثل برق چند ساعته دیتابیسم آپدیت میشه.
جالب اینجاست مشابه این ایده رو 20 سال پیش گوگل داده و اسمش Crawl Frequency هست.
@Linuxor
انقدر تعداد پست ها زیاد بود که هر چرخه دو سه روز طول میکشید و دیتا هام زیاد بهروز و قابل اعتماد نبودن.
اومدم یه پارامتر جدید تعریف کردم و میزان تغییر بازدید پست رو هم در نظر گرفتم اینطوری پست های پر تغییر بیشتر چک میشن و الان مثل برق چند ساعته دیتابیسم آپدیت میشه.
جالب اینجاست مشابه این ایده رو 20 سال پیش گوگل داده و اسمش Crawl Frequency هست.
@Linuxor
👍158❤12🔥7🤣6
توی مدل های هوش مصنوعی مثلا ChatGPT هر متن به توکن هایی شکسته میشه و بعد پردازش میشه اکثرا فکر میکنن هر کلمه یه توکنه ولی ممکنه هر کلمه بیشتر از یه توکن باشه، با وبسایت زیر میتونین تعداد توکن های یه متن رو بدست بیارین
tiktokenizer.vercel.app
@Linuxor
tiktokenizer.vercel.app
@Linuxor
👍81❤3🔥3🤣1
قانون نشت انتزاع میگه
هیچ انتزاعی کامل نیست؛ جزئیاتی از پیادهسازی همیشه به بیرون نشت میکنه. مثلاً توی استفاده از ORMها، با اینکه هدفشون سادگی و پنهانکردن جزئیات پایگاه دادس، اما توی عمل، توسعهدهنده باید از ساختار و عملکرد پایگاه داده آگاه باشه تا از مشکلات عملکردی جلوگیری کنه :)
@Linuxor
هیچ انتزاعی کامل نیست؛ جزئیاتی از پیادهسازی همیشه به بیرون نشت میکنه. مثلاً توی استفاده از ORMها، با اینکه هدفشون سادگی و پنهانکردن جزئیات پایگاه دادس، اما توی عمل، توسعهدهنده باید از ساختار و عملکرد پایگاه داده آگاه باشه تا از مشکلات عملکردی جلوگیری کنه :)
@Linuxor
👍139👎1
Media is too big
VIEW IN TELEGRAM
لو رفتن کل سورس کد پروژتون با حواس پرتی دایرکتوری .git
از بخش A05:2021-Security-Misconfiguration در OWASP-TOP10
لینک ابزار معرفی شده :
https://github.com/arthaud/git-dumper
@Linuxor
از بخش A05:2021-Security-Misconfiguration در OWASP-TOP10
لینک ابزار معرفی شده :
https://github.com/arthaud/git-dumper
@Linuxor
👍113❤19🤣11👎5