نمایش نتایج 1 تا 22 از 22

نام تاپیک: کدوم سریع تره؟؟

  1. #1

    کدوم سریع تره؟؟

    سلام

    یه سری اطلاعات دارم (از نوع text) که حجم خیلی بالایی دارن چیزی در حدود 1 گیگ .
    می خواستم بپرسم اینا رو داخل پایگاه داده بزارم سریعتر بهشون می شه دسترسی پیدا کرد یا تو یه فایل؟؟؟

    پیشاپیش ممنونم

  2. #2
    مسلماً دیتابیس منظمتر و سریعتره
    اما چطور میخواید این 1gb رو import کنید تو دیتابیس؟

  3. #3
    کاربر دائمی آواتار peyman1987
    تاریخ عضویت
    مهر 1385
    محل زندگی
    strHome$
    پست
    270
    یک گیگ اطلاعات متنی میدونین چه حجمی از اطلاعاته!!!!!!!!؟؟؟؟؟؟؟؟؟؟
    فکر کنم یه دو روزی برای ذخیره و دو روز هم برای بازیابیش نیاز دارین.
    در هر صورت کار با همچین حجمی از اطلاعات خیلی سخته. اگه من جای شما بودم از فایل استفاده میکردم. چون حجم دیتابیسم خیلی بالا میره.

  4. #4
    سلام

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

    (یک گیگا بایت تکست )

  5. #5
    کاربر دائمی آواتار musiox
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    پشت کامپیوتر
    پست
    269
    بازیابی اطلاعات خیلی مهمه . اینکه این اطلاعات وارد شده با هم ارتباط دارن یا نه ؟ اصلا جدول بندی ذخیرشون لازمه یا نه ؟ اگه یه کم اطلاعاتتو دقیقتر بدی شاید بشه یه تصمیمی گرفت.

  6. #6
    سلام
    ببخشید که کم توضیح دادم دیروز خواستم کاملشون کنم اما کارتم تموم شد.

    اطلاعاتم آدرس سایت های مختلف هستش. که هر کدوم از آدرس ها در خط جدا گانه ای است
    منظورم از سرعت دسترسی کمتر اشغال شدن پردازش گر هستش.
    اما چطور میخواید این 1gb رو import کنید تو دیتابیس؟
    به مرور یعنی تو هر روز چند تا از این اطلاعات اضافه می شن .

    اطلاعاتتون آپدیت میشن یا نه حذف میشن یا نه
    حذف و اضافه می شن ولی تغییر نمی کنند.

    اضافه شدن به اطلاعات در انتها است یا در بین اطلاعات دیگه ؟
    در انتها

    سورت شدن براتون استفاده ای داره یا نه ؟
    نه

    به چه سبکی الان تو فایل تکست ذخیره شدن ؟
    در هم ،ترتیبی ندارن

    اینکه این اطلاعات وارد شده با هم ارتباط دارن یا نه ؟
    نه ارتباطی ندارن

    اصلا جدول بندی ذخیرشون لازمه یا نه ؟
    نه ولی می خوام هر وقت خواستم از ابتدا تا آخرش در دسترسم باشه

    خیــــــــــــــــــــلی ممنونم .

  7. #7
    سلام بر دوست عزیز :
    خوب اینطور که فرمودید اگر فقط می خواهید از ابتدا تا انتهای فایل رو بتونید بخونید و با توجه به مواردی که پاسخ دادید بعید می دونم دیتابیس لازم داشته باشید و فقط یک پیمایش ترتیبی ساده کار شما رو راه می اندازه فقط چند تا مطلب دیگه یادم رفته بود بگم ..شما جستجو هم می خواهی انجام بدی؟ ... و مطلب بعدی اینه که آیا حذف کردن زیاد انجام میشه یا نه ...می دونید چون اگر زیاد حذف کنید فایل شما بیخود بزرگ میشه(fragmentation) و هر چند یک بار باید کلی وقت بذارید (البته شما که نه کامپیوترتون ) و مثلا از انتها شروع کنید به شیف دادن سطر ها تا فضاهای خالی پر بشن ......

    همونطور که گفتم اگر فقط خوندن فایل بصورت ترتیبی اهمیت داره همین فایل متنی کفایت میکنه
    (با چند خط کد C++‎ کارتون با سرعت خوبی انجام میشه)
    موفق باشید

  8. #8
    سلام
    نه نیازی به جستجو نیست.

    دو تا سوال؟
    1.یعنی فایل زود تر از دیتابیس باز می شه؟ با وجود این همه اطلاعات .
    2.مگه دیتابیس اطلاعاتش رو فشرده نمی کنه؟؟


    بازم ممنونم

  9. #9
    کاربر دائمی آواتار musiox
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    پشت کامپیوتر
    پست
    269
    بالاخره این حجم اطلاعات فضای حافظه رو بیش از حد اشغال می کنه . اگه توی چند تا فایل براساس یه مولفه ای که داری تقسیمشون کنی سرعتت بیشتر میشه .

  10. #10
    ببینید دوستان
    این همه اصلاعات تکست کنار هم، مسلماً نیاز به بازیابی داره
    بنظر من فقط 2 راه داره
    اگر اصلاعات به هم ربطی ندارن، و فقط باید نمایش داده بشن، که هیچ
    اما اگه نیاز به sort و search و edit و ... دارن، عاقلانه ترین روش اینه که بریزی تو db
    حالا اینکه چطور بریزی تو db:
    اگه با حجمش مشکل داری، میتونه یه تابع php بنویسی که فایل اصلی رو بخونه و همشو به تعداد وحشتناکی query تبدیل کنه و با یه حلقه for تهشو هم بیاری

  11. #11
    حذف و اضافه می شن ولی تغییر نمی کنند.
    نه نیازی به جستجو نیست.
    من متوجه نشدم چطور بدون جستجو حذف میکنی! مگر لازم نیست رکوردی که میخواد حذف بشه رو پیدا کنی؟

  12. #12
    نه نیازی نیست . از اولیش تا آخریش رو دونه دونه بازیابی می کنم و اگه اونطوری که می خوام نباشه پاکش می کنم .
    و اگه اونطوری که می خوام باشه که کارامو باهاش انجام می دم و بدون هیچ تغییری می رم سراغ بعدی.

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

  13. #13
    کاربر دائمی آواتار musiox
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    پشت کامپیوتر
    پست
    269
    اگه از پوینتر استفاده کنی دیگه فضای خالی تو فایلت پیدا نمیشه و همه کارات هم راحتتر میشه .
    منظورم اینه که یه فایل هم برای ذخیره کردن پوینترات بساز . اگه خواستی بگو بیشتر توضیح بدم . ( منظورم ساخت یه ساختار شبیه دیتا بیسه )

  14. #14
    منظورتون چیه؟؟ می شه بیشتر توضیح بدین.؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

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

  16. #16
    اگر موضوع اصلی رو بیان کنید و بگید هدف اصلی از این کار چیه شاید راه حلهای بیشتری رو

    بشه پیش پای شما گذاشت.

  17. #17
    کاربر دائمی آواتار musiox
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    پشت کامپیوتر
    پست
    269
    دو راه که بیشتر نداری . یکی اینکه خط به خط پردازش کنی . یعنی 0D 0A ( همون سر خط بعد ) جدا کننده رکوردات باشه . که php هم تابع داره که فایل رو تبدیل کنه به آرایه که هر خط یه عنصرش باشه و یا اینکه خودت یه توالی کاراکتری یا یه کاراکتر رو به عنوان جداکننده رکوردات در نظر بگیری . روش اول رو اگه پیاده ساز کنی که مشکل فضای خالی هم پیدا نمیکین ولی روش دوم همون اندیس گزاریه که دوستمون به روشش اشاره کرد . البته باید توجه بکنی که رکوردی رو که می خوای ثبت بکنی قبل از ثبت باید فیلترش کنی که نکنه یه وقت کاراکتر های جدا کندت توی اون رکورد باشه . البته این شامل کاراکتر های جدا کننده فیلدتم میشه . آره شاید روش اول به کار شما بیاد .

  18. #18
    که php هم تابع داره که فایل رو تبدیل کنه به آرایه
    لطفا اسم اون تابع رو بگید.

  19. #19
    فکر میکنم:

    $arr = file("file.txt");

  20. #20
    کاربر دائمی
    تاریخ عضویت
    تیر 1384
    محل زندگی
    کاشان
    سن
    41
    پست
    505
    به طور کلی کار کردن با فایل سرعت بیشتری در مقایسه با دیتابیس بدست می دهد اما مدیریت دیتاها با خودتان است و لذا حجم کدنویسی و کار بیشتر می شود.درست مثل گوگل که برای ذخیره دیتاهایش با فایل کار می کند و در عوض مدیریت آنرا هم با الگوریتم های خودش در دست می گیرد.

  21. #21
    . آواتار oxygenws
    تاریخ عضویت
    دی 1382
    محل زندگی
    تهران/مشهد
    پست
    6,333
    :) قطعا پایگاه داده، اونم MySQL :)
    یک گیگ متن چیزی نیست!!

    ضمنا پایگاه داده به طور پیشفرض فشرده سازی نمی کنه، ولی توی طراحی دیتابیس ات می تونی خیلی شیرین کاری بکنی که سرعتش خیلی خیلی عالی بشه :)

    موفق باشید.
    ایمیل من
    سایت من

    عضویت در جامعه‌ی اهدای عضو

    Direct PGP key: http://tinyurl.com/66q5cy
    PGP key server: keyserver.ubuntu.com
    PGP name to search: omidmottaghi

  22. #22
    من پیشنهادم فایله البته به شرطی که یک کلاس خوب برای انجام ارتباط با فایل بنویسی
    به تجربه به من ثابت شده کار با فایل بسیار سریعتر از بانک اطلاعاتی است. (البته من با Perl با چیزی نزدیک به این حجم کار کردم که فایل بسیار بهتر جواب داد.)

تاپیک های مشابه

  1. نرم افزاری برای مهندسی معکوس؟؟
    نوشته شده توسط naeeme در بخش PHP
    پاسخ: 4
    آخرین پست: پنج شنبه 28 آذر 1387, 23:06 عصر
  2. برنامه چت ؟؟ :-؟
    نوشته شده توسط farazjoonam در بخش WCF , Web Services , .Net Remoting
    پاسخ: 4
    آخرین پست: یک شنبه 19 خرداد 1387, 12:05 عصر
  3. پاسخ: 9
    آخرین پست: چهارشنبه 19 مهر 1385, 16:14 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •