انواع مختلف گراف ها


در حال حاضر کاغذ های گراف در ایران با هدف نوشتن و طراحی کردن به شکل عمده ای از کشورهای هند و اوکراین تأمین می شود.

نمودار هیستوگرام چیست

نمودارهای مستطیلی همیشه یکی از بهترین‌ها در انواع نمودارها هستند مثل نمودار هیستوگرام (histogram) که به دیتا و اطلاعات و اعداد و ارقام، شکل می‌دهد. نمودارهایی انواع مختلف گراف ها که هم خیلی ساده رسم می‌شوند و هم کسب اطلاعات از آن‌ها نیز بسیار ساده است.

اگر به دنبال پاسخ پرسش نمودار هیستوگرام چیست هستید و لازم است تا اطلاعات کاملی درباره این نوع نمودار کسب کنید، در این مقاله با ما همراه باشید. زیرا قرار است رسم نمودار هیستوگرام را توضیح دهیم.

کاربرد نمودار هیستوگرام (histogram) چیست؟

نمودارها در دنیای امروز یکی از راحت‌ترین روش‌های توصیف داده و اطلاعات محسوب می‌شوند.

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

کاربرد این نمودارها بسیار بسیار زیاد است، به عنوان مثال از نمودار هیستوگرام در بسیاری از داشبوردهای مدیریتی که امروزه در دنیا وجود دارد، استفاده می‌کنند.

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

اینستاگرام نورا رو دنبال کنید تا کلی از این مطالب ببینید

وقتی می‌گوییم نمودار هیستوگرام چیست به نمودارهایی اشاره می‌کنیم که به آمار و ارقام و اعداد معنی می‌دهند.

Histogram یا هیستوگرام چیست؟

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

histogram در واقع یک نمودار ستونی است؛ در این نمودار هر محور بیانگر اطلاعاتی از داده‌ها است. برای مثال در یک دسته بندی از داده‌های آماری، هر ستون را می‌توان به عنوان یک دسته از این داده‌ها در نظر گرفت. ارتفاع هر ستون نیز بیانگر میزان فراوانی هر دسته در داده‌های موجود است.

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

نحوه رسم نمودار هیستوگرام (histogram)

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

مانند سایر انواع نمودارهای مستطیلی، نمودار هیستوگرام نیز از دو محور تشکیل شده است. محور افقی که نشان دهنده دسته بندی داده‌های کمی است و محور عمومی که نشان دهنده فراوانی یا درصد فراوانی هر دسته به صورت ستونی است.

به هیستوگرام (histogram) بافت نگار یا بافت نگاشت هم گفته می‌شود.

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

برای ترسیم نمودار هیستوگرام می‌توان از ابزارها و نرم افزارهای مختلفی استفاده کرد. دو نرم افزار رایج و اصلی به کار گرفته شده برای ترسیم این نوع نمودار نرم افزار مایکروسافت آفیس اکسل و نرم افزار آماری SPSS هستند. نحوه ترسیم این نمودار در این نرم افزارها نیز بسیار ساده است.

مثال برای ترسیم نمودار هیستوگرام

اما برای درک هر چه بهتر پرسش نمودار هیستوگرام چیست؟ لازم دانستیم تا شما را با یک مثال ساده برای تعریف این نمودار همراه کنیم. در این مثال توجه شما را به زنجیره‌ای از اعداد کمی جلب می‌کنیم.

1 – 1 – 2 – 4 – 4 – 5 – 6 – 7 – 8 – 8 – 8 – 9 – 10 – 12 – 14 – 14

این زنجیره اعداد را در 5 دسته از 1 تا 3، از 4 تا 6، از 7 تا 9، از 10 تا 12 و از 13 تا 15 تقسیم می‌کنیم. به این ترتیب به راحتی می‌توان اطلاعات زیر را از این زنجیره اعداد استخراج کرد:

اپن گراف یا Open Graph چیست و چه تاثیری در سئو دارد؟

Open Graph

اپن گراف یا Open Graph چیست و چه تاثیری در سئو دارد؟

از تاثیر فعالیت در شبکه‌های اجتماعی در سئو نمی‌توان غافل شد. در واقع شبکه‌های اجتماعی بستری مناسب برای بازاریابی دیجیتال می‌باشند که باید حتما در کنار سئو و سایر روش‌های بازاریابی آنلاین استفاده شوند. یکی از ابزارهای اصلی افزایش بازدید و ترافیک ورودی سایت ها، انتشار محتوای سایت در شبکه‌های اجتماعی می‌باشد. در واقع هر چقدر هم که محتوای سایت شما به روز و با کیفیت باشد، تا زمانی که تبلیغات لازم جهت افزایش بازدید از آن‌ها صورت نگیرد، بازدهی مناسبی برای سایت شما نخواهد داشت. اما یکی از سوالات مهمی که در این خصوص پیش می‌آید، این است که محتوای سایت‌مان را چگونه در شبکه‌های اجتماعی منتشر کنیم تا نرخ کلیک بالایی داشته باشد و بازدید کنندگان آن پست را ترغیب به مراجعه به وب سایتمان کند؟ متا تگ Open Graph در این مسیر به یاری ما آمده است تا با افزایش جذابیت نحوه نمایش صفحات وب در شبکه‌های اجتماعی، در افزایش بازدید و کلیک آن‌ها نقشی مهم را ایفا کند. در این مقاله به معرفی کامل متا تگ اپن گراف، انواع آن و همچنین تاثیر آن بر سئو سایت می‌پردازیم.

متا تگ Open Graph چیست؟

اپن گراف یک پروتکل است که مجموعه‌ای از متا تگ هاست که موجب می‌شود صفحات وب به صورت غنی شده یا Rich در شبکه‌های اجتماعی مانند فیسبوک، توئیتر، لینکدین، تلگرام و… نشان داده شود. همان طور که می‌دانید در این شبکه‌های اجتماعی می‌توانید در قسمت Status لینک صفحات سایت خود را به اشتراک بگذارید. متا تگ Open Graph به شما کمک می‌کند تا صفحات وب شما در این پست‌ها به شکل بهینه‌تری به کاربران نمایش داده شود و جذابیت بیشتری برای کلیک داشته باشد.

متا تگ OG در مبحثی نسبتا نو ظهور در عرصه وب می‌باشد که اولین بار در سال ۲۰۱۰ توسط فیسبوک معرفی شد. شبکه اجتماعی فیسبوک جهت ارائه نمایش بهتری از وب سایت‌ها در تایم لاین خود، از این متا تگ‌ها رونمایی کرد و اکنون بسیاری از شبکه‌های اجتماعی مطرح جهان از آن پشتیبانی می‌کنند. البته شبکه اجتماعی توئیتر به صورت اختصاصی قابلیتی مشابه متا تگ اپن گراف تحت عنوان Twitter Cards ارائه داده است که بهتر است در قسمت Head صفحات سایت خود از آن استفاده کنید. اما در صورت‌عدم استفاده از آن‌ها نیز توئیتر از متا تگ Open Graph در سایت شما پشتیبانی خواهد کرد.

تاثیر متا تگ اپن گراف بر سئو سایت

حقیقتی که وجود دارد این است که متا تگ OG تاثیر مسقتیمی بر روی سئو سایت شما نخواهد گذاشت. اما استفاده از آن مزایایی دارد که به طور غیر مستقیم بر سئو سایت شما نیز تاثیر خواهد گذاشت. برای این که با نحوه تاثیر متا تگ Open Graph بر سئو سایت خودتان را متوجه شوید، بهتر است ابتدا با مفهومی تحت عنوان سوشیال سیگنال آشنا شوید. در سال‌های اخیر و مطابق با آخرین تغیرات الگوریتم گوگل، تاثیر شبکه‌های اجتماعی بر سئو از همیشه بیشتر شده است؛ در واقع گوگل جدیدا توجه ویژه‌ای به فعالیت سایت شما در شبکه‌های اجتماعی دارد و به آن به عنوان یک بک لینک ارزشمند نگاه می‌کند. انتشار صفحات سایت شما در شبکه‌های اجتماعی موجب افزایش نرخ کلیک سایت شما خواهد شد و این موضوع نیز امتیازی بزرگ در سئو و بهینه‌سازی سایت به شمار می‌رود. سوشیال سیگنال به مجموع تعاملات کاربران با صفحات سایت شما در شبکه‌های اجتماعی شامل لایک، نظرات و تعداد به اشتراک‌گذاری آن گفته می‌شود که تاثیر مستقیم در سئو خواهد داشت. اما ارتباط سوشیال سیگنال با متا تگ Open Graph در چیست؟ در واقع ارتباط مستقیمی بین استفاده از متا تگ اپن گراف با تقویت سوشیال سیگنال سایت شما وجود دارد. چرا که با نمایش بهتر و جذاب‌تر صفحات سایت شما در شبکه‌های اجتماعی، تعاملات کاربران با آن پست‌ها خود به خود بالا می‌رود و این موضوع از دید ربات‌های گوگل پنهان نخواهد ماند. در سال ۲۰۲۱ هر چه سایت شما تلاش بیشتری در جهت ارتقاء کیفیت ارتباط با شبکه‌های اجتماعی داشته باشد، امتیاز بهتری در سئو خواهد گرفت و متا تگ OG نیز یکی از گام‌های مهم در این راستا می‌باشد. در کل این پروتکل علاوه بر کمک به تقویت سئو داخلی سایت شما، به گرفتن بک لینک‌های ارزشمند و در نتیجه سئو خارجی سایت شما نیز موثر خواهد بود.

انواع متا تگ Open Graph

متا تگ Open Graph انواع بسیار مختلفی دارد که برخی از آن‌ها ساده‌تر و برخی دیگر پیشرفته می‌باشند و در واقع انواع مختلف این پروتکل به قدری متنوع هستند که در این مقاله ظرفیت کافی برای معرفی همه آن‌ها را نخواهیم داشت. اما در این جا به معرفی معروف‌ترین و کاربردی‌ترین انواع متا تگ OG می‌پردازیم.

اپن گراف تایتل

این نوع از اپن گراف جهت نمایش بهینه تایتل صفحات وب در شبکه‌های اجتماعی استفاده می‌شود. اپن گراف تایتل باعث می‌شود تا عنوان صفحه به شکل بولد و برجسته در پست‌ها نشان داده شود. طول مناسب برای نمایش تایتل با استفاده از این متا تگ بین ۶۰ الی ۹۰ کاراکتر می‌باشد. اما در نظر داشته باشید عنوان استاندارد صفحات سایت برای گوگل در سال ۲۰۲۱، ماکزیمم ۵۰ کاراکتر می‌باشد.

این متا تگ به شکل دستوری زیر وارد می‌شود:

اپن گراف URL

زمانی که صفحاتی از سایت شما دارای چندین آدرس می‌باشند (به طور مثال صفحاتی که دارای URL پارامتر ‌های مختلف باشند) جهت نمایش آدرس اصلی صفحه باید از متا تگ اپن گراف URL استفاده کنید.

اپن گراف type

اپن گراف type جهت معرفی نوع محتوای صفحه به اشتراک گذاشته شده، استفاده می‌شود که انواع مختلفی از جمله ویدئو، مقاله، بلاگ پست، عکس و… دارد. رایج‌ترین نوع OG type، website می‌باشد که شبکه‌های اجتماعی در صورت مشخص نکردن type، به صورت پیش فرض لینک‌های صفحات وب را به آن صورت شناسایی می‌کنند. رایج‌ترین کد‌های دستوری این متا تگ عبارتند از: article، blog، company، hotel، restaurant، book، game، film، food، actor، author، city، country و…

اپن گراف description

این متا تگ عملکردی کاملا مشابه توضیحات متا در html دارد و در صورت جذابیت می‌تواند باعث افزایش تعاملات با پست شما و کلیک بر روی آدرس سایت‌تان بشود. طول مناسب برای توضیحات این اپن گراف، حدود ۲۰۰ کاراکتر می‌باشد.

اپن گراف image

کاربردی‌ترین نوع متا تگ Open Graph، og image می‌باشد که به وسیله آن می‌توانید تصویر مورد نظر خود را برای نمایش در پست انتخاب کنید. انتخاب تصویر شاخص برای به اشتراک‌گذاری صفحاتی که دارای چندین عکس هستند بسیار مهم است. چرا که در غیر این صورت ممکن است تصویری نا مرتبط به صورت رندم از صفحه سایت شما انتخاب شود که جذابیتی برای بازدید کنندگان آن نداشته باشد. توجه داشته باشید در سایت‌های جوملا و وردپرس، این متا تگ به طور خودکار در تمام صفحات سایت شما اعمال خواهد شد و نیازی به وارد کردن دستی آن نیست.

دیتابیس NoSQL و انواع آن چیست؟ آیا باید آن را جایگزین SQL کنیم؟

دیتابیس NoSQL و انواع آن چیست؟ آیا باید آن را جایگزین SQL کنیم؟

آیا تاکنون از خود پرسیده اید گوگل چگونه در کسری از ثانیه در میلیاردها صفحه اینترنت جستجو میکند؟ آیا از SQL استفاده میکند؟ مسلما خیر, از تکنولوژی جدیدی به نام NoSQL استفاده میکند!

رایج ترین دسته دیتابیس ها امروزه بر مبنای SQL میباشند و اینگونه دیتابیس ها “ارتباطی” یا “relational” نامیده میشوند.

اما با پیشرفت تکنولوژی طی سالیان اخیر نیاز به پردازش و ذخیره سازی بهینه تر , سرعت بالا و عدم امکان استفاده از جداول (Table) در بسیاری از پروژه های بزرگ احساس میشد. از طرفی ذخیره سازی حجم بالایی از داده های بدون ساختار (non-structured data) در دیتابیس های SQL باعث کاهش شدید سرعت و کارایی دیتابیس میگردد. از این رو تکنولوژی جدیدی به نام NoSQL با اهدافی متفاوت ارائه شد. هدف اصلی NoSQL ذخیره سازی و کار با داده های بدون ساختار و حجیم میباشد.

متاسفانه این علم روز جهانی در داخل کشورمان تاکنون زیاد مورد بحث و استفاده قرار نگرفته است. در ادامه به بررسی عملکرد قابل توجه و انواع آن میپردازیم…

ساختار و عملکرد SQL

SQL


قبل از پرداختن به ساختار NoSQL باید کمی با SQL دقیق تر آشنا شویم.

دیتابیس های SQL نحوه عملکرد سازمان یافته و سفت و سخت تری در ذخیره سازی و دریافت اطلاعات دارند. اگر تاکنون با SQL کار کرده باشید میدانید که اطلاعات درون جداول (Tables) – ستون ها (Columns) – سطرها (Rows) ذخیره میشوند.

به زبان ساده در SQL:

هر سطر (Row) نقش یک رشته ورودی یا خروجی را دارد.

هر ستون (Column) نقش یک خصوصیت یا شاخص را دارد.

هر جدول (Table) نقش یک خوشه اطلاعات با خصوصیات مشترک را دارد.

همچنین در SQL میتوانیم هر جدول را به جدول دیگری ارتباط بدهیم و جداول مرتبط با هم بسازیم.

تمامی این ارتباطات و ساختارهای داده ای مرتبط با هم در پشت صحنه توسط دیتابیس به واسطه ساختاری به نام Schema ذخیره میشوند. اما به علت ثابت بودن ماهیت دیتابیس های SQL , ساختار هر دیتابیس مانند پی ساختمان توسط Schema ثابت تعریف شده است. (Predefined Schema)

این قائده مندی و ساختاردهی در بسیاری از موارد کاربردی و مفید میباشد. در کل SQL بسیار پایدار (Stable) و مناسب برای داده های خصوصیت دار و ساختاریافته میباشد. اما در مورد ذخیره سازی داده های بسیار بزرگ و بدون ساختار مشخص, ناگهان نقاط قوت آن به نقاط ضعف تبدیل میشوند و چهارچوب ها و مقررات سفت و سخت ذخیره سازی و کار با داده ها در SQL باعث محدود شدن قابلیت ذخیره سازی اطلاعات متفاوت در کنار هم و کاهش انواع مختلف گراف ها چشمگیر کارایی و سرعت میگردد.

ساختار و عملکرد NoSQL

خلاء ایجاد شده توسط نقاط ضعف SQL در کار با داده های حجیم باعث ایجاد و توسعه NoSQL شد.

NoSQL قابلیت مدیریت کردن و کار با حجم بسیار عظیمی از داده ها را داراست. مشخصا در آن برای کار با داده ها از زبان SQL استفاده نمیشود. بلکه به صورت بسیار ساده و روان از XML یا JSON برای این منظور استفاده میگردد.

از آنجایی که NoSQL باید بتواند انواع مختلف داده های بدون ساختار مشخص را ذخیره کند, در ساختار داخلی آن از “Schema پویا و قابل تغییر” یا “Dynamic Schema” استفاده شده است. این خصوصیت امکان تغییر در ساختار ذخیره سازی داده ها را فراهم کرده و انعطاف فراوانی به دیتابیس در کار با داده های گوناگون و حجیم میدهد.

با این حال از نقاط ضعف NoSQL میتوان به عدم امکان کار با کوئری های پیچیده اشاره کرد. همچنین به نسبت دقت بالای SQL در NoSQL امکان بروز خطاهایی با احتمال بسیار پایین در موقع ثبت و تغییر داده ها وجود دارد. (ریسک پیش آمدن حالت های پیش بینی نشده توسط مدیر دیتابیس, هر چند اندک وجود دارد. مدیر دیتابیس باید با شناخت کامل خصوصیات دیتابیس خود, آن را جهت حفط یکپارچگی داده ها به صورت صحیح مدیریت کند.)

دسته های مختلفی از دیتابیس های NoSQL تاکنون ساخته شده اند. در ادامه به بررسی هر کدام میپردازیم.

انوع مختلف NoSQL

دیتابیس های NoSQL کلید و مقدار (Key-value NoSQL):

در اینگونه دیتابیس ها از یک کلید (Key) که نقش شناسه هر داده را بازی میکند به منظور دریافت و ذخیره سازی داده (Value) استفاده میشود. این دسته به علت سادگی کارکرد پر استفاده ترین نوع دیتابیس های NoSQL میباشد.

دیتابیس های NoSQL اسناد (Document NoSQL):

اینگونه دیتابیس ها به منظور ذخیره سازی و کار با اسنادی با فرمت های XML, JSON , … به کار میروند. از دیتابیس های اسنادی NoSQL به منظور ذخیره سازی داده های بدون ساختار مشخص با پراکندگی بالا استفاده میشود.

دیتابیس های NoSQL چند ستونه (Wide-column NoSQL):

دیتابیس های چند ستونه در نگاه اول همانند دیتابیس های SQL از جدول و ستون و سطر استفاده میکنند. اما عملکرد آن های ارتباطی به جداول SQL ندارد! فقط ظاهر جداول آن ها تا حدی شبیه ساختار جداول SQL میباشد. بر خلاف SQL هر ستون میتواند شامل داده هایی با فرمت و ساختار متفاوت باشد. به عبارتی دیگر نوع تعریف و فرمت یک ستون میتواند در هر سطر متفاوت باشد. این دیتابیس ها انعطاف بسیار بالایی در ثبت و کار با داده های بسیار عظیم و متفاوت دارند.

دیتابیس های NoSQL گرافی (Graph NoSQL):

graph - گراف

