PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : ساخت دیکشنری آنلاین



arix
September 21st, 2010, 09:58
با سلام

من می خواهم یک دیکشنری آنلاین داشته باشم.تا اونجایی که دیدم اسکریپت درست و حسابی براش نوشته نشده.بعد کلی گشتن یک دیتابیس xml پیدا کردم که ظاهرا بعد hfarsi بابیلون کامل ترین دیتابیس دیکشنری انگلیسی به فارسی است.حالا می خواهم اسکریپت دیکشنری رو بنویسم.ولی دو تا مشکل اساسی دارم:

1- این دیتابیس مال یک نرم افزار کامپیوتر هست.حالا که می خواهم در سایتم ازش استفاده کنم آیا لازم است که دیتابیس mysql داشته باشم یا همین جوری بدون دیتابیس هم می شود؟مثلا برنامه جای خواندن فایل از دیتابیس mysql از همون فایلی که در همون پوشه هست به طور مستقیم اطلاعات را بخواند

2- حجم این فایل 139 مگ است:-o.با کامپیوتر خودم که بازش می کنم یکی در میون هنگ می کنه و 5 دقیقه هم طول می کشه تا بیارتش.حالا من اینو روی سرور بریزم که سرور منفجر می شه.چی کار کنم اینو؟بالاخره بقیه دیکشنری های آنلاین یک کاری کرده اند که به این مشکل بر نخوردند دیگه.

مرسی از راهنمایی تون

TukaNet
September 21st, 2010, 10:16
با وجود دیکشنری گوگل به نظرتون کار معقولی به نظر میاد ؟!

اما اگر قصد اجرا داشتید باید بدید یکی از دوستان برنامه نویس مثل آقای نجیمی ، skrsoft ، hello و .. که در همین فرم هستند کار برنامه نویسی رو انجام بدند.
در مورد دیتابیس هم اگر به صورت اس کیو ال در بیاد دیگه این فشار به سرور وارد نمیشه ولی در نظر داشته باشید که در هر حال برای این کار به یک سرور در
رده متوسط تا قوی هم نیاز خواهید داشت .

arix
September 21st, 2010, 10:39
مرسی از پاسخ خیلی سریعتون

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

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

حالا با این حساب اگر من 128 مگ وی دی اس ام رو بهش اختصاص بدهم کافیه؟

Rezash
September 21st, 2010, 10:51
اگر فايلتون يك xml استاندارد باشه ميشه به تيكه هاي كوچكتر تقسيمش كرد مثلا حرف a در يك فايل حرف b در يك فايل و ...
(با يك برنامه ساده ميشه اينكار رو كرد)
بعد موقع چك كردن با توجه به حرف اول كلمه اي كه وارد شده ميشه فهميد بايد از كدوم فايل اسفاده كرد.
درسته كه ممكنه 32 فايل ديتابيس داشته باشيم ولي در عوض حجم ما به 4.34375 مگ براي هر فايل تبديل ميشه و اين يعني جستجوي سريعتر و راحت تر
البته اين فقط يك روش پيش نهادي بود.
شخصا ترجيح ميدم از ديتابيس mysql استفاده كنم چون بدون نياز به برنامه نويسي پيشرفته اختيارات زيادي از جمله كلمات مشابه و ... داره و بعلاوه ميشه يك سيستم آمار گيري يا ... انعطاف پذير رو براحتي براش پياده كرد
كه باز هم با يك برنامه ميشه فايل ديتابيسش رو تبديل كرد و در mysql ذخيره و پياده سازي كرد.
اصولا در مورد برنامه ها با ديتابيس حجيم (البته 129 مگ خيلي حجيم به حساب نمياد!) نياز به يك طراحي منطقي و هوشمندانه هست تا علاوه بر سرعت بالا تغييرات و كارايي نيز در بهترين حالت باشد.
سپاس

arix
September 21st, 2010, 11:13
مرسی hello

شما همیشه خیلی خوب پاسخ می دهید.ایده خیلی جالبیه.فایل رو که نگاه کردم دیدم می شه هر حرف رو جدا جدا کرد.حالا باید برم باهاش کلنجار برم ببینم به کجا می رسم.فقط چند تا سوال؟

1- با چه نرم افزاری می شود این فایل رو روی sql پیاده سازی کرد؟
2- با این حساب در سایت باید 26 تا دیتابیس mysql تولید کنم؟خب من که محدودیتی ندارم اگر مثلا برحسب دو حرف اول هر کلمه جداسازی کنم و 26*26=678 تا دیتابیس بسازم بهتر نیست؟یک برنامه بنویسم که دو حرف اول کلمه وارد شده رو تشخیص بده و فایل مربوطه رو پیدا کنه.بعدش کلمه رو تو فایل سرچ کنه و معانی و ... رو استخراج کنه؟یک شرط هم تعیین کنم که اگر کلمه وارد شده یک حرفی بود خودش رو نشون بده؟
3- اگر 128 مگ از رم وی دی اس رو به این قسمت سایت اختصاص بدهم کافیه؟

ارادتمند

Rezash
September 21st, 2010, 11:39
خواهش مي كنم.
جدا سازي براي هر فايل رو گفتم براي ديتابيس اگر هم قرار باشد جدا سازي بشه نياز به ايجاد 32 ديتابيس نداريم ميشه يك ديتابيس و مثلا 32 جدول
ميشه به قسمت هاي كوچكتر هم تقسيم بندي كرد ولي فكر نكنم نيازي باشه
به علاوه mysql قدرت زيادي داره و فكر نمي كنم به اتين راحتي ها كم بياره...
128 مگ رم رو نميشه اينجوري تايين كرد، يك جستجوي ساده اونقدر ها رم نمي بره اين بستگي داره چقدر يوزر آنلاين باشند و چقدر از سيستم شما استفاده كنند.

skrsoft
September 21st, 2010, 12:08
ايده آقاي شاهرخيان (Hello) خيلي عاليه
اين تكنيك يه جور حالت ايندكس گذاري هست
كه توي سرعت جستجو خيلي تاثير داره (حدود 26 برابر)
اينجوري فشار روي سرورم كمتر ميشه

همونطور كه آقاي شاهرخيان فرمودند
نميشه مقدار دقيق رم رو گفت
128 مگ براي شروع كافيه
ولي همه چيز بستگي به تعداد query هايي كه گرفته ميشه داره (استفاده از سيستم)

در ضمت اين حجم ديتابيسم خيلي زياد نيست
بعضي از فرومهاي ويبالتين حجم ديتابيسشون چندين گيگ هست
ولي با سرعت و كيفيت قابل قبولي دارند كار مي كنند
بستگي به طراحي ديتابيس و بهينه بودن query ها داره

موفق باشيد :53:

mdf092
September 21st, 2010, 14:18
با وجود دیکشنری گوگل به نظرتون کار معقولی به نظر میاد ؟!

اما اگر قصد اجرا داشتید باید بدید یکی از دوستان برنامه نویس مثل آقای نجیمی ، skrsoft ، hello و .. که در همین فرم هستند کار برنامه نویسی رو انجام بدند.
در مورد دیتابیس هم اگر به صورت اس کیو ال در بیاد دیگه این فشار به سرور وارد نمیشه ولی در نظر داشته باشید که در هر حال برای این کار به یک سرور در
رده متوسط تا قوی هم نیاز خواهید داشت .

این همه شبکه اجتماعی هست و نرم افزارهای مشابه
اگر قرار باشه که هر کدوم این رو بگن که دیگه پیشرفتی صورت نمیگیره

nasa_de
September 21st, 2010, 20:46
بنده هم یک پیشنهاد دارم و اون هم اینه که فعلا از API های خود گوگل استفاده کنید برای اسن کار.
کثلا من با این API ها نقشه گوگل رو در سایتم نصب کردم.
داکیومنت های کاملی داره و میتونید از کد های اماده اون استفاده کنه و به نوعی Customize کنید.
یک نمونه استفاده از این API در فروم وی بی اسکین هدر جستجوی گوگل هست.
API های گوگل کاربرد وسیعی میتونه داشته باشه که امیدوارم وقت بشه و بتونم یک نمونه هایی رو خدمت دوستان عرض کنم.

arix
September 21st, 2010, 21:16
بنده هم یک پیشنهاد دارم و اون هم اینه که فعلا از API های خود گوگل استفاده کنید برای اسن کار.
کثلا من با این API ها نقشه گوگل رو در سایتم نصب کردم.
داکیومنت های کاملی داره و میتونید از کد های اماده اون استفاده کنه و به نوعی Customize کنید.
یک نمونه استفاده از این API در فروم وی بی اسکین هدر جستجوی گوگل هست.
API های گوگل کاربرد وسیعی میتونه داشته باشه که امیدوارم وقت بشه و بتونم یک نمونه هایی رو خدمت دوستان عرض کنم.
مرسی از پاسختون.من کاملا متوجه منظورتون نشدم.یعنی سایت من یک پل ارتباطی میان کاربر و دیکشنری گوگل باشه؟به این صورت که وقتی کاربر کلمه ای رو در سایت من تایپ می کند سایت من کلمه مربوطه رو برای گوگل بفرستد و نتیجه رو از گوگل گرفته و در سایت نمایش دهد؟
خب اگر این امکان هست می شود سایت را همزمان به چند تا سایت دیگر متصل کرد.یعنی مثلا وقتی کاربر کلمه book را تایپ می کند سایت من به سایت های گوگل ، نارسیس ، لانگمن و ... متصل شود و تمام نتایج این سایت ها رو در کنار هم نشان دهد؟

nasa_de
September 21st, 2010, 21:19
در واقع جستجوی معانی کلمه ها در گوگل انجام میشه اما نتیجه در سایت شما نشان داده میشه/
برای این منظور و استفاده از نارسیس و.... باید اونها هم api های خودشون رو داشه باشن .

arix
September 21st, 2010, 21:25
در واقع جستجوی معانی کلمه ها در گوگل انجام میشه اما نتیجه در سایت شما نشان داده میشه/
برای این منظور و استفاده از نارسیس و.... باید اونها هم api های خودشون رو داشه باشن .

ممکنه یک مقدار در مورد api توضیح بدهید؟

nasa_de
September 21st, 2010, 21:28
البته با p| ایران نمیتونید وارد بشید :

Developer's Guide - Google AJAX Language API - Google Code (http://code.google.com/apis/ajaxlanguage/documentation/)

Google AJAX Language API - Google Code (http://code.google.com/apis/ajaxlanguage/)

sm1989
October 25th, 2011, 11:53
سلام
من میخام ار قابلیت تشخیص گفتار گوگل کروم برای ایجاد دیکشنری تحت وب استفاده کنم .کسی میتونه راهنماییم کنه؟:-?

smail_f
December 5th, 2012, 00:47
بحث جالبی بود لذت بردم موفق باشید