تا قبل از دهه ۹۰ استفاده از اینترنت برای مردم عادی به سادگی امکان پذیر نبود، چرا که استفاده از امکانات اینترنت نیاز به دانش خاصی داشت. محیط خط فرمانی(Command Line) و ساختار غیر گرافیکی اینترنت سبب شده بود که کاربران عادی علاقه چندانی به استفاده از اینترنت نداشته باشند. در اوایل دهه ،۹۰ پس از به وجود آمدن مفهوم وب در اینترنت (سال ۱۹۹۳) و پروتکل HTTP که به سادگی امکان به اشتراک گذاشتن مستندات در اینترنت را در اختیار کاربران قرار می داد، روز به روز بر تعداد کاربران اینترنت افزوده شد. از سوی دیگر با اضافه شدن کاربران اینترنت، حجم مستندات نیز روز به روز افزایش یافت.
مسلماً خطوط سابق اینترنتی و سرورهای موجود، توانایی جوابگویی به خیل عظیم کاربران را نداشتند. همچنین با زیاد شدن کاربران و بالا رفتن حجم مستندات و نیز سادگی انتشار اطلاعات در اینترنت، مفاهیم تجاری نیز وارد عرصه اینترنت شدند. شرکت های تجاری نیاز به سرورهایی داشتند که این امکان را به آنها بدهد که به سادگی و با سرعت بتوانند اطلاعات خود را در اختیار مشتریان و کاربران خود قرار دهند. بالطبع این امکان وجود نداشت که هر شرکت یا سازمانی که قصد راه اندازی سایت های اینترنتی را دارد، خود اقدام به راه اندازی سرور خود کند، چرا که با وجود کاربران زیاد این سایت ها و حجم بالای ترافیک، نیاز به اتصال هایی با سرعت های بسیار بالا وجود داشت که مسلما ًحتی در صورتی که این امکان از لحاظ عملی وجود داشته باشد، هزینه بالایی را می طلبید. راه حلی که برای این مشکل به نظر رسید، راه اندازی مراکز خاصی تحت عنوان Data Center یا مراکز داده ای بود. Data Center ها با در اختیار داشتن اتصالات پرسرعت به اینترنت و همچنین در اختیار داشتن سرورهای قوی و متعدد، امکان راه اندازی سرورهای وب را برای عموم مردم ممکن ساختند. شرکت های تجاری و مردم می توانستند با اجاره کردن فضای محدودی در این سرورها، سایت های وب خود را معرض دید عموم قرار دهند. برخی شرکت های بزرگ نیز با توجه به نیاز خود، اقدام به اجاره کردن یک سرور در مرکز داده ای می کردند و آن را از راه دور با ابزارهای خاص کنترل می کردند. اکنون با توجه به رشد سریع اینترنت، روز به روز به تعداد Data Center ها اضافه می شود به طوری که در حال حاضر در اکثر کشورهای پیشرفته این مراکز وجود دارند. تمرکز این مراکز بخصوص در کشور امریکا بسیار زیاد است. دلیل آن ارزان بودن نرخ اتصال به اینترنت و همچنین در دسترس بودن سرعت های بالا می باشد. برخی از این Data Center از طریق خطوط مختلف فیبرنوری، پهنای باندی بیش از ۴Gbps را در اختیار دارند و تعداد سرورهای این Data Center معمولاً بیش از ۱۰۰۰ است که بر اساس مشخصات به متقاضیان اجاره داده می شود. پارامترهای زیادی در قیمت اجاره ماهانه یک سرور تأثیرگذار است که می توان به سرعت CPU، مقدار حافظه RAM و اندازه Hard Disk، حداکثر ترافیکی که ماهانه در اختیار هر سرور قرار می گیرد، سیستم عامل سرور و همچنین سابقه مرکز داده ای بستگی دارد.
● مشخصات یک Data Center
Data Centerهای متفاوتی در نقاط دنیا وجود دارد که با توجه به نیاز و همچنین شرایط منطقه ای طراحی و ساخته شده اند. استاندارد خاصی برای یک Data Center وجود ندارد اما در اینجا سعی شده است به برخی از مشخصات عمومی یک مرکز داده ای اشاره شود. در اختیار داشتن اتصالات مختلف به اینترنت از طریق ISP و ICPهای مختلف: به طور معمول یک Data Center برای اتصال به اینترنت از چندین اتصال مختلف استفاده می کند تا در صورتی که هر یک از اتصالات به دلیلی از کار افتادند، در سرویس دهی مرکز وقفه ای پیش نیاید. برخی از Data Center معروف با بیش از ۱۲ اتصال مختلف به اینترنت متصلند.
▪ وجود سیستم قدرت پشتیبان:
یکی از مهم ترین مسائل در Data Center سرویس دهی بدون وقفه به مشتریان می باشد. با توجه به امکان قطع برق به دلایل مختلف همچون حوادث غیرمترقبه یا جنگ، نیاز به سیستم برق پشتیبان ضروری است. معمولاً Data Centerهای بزرگ از UPS های مخصوصی استفاده می کنند که امکان سرویس دهی به بیش از ۱۰۰ کامپیوتر را دارند. علاوه بر سیستم UPS، ژنراتورهای قوی نیز در مرکز داده ای وجود دارد تا در صورت قطع بلندمدت برق، سرویس دهی بدون وقفه انجام شود.
▪ وجود سرورهای متعدد:
هدف اصلی یک Data Center در اختیار گذاشتن سرورهای وب برای مشتریان است. سرورهای مورد استفاده با توجه به نیاز و امکانات Data Center تعیین می شود. تنها تفاوت مهم، نوع سرورهای مورد استفاده توسط Data Center است. در Data Center ها از دو نوع سرور استفاده می شود: سرورهای Rackmount و یا سرورهای Desktop. با توجه به حجم کم سرورهای Rackmount این امکان برای مرکز داده ای فراهم می شود که در فضایی کوچک، تعداد زیادی سرور قرار گیرد. اما مسئله مهم در این نوع سرورها، قیمت بالای این سرورها نسبت به سرورهای Desktop است. علاوه بر این امکان ارتقای سرورهای Rack Mount فقط به مقدار اندک امکان پذیر است. با توجه به این موضوع اکثر Data Center از سرورهای Desktop استفاده می کنند.
▪ مشخصات فیزیکی:
با توجه به این نکته که اکثر سرورهای وب از نوع Desktop هستند، ساختمان های مراکز داده ای اکثراً با سقف های بلند ساخته می شوند که علاوه بر تهویه هوا، امکان قرار دادن سرورهای بیشتر را می دهند. همچنین درهمه Data Centerها، مسیرهایی برای گذراندن کابل های شبکه و همچنین کابل های برق وجود دارد.
علاوه بر اینها، وجود سیستم تهویه قوی برای پایین نگاه داشتن دمای سرورها ضروری می باشد. البته مشخصاتی همچون وجود سقف کاذب، کف کاذب و همچنین سیستم اطفای حریق در برخی موارد توصیه شده است. مسأله مهم در Data Centerها، امکان استفاده متقاضیان از سرورهای Data Center می باشد که در این بخش به آن می پردازیم.
● چگونگی در اختیار گرفتن یک سرور وب:
پس از اینکه متقاضی سرور، با شرایط قراردادی که Data Center مفاد آن را تنظیم کرده موافقت کرد، یک سرور در اختیار وی گذاشته می شود. بسته به نوع قرارداد سرور می تواند فقط شامل سیستم عامل و یا نرم افزارهای کمکی همچون نرم افزارهای FTP و یا Control Panel سایت باشد. در صورتی که این نرم افزارها بر روی سرور نصب نشده باشد، متقاضی خود باید این نرم افزارها را نصب کند. متقاضی اکثراً از طریق Remote terminalها و یا نرم افزارهای خاصی مانند PCAnywere سرور خود را از راه دور کنترل می کند. پس از نصب و تنظیمات نرم افزاری، سرور آماده سرویس دهی می شود و بر حسب نیاز متقاضی استفاده می شود. نکته قابل توجه، کنترل سرورها توسط متقاضی از راه دور است. با توجه به این موضوع مسئولیت کلیه مسائل و مشکلات سرور از جمله از کار افتادن سرویس ها و نرم افزارها و یا حملات هکری به عهده متقاضی می باشد. البته در شرایط خاص و پرداخت مبالغ معین متقاضی می تواند از خدمات Data Center استفاده کند. هرچند در شرایط بحرانی همچون حملات گسترده که منجر به از کار افتادن همه سرورها شود، معمولاً Data Center برای سرویس دهی به همه سرورها به مشکل برخورد می کنند که در این صورت طبق اولویت های خود اقدام به رفع مشکل می کنند. آیا امکان راه اندازی چنین مرکزی در ایران وجود دارد؟ این سؤالی است که در بخش بعد به آن می پردازم.
● ضرورت راه اندازی Data Center در ایران
شرکت های ایرانی از روش های متفاوتی برای راه اندازی سایت های خود استفاده می کنند. برخی از امکانات ISP های داخلی استفاده می کنند. این روش برخلاف این که امکان پشتیبانی مناسبی را برای مدیر سایت فراهم می کند، اما از سوی دیگر به دلیل پایین بودن پهنای باند ISP های ایرانی و همچنین نامتقارن بودن اتصالات (پایین تر بودن پهنای باند ارسال نسبت به دریافت) و همچنین بالا بودن ترافیک در برخی ساعات خاص، عملاً باعث کندشدن سایت می شود. روش دیگر، استفاده از امکانات شرکت های خارجی است که به روش های مختلفی انجام می پذیرد، این روش ها علاوه بر بالا بردن هزینه ها، مشکلات خاصی را برای سایت های ایرانی به وجود آورده است که از مهمترین آنها می توان به مسائل امنیتی اشاره کرد که برای مدتی بزرگترین دغدغه مدیران سایتهای ایرانی بود. همه راه حل هایی که برای راه اندازی سایت های ایرانی مورد بررسی قرار گرفت، دارای مشکلاتی بودند.
● مزایای راه اندازی Data Center در ایران
▪ پایین آمدن ترافیک Gatewayهای شرکت مخابرات: در حال حاضر بیش از ۳۰ سرور در کشورهای غربی (اکثراً کانادا، امریکا و انگلیس) در اجاره شرکت های ایرانی قرار دارد. ترافیک ماهانه هر سرور به طور متوسط ۴۰۰GB می باشد که در مجموع بیش از ۱۲۰۰۰GB ترافیک به gateway های شبکه Data کشور وارد می کند. با توجه به این که اکثر بازدیدکنندگان این سایت ها ایرانی هستند، در حقیقت کاربر ایرانی، برای بازدید سایت ایرانی، علاوه بر این که باعث بالا رفتن ترافیک در gatewayهای شرکت مخابرات می شود، خود نیز متوسط زمان بیشتری را باید منتظر بماند.
در یک نمونه گیری آماری، تعداد hop ها برای ارتباط با یکی از سرورهای ایرانی واقع در Data Center خارج از کشور، عددی در حدود ۲۶ بوده است. نکته جالب توجه این است که طبق مصوبه شورای عالی انقلاب فرهنگی، کلیه ISPها باید سرویس خود را از شرکت مخابرات و یا شرکت های مورد تأیید مخابرات (ICPها) دریافت کنند که این شرکت ها نیز اکثراً به نوعی به شبکه دیتا متصلند. در نتیجه عملاًهمه ISP ها به نوعی به شبکه دیتای کشور متصل هستند. حال اگر مرکز داده ای در ایران تأسیس شود، علاوه بر اینکه عملاً هیچ ترافیکی به Gateway های دیتا وارد نمی شود، متوسط زمان انتظار برای مشاهده صفحات نیز بسیار کمتر خواهد بود. نکته دیگر این که هنگام به وجود آمدن مشکلات پیش بینی نشده در gateway های اصلی مخابرات حداقل این امکان برای کاربران ایرانی وجود دارد که سایت های فارسی و ایرانی را به راحتی مشاهده کنند چرا که در این صورت عملاً نیازی به اتصال به شبکه اصلی اینترنت وجود ندارد. با توجه به ساختار شبکه انتقال داده شرکت مخابرات و دیتا، می توان حداکثر تخمین ۱۰ HOP برای رسیدن کاربران ایرانی به سایت های ایرانی در نظر گرفت. هر چند در تست هایی بر روی سرورهای وب برخی ISPها که از خدمات شرکت مخابرات استفاده می کردند، به عدد ۸ Hop در هر اتصال به دست آمد که در مقایسه با سرورهای ایرانی واقع در خارج از کشور عدد قابل قبولی است.
NTSC / PAL / MPEG / JPEG
NTSC
برگرفته از حروف اول عبارت National Television system committee است که تعیین کننده مشخصات استانداردهای ویدئو و تلویزیونی در امریکاست. استاندارد NTSC برای رمزگذاری و کدگذاری رنگ و تصویر و سیستم مورد استفاده برای پخش رنگی در ایالات متحده است.
PAL
مشابه NTSC؛ استانداردی مخصوص پخش تلویزیونی برای اروپا، آسیا و اقیانوسیه است.
MPEG
سر نام عبارت Experts Group Moving pictutes است که مجموعه ای از استانداردهای فشرده سازی صدا و تصویر است و انواع مختلفی دارند. هر یک از این انواع با توجه به شرایط و برای کاربرد خاصی طراحی شده اند.
JPEG
سر نام عبارت joint photogtraphic Experts Group است و یک استاندارد برای ذخیره سازی و فشرده سازی تصاویر است. در این روش فشرده سازی مقدار زیادی از اطلاعات قربانی می شوند تا حجم تصویر کاهش یابد. البته اگر فشرده سازی با کیفیت 100 باشد با این که حجم کاهش می یابد اما کیفیت تصویر تغییر محسوسی نمی کند. اما اگر کمتر از این میزان باشد به همان نسبت افت کیفیت خواهیم داشت.
در این مقاله توضیح خواهیم داد که چگونه NAT را در ویندوز 2003 نصب و پیکربندی کنیم.
NAT یا ترجمه آدرس شبکه (Network Address Translation) یکی از پرکاربردترین پروتکلهای ترجمه و نگاشت IP است که در لایه سطح 3 شبکه مدل OSI فعالیت می کند.
عملکرد NAT مانند یک واسط میانی بین شبکه داخلی ( Internal) وشبکه خارجی (External) است،پکتهایی که از یک شبکه خصوصی می آیند توسط NAT مدیریت می شوند وسپس به مقصد مورد تقاضایشان ارسال می شوند.
یک آدرس در اینترنت مشاهده می شود و آدرسهای داخلی در اینترنت نشان داده نمی شوند.یک جدول در Router ساخته می شود که لیستی از آدرسهای محلی (Local) وعمومی (Global) در آن قرار دارد می گیرد و از آن به عنوان یک مرجع برای ترجمه IP ها استفاده می شود.
NAT استاتیک:
یک IP ثبت نشده (Unregistered) به یک IP ثبت شده نگاشت می شود به صورت یک به یک،که هنگامی مفید است که بخواهیم به یک وسیله از خارج شبکه دسترسی پیدا کنیم.
NAT داینامیک:
یک IP ثبت نشده از طریق گروهی از IP های ثبت شده به یک IP ثبت شده نگاشت می شود.
به طور مثال ، یک کامپیوتر با IP ، 192.168.10.121 به اولین IP در دسترس در محدوده 212.156.98.100 تا 212.156.98.150 ترجمه می شود.
Overloading (سربارگذاری) :
یک فرم از NAT داینامیک است که چندین IP ثبت نشده را به یک IP ثبت شده نگاشت می کند ، اما از پورتهای مختلف استفاده می کند.
برای مثال، IP آدرس 192.168.10.121 به 212.56.128.122:Port Number (مثلا 212.56.128.122:1080 ) نگاشت خواهد شد.
Overlapping (همپوشانی) :
هنگامی است که آدرسهای داخل شبکه با آدرسهای بیرون شبکه همپوشانی (Overlap) می شوند-IP آدرسها در یک شبکه دیگر نیز رجیستر شده اند.روتر (Router) می بایست یک جدول جستجو از این آدرسها را نگهداری کند تا بتواند آنها را قطع کند و با IP آدرسهای رجیستر شده یکتا جایگزین کند.
NAT چگونه کار می کند:
یک جدول از اطلاعاتی درباره هر پکت(Packet) که عبور کرده توسط NAT نگهداری می شود.هنگامی که یک کامپیوتر در شبکه تلاش می کند تا به یک وب سایت در اینترنت متصل شود:
• هدر (Header) IP مبدا تغییر کرده و IP آدرس کامپیوتر NAT جایگزین آن می شود.
• IP آدرس مقصد به IP آدرس مخصوص داخلی تغییر می کند بر اساس رکوردهای جدول)
NAT می تواند به عنوان یک فایروال اساسی مورد استفاده قرار گیرد ، مدیر شبکه (Administrator) می تواند پکتهایی که از یک IP معین وارد/خارج می شوند را فیلتر کند و دسترسی به یک پورت بخصوص را اجازه دهد یا منع کند.
نصب NAT :
برای نصب NAT شما می بایست ویزارد Configure your server را از administrative tools اجرا کرده و سپس RRAS/VPN را انتخاب کنید.حال NEXT را کلیک کنید،RRAS اجرا می شود. همانطور که در تصویر زیر می بینید می بایست یک اتصال به اینترنت داشته باشید و نوع آن را مشخص کنید،واینکه آیا می خواهید فایروال را فعال کنید.
Next را کلیک کنید و ادامه دهید،پروسه نصب آغاز شده و سرویسها مجددا راه اندازی می شوند.
پیکربندی NAT :
پیکربندی NAT از طریق Routing and Remote Access انجام می شود ، که از طریق Administrative Tools قابل دسترسی است.
هرکدام از قسمتها را که می خواهید پیکربندی کنید بر روی آن double click کنید ، این کار پنجره properties مربوطه را باز می کند و شما می توانید تنظیمات آن را تغییر دهید مثل Packet filtering و Port blocking و همچنین فعال/غیرفعال کردن یک سری خصوصیات مانند Firewall .
همانگونه که در تصویر زیر مشاهده می کنید خصوصیات مربوط به Remote router نشان داده شده است.
در تب(Tab) مربوط به NAT/Basic Firewall شما می توانید نوع واسط(Interface type) را با توجه به نحوه اتصال به شبکه انتخاب کنید ،که من Public interface connected to the internet را انتخاب کرده ام.
دکمه های Inbound filters و outbound filter به شما تا ترفیک ناشی از IP آدرسها یا packet protocol ها را محدود کنید. مطابق بر این ،پکتهای TCP معینی قبل از اینکه به کامپیوتر کلاینت برسند،متوقف می شوند.بنابراین شبکه را امن تر می کند.
برای مثال هنگامی مفید است که شما بخواهید پکتهایی که از یک IP آدرس که در لیست سیاه نوشته شده است می آیند را رد کنید،یا دسترسی کاربران داخلی را به پورت 21 (FTP) محدود کنید.
برای تنظیمات بیشتر مربوط به Firewall به Tab ،Services and Ports بروید،در این قسمت شما می توانید سرویسهایی را که می خواهید کاربرانتان به آنها دسترسی داشته باشند را انتخاب کنید،همچنین قادر خواهید بود سرویسهای بیشتری را خودتان با مشخص کردن جزییات آن مثل شماره پورت ورودی و خروجی به این لیست اضافه کنید.
لیستی از این سرویسها در شکل بالا قابل مشاهده است.
دکمه Add به شما اجازه میدهد تا یک سرویس جدید ایجاد کنید،با کلیک بر روی Add پنجره ای جلوی شما باز می شود و از شما می خواهد نام سرویس، شماره TCP و UDP و IP آدرس کامپیوتری که میزبان این سرویس است را وارد کنید.
اگر یکی از سرویسهای موجود در لیست فعال نشده باشد آنگاه هر کلاینت که در Domain ویندوز 2003 است نمی تواند به آن سرویس خاص دسترسی یابد.
به عنوان مثال ، اگر تنظیمات مانند شکل بالا باشد و یک کامپیوتر بخواهد به سایت FTP وصل شود نخواه توانست.
همانگونه که مشاهده کردید ،NAT یک خصوصیت مفید است که امنیت را به یک شبکه های کوچک و متوسط اضافه می کند.
درباره نصب این دو نرمافزار باید گفت که نصب اوراکل از SQL Server هنوز بسیار مشکلتر است و کار کردن با آن سختتر؛ و شاید این دلایل باعث میگردد برخی از برنامهنویسان به سمت SQL Server بروند. DBA شدن در بانکاطلاعاتی SQL Server کار سختی نیست. کافی است مدتی با آن نرمافزار کار کرده باشید، و چند ماهی تجربه داشته باشید. ولی DBA شدن حرفهای در اوراکل کار بسیار دشواری است.
با نگاهی به این دو بانک اطلاعاتی میتوان به این نکته رسید که درست است که SQL Server 2005 بسیار کارآمد است و پیشرفتهای زیادی نسبت به نسخه قبلی خود داشته است، اما در برنامههای پیچیده یا سیستمهای ناهمگون، و اگر از پلتفرمهای متفاوت استفاده شود، نمیتواند جوابگوی نیازها باشد و در نتیجه اوراکل گزینه مناسبتری خواهد بود، ولی در صورتی که با برنامههای کوچک و متوسط سروکار دارید، SQL Server میتواند راهحل خوبی باشد.
از لحاظ قیمت (البته نه در ایران که اکثراً قانون کپیرایت را رعایت نمیکنند) قیمت SQL Server کمتر از اوراکل است و سرویسهای ارائه شده توسط SQL Server را میتوان در صورت لزوم خریداری نمود، ولی اوراکل تقریباً شما را از تمام چیزهایی که در بانکهای اطلاعاتی میخواهید، بینیازمینماید؛ البته بهای آن گران است.
مقدمه
بدونشک میتوان گفت که بانکهای اطلاعاتی اوراکل و SQL Server، از مهمترین بانکهای اطلاعاتی امروز به شمار میآیند. این سؤال که کدام یک از این دو از دیگری بهتر است، ممکن است فکر بسیاری از برنامهنویسان و شرکتهای تولید کننده نرمافزار را مشغول کرده باشد.
از طرفی مایکروسافت، به عنوان غول نرمافزاری ادعا میکند که SQL Server از اوراکل سادهتر و بهتر است. اوراکل هم از سوی دیگر میگوید محصول او از خیلی جهات بر SQL Server برتری دارد.
این مقاله سعی دارد به سؤالات شما در مورد تفاوتهای فنی این دو بانک اطلاعاتی تا حدی جواب دهد. در ابتدای این مقاله معماری این دو بانک اطلاعاتی با هم مقایسه میگردد، سپس کامپوننتهای شبکه هر دو بانک اطلاعاتی با یکدیگر مقایسه میشوند.
در این مقاله امکانات مرتبط با کارایی پایگاههای اطلاعاتی (Performance)، ابزار (Utility) و Replication در بانکهای اطلاعاتی بسیار بزرگ یا همان VLDB یا Very Large Data Bases و OLTP یا Online Transaction Processing مورد بررسی قرار خواهند گرفت و ابزارهای جدید SQL Server 2005 که در حقیقت سعی دارد با اوراکل رقابت کند، مورد بررسی قرار خواهند گرفت.
معماری بانک اطلاعاتی شکل 1
در اوراکل هر دیتابیس شامل تمامی امکانات پایگاه رابطه Relational Database ،Instance (پروسههای پایگاه دادههای اوراکل و بافرها، فایلهای تنظیمی مانند config.ora و init.ora، لوگهای بازگشت به حالت قبلی یا Redo Logs؛ SYSTEM Teblespace و دیگر انتخابهای دلخواه است.
در نسخه جدید SQLServer، دیتابیس در واقع به گروهی از اسکیما (Schema)های پایگاه داده گفته میشود که به صورت فیزیکی در فایلها ذخیره میشوند. دیتابیسها به دو صورت تعریف شده از طرف کاربر (user defined) و تعریف شده از طرف سیستم (system defined) تقسیم میشوند.
در SQL Server یک نمونه یا Instance میتواند چندین دیتابیس را پشتیبانی نماید و در هر کامپیوتر چندین Instance میتواند با هم کار کند.
وقتی SQL Server را راهاندازی میکنید، دیتابیسهایی همچون MD یا Msdb database، Model Database (برای پشتیبانی کردن Agentها) و Tempdb Database (پایگاه اطلاعات موقت مانند پایگاه موقت اوراکل OracleTemp Tablespace؛ البته با این تفاوت که در SQL Server خود کاربران میتوانند این پایگاهها را درست کنند، ولی در اوراکل این امکان وجود ندارد)، به صورت پیشفرض ساخته میشوند.
در SQL Server برای اینکه بتوانیم اطلاعات خود را به صورت فیزیکی غیرمتمرکز (Distribute) نگهداریم، هر دیتابیس میتواند از چندین Filegroup پشتیبانی نماید. با این کار میتوان به راحتی از اطلاعات کپی پشتیبان گرفت. همانطور که در شکل 1 مشاهده میکنید، در SQL Server، دیتابیسها در واقع همان کار tabalespaceها در اوراکل را دارند.
اگر به شکل 1 نگاه کنید، میبینید که در هر دو بانک اطلاعاتی، کاتالوگ سیستم وجود دارد. هر پایگاه اطلاعاتی یا دیتابیس در اوراکل یک سیستم کاتالوگ مرکزی یا دیکشنری داده (Data Dictionary) را در قسمت SYSTEM Tablespace اجرا میکند، ولی در SQL Server 2005 هر دیتابیس سیستم کاتالوگ خود را درست میکند.
این سیستم کاتالوگ اطلاعاتی همچون اشیای پایگاه داده (مانندTable ،View و Procedure)، اطلاعات کاربران و دسترسیهای آنها، Constraintsها، User-Defined data type و Snapshot definition را شامل میشود.
البته اطلاعاتی همچون اسامی دیتابیسها، اطلاعات سرور، مدیریت پیغامها و Stored Proceduresهای سیستم درMaster Database وجود دارند.
نکته اینجاست که SQL Server 2005 ،objectهای سیستم در این Master Database قرار نمیگیرند. این آبجکتها در دیتابیسهای مخفی سیستم به نام resource database یا پایگاه اطلاعات منابع سیستم ذخیره میگردند.
در واقع سیستم کاتالوگها در SQL Server 2005 منابعی هستند برای استخراج اطلاعات دیتابیسها و این کاتالوگها را کاربران نیز میتوانند مشاهده کنند.
برای حصول اطمینان از کارایی و سلامت سرور در DMV، SQL Server 2005 یا Dynamic Management Views استفاده میشوند؛ درست شبیه اوراکل که از viewهای $ V برای کنترل کارایی استفاده می کند.
اجزای تنظیم کننده شبکه شکل 2
شکل 2 ساختار اجزای تنظیم کننده شبکه در این بانکهای اطلاعاتی را نشان میدهد. در اوراکل کامپوننتی به نام Oracle Net Service وجود دارد که عامل ارتباطی سرور اوراکل با کلاینتهای آن است.
اوراکل این کار را با استفاده از پروتوکل TNS یا Transparent Network Substare انجام میدهد، اما در SQL Server این کار توسط پروتکلهای شبکه موجود در کلاینت و سرور انجام میگیرد.
البته در SQL Server 2005 فناوری جدیدی به نام SNAC یا SQL Server Native Client، معرفی گردیده که در واقع ترکیبی است از ODBC و OLEDB در یک تابع کتابخانهای. SNAC توانایی پشتیبانی TDS یا Tabular Data Stream و Net Lib را برای پروتکلهای گوناگون در SQL Server دارد.
ساختار فیزیکی و منظقی ذخیره اطلاعات شکل 3
شکل 3 نگاهی مقایسهای دارد به دو بانک اطلاعاتی اوراکل و SQL Server از لحاظ ساختار اطلاعاتی. همان طور که در این شکل میبینید، در SQL Server اندازه صفحات (8kb، (page size است که واحد پایه ورودی/ خروجی به شمار میرود.
هر صفحه فقط متعلق به یک آبجکت، مانند data ،index ،GAM و.. است. SQL Server برای افزایش کارایی این صفحات آنها را در دستههای هشتتایی قرار میدهد که به آن Extent میگوییم. این Extentها میتوانند به چند آبجکت متفاوت تعلق داشته باشند.
هر Extent که تمام صفحاتش آبجکتهای مانند هم داشته باشد Uniform نامیده میشود و به Extentهایی که آبجکتهای یکسانی ندارند، Mixed میگویند.
SQL Server در دیتابیسهای خود از Filegroupها استفاده میکند تا کنترل فضاهای فیزیکی جداول و ایندکسها را در اختیار کامل داشته باشد. این Filegroupها از یک یا چند فایل تشکیل شدهاند و اطلاعات موجود در آن میتواند در تمام فایلهای آن Filegroup ذخیره شود.
با استفاده از Filegroup میتوان جداول بزرگ را در چند فایل ذخیره نمود و از این طریق کارایی ورودی/ خروجی را بالا برد، میتوان عملیات کپی پشتیبان و بازآوری جداول را انجام داد و دادههایی مانند تصویرو فایلهای متنی بزرگ را در فایلهای جدا ذخیره نمود.
برخلاف SQL Server، بانک اطلاعات اوراکل از Tablespaceهایی تشکیل شده است که خود از Data File تشکیل شدهاند. این Data Fileها در واحدهایی به نام Block طبقهبندی میشوند که مدیر بانک اطلاعاتی (DBA) میتواند اندازه آن را وقتی که در حال ساخت دیتابیس است تعیین کند. برخلاف SQL Server، در اوراکل وقتی یک شیء در Tablespace تولید میشود، کاربر میتواند فضای آن را مشخص کند.
مقایسه SQL Server 2005 و Oracle 10g
اگر چه SQL Server 2000 یکی از قویترین بانکهای اطلاعاتی است و خیلی از شرکتها و سازمانهای بزرگ امروزه از آن به عنوان پایگاه دادههای خود استفاده میکنند، چند محدودیت هم دارد. یکی از محدودیتهای SQL Server 2000 در طریقه قفل کردن یا Locking Strategy است.
در MS SQL 2000 مانند اوراکل میتوان دسترسی همزمان به پایگاه را محدود کرد و آن را به اصطلاح قفل نمود. ولی در MS SQL 2000 امکان Deadlock خیلی زیاد است؛ مخصوصاً در CTF یا Correct Transactional Flows.
از طرف دیگر، اعمال تغییر در بانکهای اطلاعاتی به صورت آنلاین یکی دیگر از محدودیتهای آن است. البته با استفاده از DBCC INDEXDEFRAG در SQL Server 2000 میتوان قسمتی از ایندکسها را به صورت آنلاین تغییر داد، ولی نه به صورت کامل.
(البته این مشکل در SQL Server 2005 تا حدی حل شده است). در اوراکل از نسخه 1/8 تا به حال، امکان تغییر و جابهجایی جداول و ایندکسها وجود دارد؛ بدون اینکه به exclusive lock نیاز داشته باشیم. البته ناگفته نماند که نسخههای 2/9 اوراکل در این قسمت دارای اشکالات و باگهایی نیز بودهاند، ولی این اشکالات در نسخه آخر اوارکل برطرف شده است.
در ادامه، ساختار و امکانات هر دو بانکاطلاعاتی Oracle 10g و SQL Server 2005 با یکدیگر مقایسه میگردند.
مدیریت بانک اطلاعاتی
SQL Server 2005 مانند دیگر محصولات مایکروسافت قسمت مدیریت ساده و شکیلی دارد که میتوان با آن به راحتی کار کرد و با استفاده از خط دستور در SQLCMD، ابزار مدیریتی DAC یا Dedicated Administrator Connection را اجرا نمود. همچنین میتوان از قابلیت Policyها برای کاربران و صاحبان بانکهای اطلاعاتی استفاده نمود.
گذشته از پیچیدگیهای موجود در اوراکل، قابلیتهای مدیریتی آن بسیار بیشتر از MS SQL است. اوراکل سیستم رمزدهی بسیار قدرتمندی دارد که از نسخه 7 به بعد همراه آن بوده است. در اوراکل میتوان امکان ارتباط با User و سپس با Schema خاص را به راحتی امکانپذیر نمود.
مثلاً فرض کنید که با کاربر Sys2 به اوراکل متصل هستید و میخواهید روی DB2 Schema کار کنید. کافی است دستور زیر را وارد کنید:
;ALTER SESSION SET CURRENT_SCHEMA=DB2
سیستم LOCKING
یکی از قابلیتهایی که در نسخه جدید SQL Server به آن اضافه شده است، قابلیت SI یا Snapshot Isolation است که در حقیقت قابلیت نسخهبرداری از ردیف (row)های جداول است. با این کار در موقع بروزآوری جداول، امکان انتخاب همزمان اطلاعات آن جدول نیز وجود دارد.
در اوراکل چیزی شبیه این مکانیزم وجود دارد که به آن Oracle Flashback Query میگویند. البته بین این دو مکانیزم تفاوتهایی نیز وجود دارد: اوراکل از Undo Segment برای برگشت به رکورد قبلی استفاده میکند. در صورتی که SQL Server 2005 از TempDB استفاده میکند.
MetaData در اوراکل مانند جداول مدیریت میگردد. در نتیجه در زمان اجرای درخواستها چند DDL یا Data Definition language میتوانند به صورت همزمان به فعالیت مشغول باشند، ولی در SQL Server 2005، فعالیت DLLها مستقیماً روی جداول انجام میپذیرد.
در اوراکل عملیات Locking در DB Block انجام میپذیرد، ولی در SQL Server این کار در هر ردیف جدول انجام میشود. البته مایکروسافت ادعا میکند که این کار باعث افزایش سرعت و کارایی جداول میگردد، ولی وقتی سرعت و کارایی آن را با اوارکل مقایسه میکنیم، میبینیم که هر دو از کارایی یکسانی برخوردارند.
تغییر ساختاری آنلاین
همانطور که قبلاً بحث شد، قبل از نسخه جدید SQL Server 2005 تنها از طریق DBCC Indexdefrag میتوانستیم مثلاً ایندکس را عوض کنیم (البته باید ازExclusive lock استفاده میکردیم)، ولی اکنون این مشکل حل شده است و میتوان همزمان با بازسازی چند DDL را نیز اجرا نمود.
در اوراکل میتوان حتی تمام ساختار جداول و ایندکسها را بدون Exclusive lock تغییرداد. البته برای اتمام عملیات باید از Momentary lock استفاده شود.
Partitioning و Clustering
نسخه جدید SQL Server به تازگی قابلیت جداسازی فیزیکی جداول و ایندکسها را پیدا کرده است. در اوراکل قابلیت Partitioning به چند صورت امکانپذیر است و DBA میتواند بر اساس range ،list و hash این کار را انجام دهد.
حتی میتوان این کار را در دو رده انجام داد. مثلاً میتوانیم جدولی را به دو قسمت براساس list جداسازی کنیم و هر کدام از قسمتها را بر اساس hash دوباره جداسازی نماییم. این قابلیت اوراکل را میتوان در جداولی که رکوردهای زیادی دارند، به کار برد. البته این قابلیت در SQL Server 2005 وجود ندارد، ولی میتوان آن را شبیهسازی نمود.
SQL Server 2005 در Partitioning از قابلیتی مانند اوراکل برخوردار نیست. با این حال راهحل سادهتری را ارائه میکند. در SQL Server 2005 میتوان با استفاده از UDF یا User Defined function این کار را انجام داد.
در مورد Clustering ،SQL Server 2005 پشتیبانی خوبی دارد، ولی طراحی و مدیریت این کار سخت است و کارایی زیادی نیز ندارد. از طرف دیگر اوارکل RAC/GRID را در نسخه 10g ارائه کرده است که میتوان از آن به عنوان امتیازی مسلم در مقابل SQL Server 2005 نام برد. اوراکل همچنین از سیستمی جدید به نام ASM یا Automatic Storage Management استفاده میکند که در Clustering مورد استفاده قرار میگیرد.
ایندکس و Tuning
ساختار مرتبسازی و ایندکس در SQL Server 2005 هنوز بر اساس BTree است و در مقابل indexing قدرتمند در اوراکل ساختاری نسبتاً دارد. اوراکل هم از BTree استفاده میکند، ولی از سیستم indexing به نام Bitmap نیز هم استفاده میکند که در جستوجوی ستونهایی با انتخاب کم بسیار خوب عمل میکند.
اضافه بر این اوراکل از Oracle key based cluster نیز در ایندکس استفاده میکند که کارایی بانکاطلاعاتی در انتخاب رکوردهایی انتخابی از چند جدول مرتبط با هم با ستونهای مشابه را بالا میبرد.
در اواکل و SQL Server هر دو میتوان برای Functionهایی که روی ستونهای جدول است، ایندکس درست کرد و در هر دوی آنها میتوان MV یا Materialized view تهیه نمود. MVها در حقیقت viewهای آماده هستند که میتوان از آن به جای متصل کردن چند جدول استفاده کرد.
SQL Server 2005 در مقایسه با اوراکل 10g، در aggregation و functionها محدودیتهایی دارد. مثلاً در index view نمیتوانیم از Distinct ،NOT و ... استفاده کنیم و امکان مثلاً Sum کردن نیست.
کپی پشتیبان و بازیابی اطلاعات
همانطور که قبلاً نیز اشاره شد در نسخههای قبلی SQL Server نمیتوانستیم به صورت آنلاین از اطلاعاتمان کپی بگیریم، ولی در نسخه جدید SQL Server 2005 مدیران بانکهای اطلاعاتی میتوانند به راحتی عملیات کپی و بازیابی اطلاعات را به صورت آنلاین انجام دهند.
در حالی که سرور در حال کار کردن است. اوراکل نیز ساختاری شبیه این را با استفاده از Tablespaceها انجام میدهد. البته در Tablespaceهای اوراکل نمیتوان اطلاعات قبلی را در Tablespace بازیابی نمود و از آنجایی که در هر Tablespace یک Metadata وجود دارد، این Tablespaceها نمیتوانند کامل باشند.
البته اوراکل دارای ابزار بازیابی اطلاعات کاملی است و میتواند با کمک گرفتن از Redo logها این کار را آسان کند.
اوراکل با استفاده از logical dumpهایی که میسازد، میتواند مشکلی که باعث نیاز به بازیابی میشود را شناسایی کند. البته SQL Server هم ابزارهایی مانند DBCC PAGE و DBCC LOG دارد که مانند ابزارهای اوراکل عمل میکند.
انتقال و ورود اطلاعات (Export and Import)
یکی از امکانات جدید Oracle 10 g برای انتقال یا صادر کردن اطلاعات به data pump معروف است. data pump ساختاری binary دارد. اوراکل این کار را توسط دو گزینه که برای صادر و دو گزینه برای وارد کردن اطلاعات دارد، انجام می دهد. این دو گزینه exp/data و imp/data هستند.
اضافه بر این، در اوراکل ابزار sqlldr نیز وجود دارد که اختصاصاً برای import کردن اطلاعات متنی به کار میرود. از طرف دیگر SQL Server2005 دارای دو گزینه برای export و import است؛ به نامهای bcp و Bcp .DTS میتواند اطلاعات را (به صورت متنی) import یا export کند و حتی میتواند اطلاعات را به فرمتی ذخیره کند که بانکهای اطلاعاتی دیگر نیز بتوانند از آن استفاده کنند.
DTS نیز یکی از پر سرعتترین ابزارهای انتقال اطلاعات در SQL Server است که در مقایسه با اوراکل بسیار سریعتر و کار با آن آسانتر میباشد. اوراکل نیز در نسخه جدید خود از ابزار WisdomForce FastReader استفاده میکند که میتواند با سرعت زیاد کار export و import را انجام دهد و اطلاعات را با فرمت متنی آماده سازد. از این ابزار میتوان برای انتقال اطلاعات بین اوراکل و بانکهای اطلاعاتی دیگر مانند MS SQL ،2DB ،Sybase استفاده نمود.
امکانات موجود برای برنامهنویسها
یکی از امکاناتی که اوراکل در اختیار برنامهنویسان قرار میدهد، امکان استفاده از Exception Handling است که توسط PL/SQL قابل دسترسی است. در SQL Server 2005 نیز این امکان توسط Transcat-SQL مهیا شده است.
در مبحث Queuing ،SQL Server 2005 ابزاری به نام Server Broker دارد که میتواند امکان استفاده از Queing را برای برنامهنویسان فراهم سازد، اما در اوراکل ابزاری قوی به نام Oracle Advanced Queuing وجود دارد که کار Queing را به صورت کامل انجام میدهد.
SQL Server 2005 میتواند کمک بیشتری به برنامهنویسان بکند؛ زیرا از NET. استفاده میکند، ولی بر خلاف آن، هسته اوراکل از جاوا درست شده است و مستقیماً فقط میتواند توسط PL/SQL اجرا شود. در نتیجه در SQL Server 2005 میتوانیم به صورت مستقل از دستورات NET. استفاده کنیم.
از طرف دیگر از آنجا که جاوا هسته اوراکل را تشکیل میدهد، نگهداری آبجکتهای جاوای درون اوراکل درست مانند نگهداری یک سرور جاوا میباشد، ولی SQL Server 2005 تنها در برخی قسمتها مانند اشکالیابی از NET trigger. استفاده میکند و حجم سنگینی ندارد.
امکانات ویژه SQL Server 2005
- SQL Server 2005 :Replication ابزار Replication بسیار قدرتمندی دارد که میتواند از اوراکل به SQL Server یا بلعکس Replication انجام دهد.
- Notification: در SQL Server 2005 سرویس Notification یکی از سرویسهایی است که میتوان با آن در Alertهایی مانند Stock Market استفاده نمود.
- Reporting Services: یکی از امتیازات SQL Server 2005 در مقایسه با اوراکل، داشتن سرویس گزارشهای داخلی است که با استفاده از آن میتوان انواع گزارشها را استخراج نمود. البته اوراکل هم دارای Oracle IAS است که کار گزارشگیری را حتی قویتر از SQL Server انجام میدهد، ولی مانند SQL Server 2005 در داخل بانک اطلاعاتی نیست و به صورت خارجی عمل میکند. همچنین خرید آن نیز هزینه زیادی خواهد داشت.
- Identity: در اوراکل نمیتوان به صورت خودکار کلید اصلی یا Primary key را تعریف کرد. در صورتی در SQL Server2005 این امکان وجود دارد. البته اوراکل دارای Sequence است، ولی نگهداری این Sequenceها توسط مدیر سیستم کار آسانی نیست.
امکانات ویژه Oracle 10g
- Auditing: در اوراکل این کار با استفاده از پارامتر جدید audit_trail=db_extended, init.ora انجام میپذیرد که میتوان از تمامی جستوجوها به همراه مقادیر ورودی هر یک از آنها اطلاعات ذخیره کرد. این کار در SQL Server2005 تنها با استفاده از Trace امکانپذیر است. آن هم نمیتواند مقادیر Bind شده اطلاعات را نشان دهد و استفاده از آن نیز میتواند کارایی سرور را تا حد زیادی پایین بیاورد.
- Logminer: در اوراکل ابزاری به نام Logminer وجود دارد که میتواند تاریخچه تمامی DML یا DDLهای کل پایگاه اطلاعاتی را به ما بدهد. SQL Server2005 این ابزار را ندارد، ولی میتوان از Lumigent Log Explorer برای مشاهده برخی از این تاریخچه استفاده کرد.
- Flashback Query: این امکان در نسخه جدید Oracle 10g عرضه گردید و با کمک آن میتوان اطلاعات از دست رفته را بازیابی کرد.
- Rollback Statistics: در اوراکل اگر عملیاتی سنگین در وسط کار انجام نپذیرد، میتوان آن را Rollback کرد. Rollback statistics می تواند به شما بگوید چه زمانی طول خواهد کشید که Rollback انجام شود و عملیات پایان پذیرد. کافی است جستوجوی زیر را به کار ببرید:
V$FAST_START_TRANSACTIONS
این قابلیت در SQL Server2005 وجود ندارد.
- AWR یا Automatic Workload Repository تصور کنید که بانک اطلاعاتی شما بسیار حجیم است، ترافیک زیادی دارد و جوابگویی آن به کلاینتها کُند شده است. با استفاده از AWR در Oracle 10g میتوانیم مشکل را بررسی کنیم و تشخیص دهیم چه مشکلی در سیستم وجود دارد. اوراکل این کار را با استفاده از درست کردن Viewهای زیر انجام میدهد.
v$sysmetric_history for v$sysmetric
v$active_session_history for v$active_session
v$waitclassmetric_history for v$waitclassmetric
v$session_wait_history for v$session_wait
v$servicemetric_history for v$servicemetric
- پشتیبانی از OO یا Oracle :Object Oriented قابلیتهای شیءگرا (object oriented) دارد. برای همین، این بانک اطلاعاتی را میتوان بانک اطلاعاتی رابطهای شیءگرا نیز نامید. با استفاده از این قابلیت، برنامهنویسان میتوانند Class و Objectهای برنامه شیءگرای خود را مستقیماً به جداول بانک اطلاعاتی Map کنند.
۱. جستجویی پربار داشته باشیدنکته ی نخست برای بدست آوردن بهترین نتیجه ها این است که بدانید شما بدنبال چه چیزی هستید. شاید شما بدنبال یک کلمه یا یک جمله باشید که در سایت مقصد به کار نرفته باشد. اگر نتیجه ی دلخواه حاصل نشد باید از نزدیکترین کلمه ها و جمله ها به مورد جستجو استفاده کرد. مانند این مثال : شما بدنبال توضیحاتی در مورد تلفون های بی سیم میگردید با جستجوی عبارت “comparative review of wireless phones” این امکان وجود دارد که با این ترکیب کلمه ها به هدف نرسید، پس از عبارت هایی مثل SmartPhone, Audiovox, Motorola استفاده میکنیم. خواهید دید که نتیجه ها خیلی بیشتر به هدف شما نزدیک شده اند.
۲. استفاده از نشان کوتیشن (نقل قول)
اگر شما عبارت مورد جستجو را در بین علامت های کوتیشن یا همان نقل قول (”") قرار دهید موتور جستجوگر فقط به دنبال عین همان کلمه میگردد. این یکی از تکنیک های کاربردی و مفید است که در بین کاربران جستجوگر وب زیاد استفاده نمیشود. با این مثال شما بیشتر با این ترفند آشنا خواهید شد، اگر شما به دنبال دو کلمه ی George و Washington با بیش از ۸ میلیون نتیجه روبرو خواهید شد در صورتی که اگر همین عبارت ها را در کوتیشن قرار دهید و دوباره جستجو کنید چیزی نزدیک به ۳ میلیون نتیجه را خواهید یافت. این نکته خیلی مهم است که شما از عبات های بازدارنده ی گوگل استفاده کنید -عبارت هایی که گوگل به صورت پیش فرض آن ها را نادیده میگیرد- مانند the و of و and یا معادل های فارسی آن. با استفاده از این کلمات در عبارت خود به نتایج بهتری دست پیدا میکنید.
۳. علامت های مثبت (+) و منفی (-)
از علامت های مثبت و منفی استفاده کنید. استفاده از علامت مثبت قبل از مورد جستجو در اصطلاح این معنی را میدهد که این مورد باید حتما در جستجو قرار گیرد. در نقطه ی مقابل با گذاشتن علامت منفی در مقابل کلمه مواردی که حاوی کلمه ی مورد نظر باشند از لیست نتیجه ها حذف خواهند شد. پس با استفاده از علامت + به گوگل خواهیم فهماند که ارزش این کلمه در جستجو برای ما مهم است و حتما باید حضور داشته باشد و با علامت منفی به گوگل خواهیم گفت که نتایج حاوی این کلمه را نشان نده.
۴. استفاده از کارکترهای عمومی
شما میتوانید از کاراکتر ستاره (*) استفاده کنید. بله! شما میتوانید از این کاراکتر در هر جایی از عبارت مورد جستجو استفاده کنید تا هر عبارت ترکیبی با آن کلمه را دنتایج جستجو مشاهده کنید. به عنوان مثال شما به دنبال کلمه ی Google میگردید، اگر این کلمه را به صورت *Google به کار ببرید میبینید نه تنها نتایجی با کلمه ی گوگل پیدا خواهد شد بلکه نتایجی شامل کلمه ی Ogoogle و Btgoogle و Googlenotic و … هم نمایان میشود.
۵. دستور site:
شما با استفاده از این دستور میتوانید جستجو را به یک یا تعدادی از سایتها محدود کنید. اگر شما عبارت site:weburger.net google را در کادر متن گوگل وارد کنید نتایج جستجو شامل صفحات حاوی کلمه ی google از سایت weburger.net خواهند بود. شما میتوانید با این دستور نتایج خود را از تعدادی سایت بدست آورید یا حتی تعدادی سایت را از نتایج حذف کنید. دستوری که کلمه ی گوگل را در سایت هایی با دامین co.uk جستجو میکند به این شکل است، site:co.uk google و به همین شکل قادر به حذف نتایج از سایت های co.uk نیز هستید مانند : google -site:co.uk
۶. استفاده از عملگرها
از عملگرها استفاده کنید. گوگل به جز site: از عملگرهای دیگری نیز استفاده میکند. filetype: که پسوند فایل درخواستی را مشخص میکنید مانند pdf و xls. از دستورات دیگری هم میتوان استفاده کرد مانند intext: و allintext: و intitle: و allintitle: و inurl: و allinurl: که محدوده ی جستجوی عبارت را برای گوگل مشخص میکند. author: در گروه های گوگل و location: در اخبار گوگل قابل استفاده هستند. گوگل این توانایی را دارد که “یای منطقی” یا همان OR را که با حرفهای بزرگ نوشته شده است متوجه شود به عنوان مثال شما میتوانید به دنبال یک بار در Oralando OR Miami بگردید. راه های کوتاهتر استفاده از OR استفاده کردن از کاراکترهای | و ~ است. قدرت در دستان شماست، کافیست کمی تایپ کنید و زبان موتور جستجو را یاد بگیرید تا بتوانید با او صحبت کنید!
۷. استفاده از صفحه ی جستجوی پیشرفته
خوشبختانه احتیاجی به حفظ کردن تمام ترفندهای بالا نیست، از این به بعد شما موارد گوناگونی را در یک صفحه و یکجا دارید. کافیست از صفحه ی جستجوی پیشرفته یا همان Advanced Search استفاده کنید که از صفحه ی اصلی گوگل هم قابل دسترسی است.
۸. گروه های گوگل
گوگل یک آرشیو بسیار بزرگ از کاربران و اخبار دارد که بعضی از آنها به بیش از ۲۰ سال قبل بازمیگردند! برای استفاده از این آرشیو تنها باید بر روی لینک گروه ها یا Groups کلیک کنید تا گوگل در آرشیو بزرگ خود به جستجوی عبارت موردنظر شما بپردازد. در بسیاری از موارد نتایج ارائه شده بسیار از نزدیک تر از نتایج جستجو در وب است. خود من به شخصه بسیار استفاده میکنم و بارها پیش آمده که نتیجه ی دلخواه را بر روی کل اینترنت فقط در گروه های گوگل پیدا کردم.
۹. قابلیت های جدید جستجوی پیشرفته
گوگل از قسمتهای زیادی برای جستجوی بهتر شما استفاده میکند مثل Google Local و Google News که اخبار روزنامه ها و سایر نشریات را در آن جمع آوری میکنند، Froogle برای جستجوی وسیله ها و بهترین قیمت ها، Dictionary شما ممکن است به دنبال موضوعی بگردید و در اسپل کردن آن مشکل داشته باشید گوگل با درج پیغامی با مضمون “Did you really mean …?” به شما کمک میکند تا با املای درست به جستجو بپردازید، Images راهی آسان و سریع برای رسیدن به عکسهای دلخواه شماست، سرویس جالب و مفید گوگل که متاسفانه در ایران کارایی ندارد سرویس SMS گوگل است که شما هر موردی را دوست دارید جستجو کنید برای گوگل میفرستید و گوگل نتایج را برای شما SMS میکند.
۱۰. از کاراکترهای درست استفاده کنید
اگر شما به دنبال عبارتی میگردید که با زبانی غیر از انگلیسی نوشته شده باید از کاراکترهای درست استفاده نمایید.