دیتابیس های گرافی به منظور ذخیره سازی حجم زیادی از داده های ارتباطی (Relational data) طراحی شده اند. به زبان ساده میتوان اینگونه دیتابیس ها را مانند گرافی شامل “داده ها -> راس ها” و “ارتباط ها -> یال ها” در یک گراف هندسی در نظر گرفت. از این دسته دیتابیس ها در ذخیره سازی انواع معماری های داده های شبکه ای نیز استفاده میشود.

دیتابیس های NoSQL متغیر یا چند مدله (MultiModel NoSQL):

دیتابیس های چند مدله امکان ذخیره سازی و کار با داده ها را در چندین حالت متفاوت فراهم میکنند. اینگونه دیتابیس ها میتوانند تلفیقی از انوع دیگر دیتابیس های NoSQL باشند. (مانند Key-value و گرافی)

NoSQL جایگزین کامل SQL نیست!

باید دقت داشت که NoSQL و SQL هر کدام کاربردهای انواع مختلف گراف ها متفاوتی دارند. همانطور که گفته شد SQL دقت بالاتری در هنگام کار با داده های کوچک دارد و برای کار با داده های ساختاریافته طراحی شده است. در حالی که NoSQL برای کار با داده های کلان و بدون ساختار مشخص طراحی شده است.

از جمله سیستم هایی که SQL در آن ها بهینه عمل میکند میتوان به موارد زیر اشاره کرد:

  • سیستم های مدیریت سطح دسترسی (Access Control). (مثال: مدیریت کاربران سایت و سیستم ها)
  • سیستم های تراکنش بانکی

از جمله سیستم هایی که NoSQL در آن ها بهینه عمل میکند میتوان به موارد زیر اشاره کرد:

  • کلان داده (Big data)
  • موتورهای جستجوگر
  • سیستم های مانیتورینگ و پویش شبکه

چرا سازمان ها نیاز به مهاجرت به NoSQL دارند؟

در چند سال اخیر افزایش بسیار زیادی در نرخ تولید و جمع آوری داده ها رخ داده است. همچنین سازمان ها با داده های ورودی گوناگون و متنوعی رو به رو هستند. در نتیجه حجم و گوناگونی داده هایی که سازمان نیاز به مدیریت و کار با آن ها دارد بسیار افزایش داشته است.

چنین امری سازمان ها را ملزم به بروزرسانی سیستم های سنتی مدیریت دیتابیس (DBMS) به سیستم های نوینی میکند, که امکان بررسی و آنالیز داده هایی عظیم که هر لحظه افزوده میشوند را داشته باشد.

همچنین بسیاری از داده هایی که سازمان ها با آن سر و کار دارند داده های بدون ساختار مشخص هستند و امکان تعریف تعداد بسیار زیادی جدول و فیلد در دیتابیس های SQL غیر منطقی به نظر میرسد. در نتیجه استفاده از تکنولوژی های پیشرفته ای مانند NoSQL باعث از بین رفتن محدودیت های فنی ذخیره سازی داده ها و اطلاعات میشود.

مهاجرت از SQL به NoSQL گرچه فرایندی سخت و هزینه بر میباشد, اما با تشخیص صحیح مدیر دیتابیس باعث بهینه تر شدن عملکرد چشمگیر سیستم های اطلاعاتی میشود. قابلیت توسعه و پایداری بالای NoSQL در کار کردن با حجم داده های بالا, با SQL قابل قیاس نیست.

معرفی برخی از دیتابیس های NoSQL

  • Aerospike: اگر به دنبال دیتابیس Key-value بسیار قدرتمند برای کلاسترینگ میگردید aerospike گزینه مناسبی میباشد. این دیتابیس از لحاظ حجم پردازش داده و سرعت بالاترین رتبه را در Benchmark بدست آورده است. ذخیره سازی اطلاعات در این دیتابیس به صورت ادغامی از Ram و SSD صورت میگیرد.
  • Redis: یک دیتابیس Key-value که برای حجم کار کوچکتر به نسبت aerospike مناسب میباشد. تمامی اطلاعات این دیتابیس در Ram ذخیره میشوند. این دیتابیس قابلیت کلاستر شدن ندارد!
  • MongoDB: مونگو معروف ترین دیتابیس NoSQL است و برای ذخیره سازی اسناد (Documents) استفاده میشود. اگر نیار به ذخیره سازی حجم بالایی از داده های مختلف و پراکنده را دارید مونگو گزینه مناسبی برای شماست. کار کردن با مونگو به نسبت ساده است و اگر قصد شروع کار و آشنایی با NoSQL ها را دارید شخصا آن را پیشنهاد میکنم.
  • Cassandra: این دیتابیس از قوی ترین دیتابیس های NoSQL میباشد و توسط Apache ارائه شده است. دیتابیس Cassandra در دسته Wide-column قرار دارد. قابلیت های بسیار خاص و بالا, Cassandra را از بسیاری از NoSQLهای دیگر برتر میکند. گرچه سرعت پردازش Aerospike از Cassandra بیشتر است اما قابلیت های فراوان و انعطاف بالای Cassandra به عقیده بسیاری آن را قدرتمندترین NoSQL کرده است.
  • Neo4j: دیتابیسی بر پایه گراف (Graph) که برای ذخیره سازی ساختمان داده های مختلف شبکه ای و داده های ارتباطی بسیار مناسب میباشد.

قیمت کاغذ گراف اوکراین و هندی و واردات انواع مختلف آن

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

قیمت کاغذ گراف اوکراین و هندی و واردات انواع مختلف آن

لیست قیمت فروش کاغذ گراف اوکراین و هندی در کشور

لیست قیمت فروش کاغذ گراف اوکراین و هندی در کشور

برای اطلاع از لیست قیمت فروش کاغذ گراف هندی و یا اوکراینی در داخل کشور باید به مراکزی که این محصولات را می فروشند مراجعه کرد.

حال چه این مراکز فروش، انلاین باشند و چه مراکز حضوری.

زیرا قیمت های محصولات از جمله کاغذ گراف، به دلیل نوسانات ارز دارای ثبات نیستند.

به همین دلیل هنگام خرید و یا قبل آن باید به مراکز خرید و فروش مربوطه مراجعه کرد و آن محصولات را خریداری کرد.

واردات کاغذ گراف در ایران

واردات کاغذ گراف در ایران

در حال حاضر کاغذ های گراف در ایران با هدف نوشتن و طراحی کردن به شکل عمده ای از کشورهای هند و اوکراین تأمین می شود.

این کاغذ ها دارای مقاومت بالا و قابل توجهی هستند که این موضوع باعث می شود به راحتی پاره نشوند.

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

بازار بزرگ فروش کاغذ گراف در تهران

بازار بزرگ فروش کاغذ گراف در تهران

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

از این رو خریدار کاغذ گراف، می تواند با مراجعه به این بازارها کاغذ مورد نظر خود را بیابد.

از طرفی سایت های اینترنتی زیادی نیز برای فوش این دسته از محصولات شکل گرفته اند که فروشندگان زیادی به راحتی از طریق این سایت ها فروش کاغذ گراف تهران و دیگر شهرها را تامین می کنند.

همچنین افرادی که به این کاغذها دسترسی ندارند بدون اهمیت داشتن موقعیت مکانیشان می توانند این محصولات را خریداری کنند و از آن ها بهره ببرند.

عوامل موثر در قیمت گذاری کاغذ گراف

عوامل موثر در قیمت گذاری کاغذ گراف

عوامل موثری در قیمت گذاری کاغذ گراف، مواردی هستند که در پایین به آن ها اشاره می کنیم:

  • نوسانات ارز و قیمت دلار
  • شرایط اقتصادی
  • نیاز بازار به این کاغذها
  • فروشندگان این محصول
  • و …

از این رو در حال حاضر این محصولات هیچ ثبات قیمتی ای ندارند و می توان قبل از انجام خرید تحقیقات لازم را در مورد هزینه های مربوطه به عمل آورد و خرید خود را نهایی کرد.

پروتکل گراف (The Graph)، ابزاری برای جستجو روی بلاکچین‌ها

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

پروتکل گراف (The Graph) برای کمک به حل انواع مختلف گراف ها این مشکل پدید آمده است تا با کمک آن بتوان توسط یک ابزار بر روی بلاکچین‌های مختلف جستجو نموده و اطلاعاتی که به سادگی در دسترس نیست را به‌دست آورد.

پروتکل گراف چیست؟

گراف یک پروتکل یا به عبارتی یک موتور جستجوی غیرمتمرکز روی بلاکچین‌هاست. توسط این پروتکل توسعه‌دهندگان قادر هستند اپلیکیشن‌های غیرمتمرکز (dApps) خود را به سادگی روی پروتکل IPFS توسط ابزار GraphQL انجام دهند. این پروتکل در ابتدا برای بلاکچین اتریوم توسعه داده شد. مثلا اگر بازی معروف کریپتوکیتی (یک dApp روی اتریوم) را به یاد داشته باشید، توسط موتور جستجوی گراف می‌توانید بفهمید برای این بازی چند اکانت منحصربه‌فرد وجود دارد، یا یک موجودیت منحصربه‌فرد کریپتوکیتی در چه زمانی ایجاد شده است.

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

دنیای غیرمتمرکز (Decentralization)

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

امروزه ساختار فعلی وب بر اساس مدل کلاینت-سرور بنا شده و قدرت از آن کسی است که سرور را در اختیار دارد (عملیاتی کرده است)، زیرا تمام قوانین، شرایط و کنترل‌ها از سمت سرور انجام و هدایت می‌شود و در بیشتر موارد هیچ‌گونه اختیاری از سوی کاربر (کلاینت) وجود ندارد.

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

خبر خوب این که ممکن است ما به انتهای دوره انحصارگرایی در عصر اطلاعات رسیده باشیم. ظهور بلاکچین و پیدایش رمزارزها و پروتکل‌های مرتبط، فرصت مناسبی را برای مقابله با این انحصارگرایی فراهم ساخته است.

ساختار استک پروتکل وب3 (Web3 Protocol Stack)

پروتکل وب3 پلتفرمی برای فعال‌کردن قابلیت‌های غیرمتمرکز در مقیاس وسیع بر بستر فعلی وب است. هرچند هنوز خیلی زود است که بتوان گفت با آمدن وب3 چه پروتکل‌هایی به پایان راه‌شان خواهند رسید و از رده خارج می‌شوند، اما وب3 موج جدیدی از تجربیات غیرمتمرکز را برای جایگزین شدن با نرم‌افزارهای متمرکز به همراه خواهد آورد.

اپلیکیشن‌های غیرمتمرکز (dApps) برای کاربر امکان کنترل روی دیتای خود را فراهم می‌کنند. دَپ‌ها بر پایه دیتایی ساخته می‌شوند که یا تحت مالکیت و مدیریت کامیونیتی و یا به صورت شخصی در اختیار کاربر است. این امر اجازه می‌دهد که بسیاری از سرویس‌ها و محصولات بر روی این مجموعه‌های دیتا ساخته شده و به کاربر امکان می‌دهد که به سادگی بین این دپ‌ها انتخاب کند. نتیجه این وضعیت قدرتمند‌شدن و آزادی عمل میلیون‌ها توسعه‌دهنده برای کار در این حوزه خواهد بود.

بلاکچین‌هایی نظیر اتریوم و یا شبکه‌های ذخیره‌سازی مانند IPFS یا Filecoin در مقایسه با پروتکل وب3، متمرکز هستند. بلاکچین‌های فعلی از نظر کارایی و هزینه (کارمزد) مقرون‌به‌صرفه نیستند و هزینه بهبود سرعت و شرایط به‌واسطه الگوریتم‌های توافق جمعی، مکانیزم‌های لایه 2، شاردینگ و غیره می‌تواند به صورت نمایی افزایش یابد.

لایه فراخوانی (Query Layer)

از آنجایی که بلاکچین‌ها و شبکه‌های ذخیره‌سازی، اجزای حیاتی این ساختار استک پروتکل هستند، اطلاعات موجود در آنها به ندرت در قالبی ذخیره می‌شود که بتواند مستقیما توسط اپلیکیشن‌ها استفاده شود. برای این منظور، اپلیکیشن‌ها نیازمند ابزارهایی مانند فیلتر، مرتب‌سازی، جستجو، صفحه‌بندی، دسته‌بندی، الحاق‌کردن و مواردی از این دست پیش از استخراج (fetch) اطلاعات هستند.

امروزه یک سری از تیم‌ها و افراد هستند که برای پر کردن این خلاء اقدام به راه اندازی سرورهای متمرکزی برای ایندکس کردن این اطلاعات نموده‌اند. این سرورها اطلاعات خام را از بلاکچین استخراج کرده و آنها را در دیتابیس‌های خودشان ذخیره و با API های خود این اطلاعات را به بیرون عرضه می‌کنند. در اینجا مسئله اعتماد و اطمینان از صحت دیتا برای استفاده کاربر بروز می‌کند. احتمال دستکاری سهوی و یا عمدی در جهت منافع و استراتژی مالکین این سرورها همیشه وجود دارد.

پروتکل گراف (The Graph) برای رفع این نقیصه عرضه شده است. یک پروتکل غیرمتمرکز که می‌تواند اطلاعات را از بلاکچین و شبکه‌های ذخیره‌سازی، استخراج کند. توسعه‌دهندگان با استفاده از پروتکل گراف می‌توانند از نودهای ایندکس‌کننده در این شبکه‌ها اطلاعات را توسط ابزار کوئری GraphQL فراخوانی و صحت‌سنجی کرده و در اختیار کاربر قرار دهد. این قابلیت به تیم‌ها این امکان را می‌دهد که روی کارایی و بهبود عملکرد دَپ‌های خود متمرکز شوند. ضمن آنکه اعتماد به صحت دیتای فراخوانی‌شده را نیز برای کاربر فراهم می‌کند.

تاریخچه پروتکل گراف

ایده شکل‌دادن پروتکل گراف برای سازندگان آن (یانیف تال، جَنیس پُلمن و براندون رامیرز) از 2017 شروع شد. در آن هنگام آنها با کار بر روی پروتکل اتریوم متوجه فقدان چنین ابزاری برای استخراج و فراخوانی اطلاعات شدند و دریافتند که با این شرایط ساختن دپ‌های متنوع با مشکلاتی همراه خواهد بود.

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

نقشه راه پروتکل گراف

در نقشه راهی که سازندگان این پروتکل برای خود ترسیم کرده‌اند دو موضوع اصلی را مد نظر قرار داده‌اند: 1- اولویت‌ها 2- سرعت

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

اولین نسخه نرم‌افزار فقط یک ایندکسر تنها روی اتریوم و IPFS است. یک نود به شبکه اتریوم ملحق می‌شود تا وقایع (event) شبکه را پردازش کرده، اسکریپت‌های اعمال‌شده توسط کاربر برای تبدیل دیتا را اجرا و ایندکس کرده و آنها را در اختیار ماژول GraphQL قرار دهد. اسکریپت‌ها بر روی یک ماشین مجازی مبتنی بر استک (WASM) اجرا می‌شوند که دارای سرعت پردازش بسیار بالا و دقت و صحت نتایج است.

توسعه‌دهندگان با استفاده از این مکانیزم API خود را بر روی پروتکل گراف توسعه داده و از بسیاری از مشکلات فعلی (مانند block reorg و push updates) رهایی می‌یابند.

اگرچه هر پروژه‌ای می‌تواند نود خود را داشته باشد اما سازندگان گراف معتقدند که با فراهم کردن این خدمت برای تیم‌ها می‌توانند مشکلات توسعه ابزارهای‌شان را بر روی پروتکل گراف کم کنند.

نسخه اولیه‌ای در مارس 2018 برای وایت‌پیپر نوشته شده اما تیم توسعه‌دهنده در حال کار و بهبود آن است. بعد از رونمایی و آغاز به کار پروژه، وایت‌پیپر نیز منتشر می‌شود و در دسترس همه خواهد بود.

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

گراف چگونه کار می‌کند؟

جمع‌آوری و ایندکس‌کردن اطلاعات استخراج‌شده از بلاکچین‌ها در گراف توسط ساب‌گراف مانیفست (subgraph manifest) انجام می‌شود؛ به این ترتیب که برای هر زمینه‌ٔ مورد نیاز، در یک ساب‌گراف، قراردادهای هوشمند و وقایع مرتبط با آن قراردادها (smart-contract events) و نگاشت این وقایع به اطلاعات تعریف شده و در نهایت در دیتابیس گراف ذخیره می‌شود (ایجاد مانیفست).

پس از ایجاد‌شدن آن مانیفست، با استفاده از ابزار GraphQL این تعریف‌ها بر روی پروتکل IPFS ذخیره شده و پس از آن hosted service شروع به ایندکس‌کردن اطلاعات برای آن ساب‌گراف تعریف‌شده می‌نماید. در شکل فوق جریان کار با جزئیات بیشتری نشان داده شده است. مراحل کار و جریان اطلاعات به شرح زیر است:

  • یک دپ اطلاعات را در قالب یک تراکنش اسمارت کانترکت روی بلاکچین (اتریوم) ارسال می‌کند.
  • اسمارت کانترکت در حین پردازش تراکنش، تعدادی رخداد (event) تولید می‌کند.
  • نود گراف به طور پیوسته بلاکچین را برای بلاک‌های جدید ایجادشده و دیتایی که ممکن است مورد نیاز ساب‌گراف باشد، اسکن می‌کند.
  • نود گراف سپس رخدادهای مورد نیاز ساب‌گراف را در این بلاک‌ها پیدا کرده و نگاشت مورد نظر را انجام می‌دهد. این نگاشت توسط ماژول WASM صورت گرفته که وظیفه آن ایجاد یا به‌روزرسانی موجودیت‌هایی است که نود گراف در پاسخ به رخدادهای بلاکچین (اتریوم) ذخیره می‌کند.
  • دپ با اجرای کوئری‌های مورد نظر (از طریق GraphQL) روی نود گراف، ایندکس‌های اطلاعات مذکور را فراخوانی می‌کند. همچنین در نود گراف تبدیل کوئری‌های GraphQL به فرمت مطلوب برای دیتای ذخیره‌شده برای کارایی بهتر انجام می‌شود.
  • دپ دیتای پردازش‌شده را به فرمت خوانا و قابل درک برای کاربر نهایی نشان می‌دهد.
  • این چرخه دائما تکرار می‌گردد.

جزئیات، دستورات و راهنمایی‌های لازم برای چگونگی ایجاد نود، ساب‌گراف‌ها، کوئری‌ها، فراخوانی‌ها و موارد مرتبط را می‌توانید از این لینک و کدهای متن باز آن را از گیت-هاب به‌دست آورید.

گراف بر روی چه شبکه‌هایی پشتیبانی می‌شود؟

پشتیبانی نود گراف بر روی هر زنجیره سازگار با اتریوم (مبتنی بر JSON RPC API) انجام می‌شود. همچنین ماژول hosted service روی شبکه‌های زیر پشتیبانی می‌شود:

  • Ethereum mainnet
  • Kovan
  • Rinkeby
  • Ropsten
  • Goerli
  • PoA-Core
  • xDAI
  • Sokol

کار روی بلاکچین‌های دیگر نیز در دست انجام است. در این لینک می‌توانید آخرین بلاکچین‌های پشتیبانی‌شده را ببینید.

کامیونیتی پروتکل گراف

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



اشتراک گذاری

دیدگاه شما

اولین دیدگاه را شما ارسال نمایید.