وقتی برای اولین بار با ربات استخراج دیوار کار میکنید، اجرای یک استخراج تکی کاملاً کافی است.
یک محله را انتخاب میکنید، نوع معامله را مشخص میکنید، عملیات شروع میشود و در پایان یک خروجی دارید.
اما مشکل از جایی شروع میشود که کار شما منظمتر و بزرگتر میشود.
مثلاً هر هفته باید:
- سه محله فروش را استخراج کنید.
- دو محله اجاره را جدا بگیرید.
- فایل هفته قبل را بهروز کنید.
- اگر اینترنت قطع شد، عملیات را دوباره از صفر شروع نکنید.
- مراقب باشید همان Tokenهای قبلی دوباره داخل خروجی جمع نشوند.
در این مرحله دیگر مسئله فقط «استخراج آگهی» نیست.
مسئله اصلی مدیریت Workflow استخراج است.
سه قابلیت Batch، Resume و Merge دقیقاً برای همین مرحله اهمیت پیدا میکنند.
در این مقاله میخواهیم خیلی ساده و عملی بررسی کنیم:
- Batch چه کاری انجام میدهد؟
- Resume چه زمانی به درد میخورد؟
- Merge دقیقاً چه نوع تکراری را کنترل میکند؟
- چطور از این سه قابلیت برای ساخت بانک فایل هفتگی استفاده کنیم؟
- چه اشتباههایی باعث میشوند اتوماسیون فقط شلوغی بیشتری تولید کند؟
اگر هنوز استخراج تکی و فیلترهای پایه را بلد نیستید، بهتر است ابتدا مقاله فیلتر حرفهای ربات استخراج دیوار را بخوانید و بعد سراغ Batch بروید.
Batch، Resume و Merge زمانی ارزش دارند که فیلترهای شما قبلاً درست شده باشند. اتوماسیون یک تنظیم اشتباه، فقط همان اشتباه را سریعتر و بیشتر تکرار میکند.
اول مسئله واقعی را ببینیم: چرا استخراج تکی بعد از مدتی خستهکننده میشود؟
فرض کنید شما روی پنج محله کار میکنید.
هر شنبه این کارها را انجام میدهید:
- محله اول را انتخاب میکنید.
- فروش آپارتمان را میزنید.
- استخراج را اجرا میکنید.
- منتظر پایان میمانید.
- محله دوم را انتخاب میکنید.
- همان تنظیمات را دوباره وارد میکنید.
- این فرآیند را پنج بار تکرار میکنید.
اگر این کار فقط یک بار باشد، مسئله بزرگی نیست.
ولی اگر هر هفته یا حتی هر روز تکرار شود، بخشی از وقت شما صرف تنظیم دوباره همان کارها میشود.
Batch برای کم کردن همین تکرار طراحی شده است.
Batch در ربات دیوار یعنی چه؟
Batch یعنی چند کار استخراج را از قبل تعریف کنید تا در قالب یک صف کاری مدیریت شوند.
مثلاً میتوانید بگویید:
- کار ۱: پاسداران — فروش آپارتمان
- کار ۲: هروی — فروش آپارتمان
- کار ۳: ضرابخانه — فروش آپارتمان
- کار ۴: پاسداران — اجاره آپارتمان
به جای اینکه بعد از پایان هر کار دوباره پشت سیستم برگردید و تنظیم بعدی را وارد کنید، چند Job را از قبل مشخص میکنید.
این قابلیت برای مشاورانی که بازارشان چند محدوده یا چند نوع معامله دارد بسیار کاربردیتر از کاربر تازهکاری است که فقط یک استخراج کوچک انجام میدهد.
Batch به معنی اجرای همه چیز به صورت همزمان نیست
این نکته مهم است.
وقتی میگوییم استخراج گروهی، منظور این نیست که لزوماً همه Jobها به شکل نامحدود و همزمان اجرا شوند.
Batch بیشتر یک مدل مدیریت صف است.
یعنی چند عملیات از قبل تعریف میشوند و ربات آنها را در یک جریان کنترلشده مدیریت میکند.
این روش مزیت مهمی دارد:
شما Workflow را یک بار طراحی میکنید، نه اینکه بعد از هر مرحله دوباره از صفر تصمیم بگیرید.
تفاوت استخراج تکی و Batch
| موضوع | استخراج تکی | Batch |
|---|---|---|
| تعداد محدوده | یک کار در هر نوبت | چند Job از قبل تعریفشده |
| مناسب برای | تست، تازهکار، استخراج موردی | Workflow تکراری و چندمحلهای |
| نیاز به تنظیم مجدد | بعد از هر استخراج | کمتر |
| کنترل ساختار | ساده | نیازمند نامگذاری و نظم بیشتر |
| ریسک شلوغی | کمتر | در صورت فیلتر بد بیشتر |
چه زمانی Batch واقعاً ارزش دارد؟
Batch زمانی مفید است که الگوی استخراج شما تکرارشونده باشد.
مثلاً:
- هر روز چند محله ثابت را بررسی میکنید.
- فروش و اجاره را جداگانه برای چند محدوده میگیرید.
- یک آژانس چندنفره هستید و هر محدوده به یک مشاور مربوط است.
- هر هفته Snapshotهای یکسان برای Compare میسازید.
- میخواهید Datasetهای بازار تخصصی شما منظم و قابل تکرار باشند.
اگر ماهی یک بار فقط ۳۰ آگهی از یک محله میگیرید، Batch احتمالاً ضرورت خاصی ندارد.
سناریوی واقعی اول: مهدی و پنج محله ثابت
مهدی روی فروش آپارتمان در پنج محله غرب تهران کار میکند.
روش قبلی او این بود که هر صبح:
- محله را انتخاب کند.
- نوع معامله را بزند.
- تعداد را تعیین کند.
- استخراج کند.
- برای محله بعدی همه چیز را تکرار کند.
بعد از مدتی این بخش تبدیل به کار مکانیکی شده بود.
او حالا پنج Job مشخص دارد.
هر Job فقط مربوط به یک بازار معنیدار است.
خروجیها هم با نام مشخص ذخیره میشوند.
نتیجه مهم این نیست که ربات فایل بیشتری گرفته است.
نتیجه این است که مهدی کمتر درگیر تکرار تنظیمات شده و ساختار Datasetهایش منظمتر مانده است.
چطور Batch خوب طراحی کنیم؟
قبل از اضافه کردن Jobها، هر کار باید یک معنی واضح داشته باشد.
مثلاً این خوب است:
پاسداران — فروش آپارتمان — جدیدترینها
ولی این مبهم است:
تهران — همه چیز
برای هر Job بهتر است حداقل این موارد مشخص باشند:
- استان
- شهر
- محله
- نوع معامله
- نوع ملک
- تعداد یا دامنه استخراج
- مرتبسازی
- هدف خروجی
چند Job در یک Batch منطقی است؟
عدد جادویی وجود ندارد.
اگر ده Job دارید ولی همه واقعاً به بازار شما مربوطاند، میتواند منطقی باشد.
اگر فقط برای اینکه Batch بزرگ به نظر برسد ۳۰ محدوده بیربط اضافه کردهاید، خروجی احتمالاً کیفیت خوبی نخواهد داشت.
بهترین معیار این سؤال است:
آیا بعد از پایان Batch واقعاً از هرکدام از این خروجیها استفاده میکنم؟
نامگذاری Jobها چرا مهم است؟
وقتی تعداد کارها زیاد میشود، نامهایی مثل Job1 و Job2 خیلی زود بیمعنی میشوند.
نام بهتر:
- پاسداران فروش آپارتمان
- هروی فروش آپارتمان
- پاسداران اجاره آپارتمان
اگر تاریخ Snapshot هم اهمیت دارد، آن را در نام خروجی یا Dataset نگه دارید.
مثلاً:
پاسداران — فروش آپارتمان — هفته چهارم مرداد ۱۴۰۵
Resume چیست؟
حالا فرض کنیم استخراج در حال انجام است و وسط کار اتفاقی میافتد.
مثلاً:
- اینترنت قطع میشود.
- سیستم Restart میشود.
- برنامه بسته میشود.
- کار نیمهتمام میماند.
در استخراج حجیم، شروع دوباره از صفر میتواند هم وقتگیر باشد و هم باعث پردازش دوباره فایلهایی شود که قبلاً گرفته شدهاند.
Resume برای ادامه دادن عملیات از وضعیت ذخیرهشده یا Checkpoint استفاده میشود.
یعنی به جای شروع یک عملیات کاملاً تازه، ربات تلاش میکند مسیر قبلی را ادامه دهد.
Checkpoint یعنی چه؟
Checkpoint را میتوانید مثل یک نقطه ذخیره در بازی تصور کنید.
ربات در طول عملیات وضعیت پیشرفت را نگه میدارد تا اگر کار متوقف شد، در شرایط مناسب مجبور نباشید همه مسیر را از ابتدا تکرار کنید.
این قابلیت در استخراجهای کوچک شاید خیلی به چشم نیاید.
اما وقتی چند صد آگهی، چند محله یا Batch دارید، اهمیت آن بیشتر میشود.
Resume چه زمانی مناسب است؟
| وضعیت | Resume مناسب است؟ |
|---|---|
| اینترنت موقتاً قطع شده | بله، در صورت وجود وضعیت قابل ادامه |
| برنامه ناخواسته بسته شده | معمولاً ارزش بررسی دارد |
| فیلتر اشتباه انتخاب شده | خیر، بهتر است Job جدید با تنظیم درست بسازید |
| میخواهید هفته بعد فایلهای تازه را بگیرید | Resume ابزار اصلی نیست؛ Merge یا استخراج جدید مناسبتر است |
| خروجی قبلی کامل شده | Resume لازم نیست |
Resume را با استخراج مجدد اشتباه نگیرید
این تفاوت خیلی مهم است.
Resume یعنی:
ادامه یک عملیات نیمهتمام.
استخراج مجدد یعنی:
اجرای یک عملیات تازه در زمان جدید برای گرفتن داده جدید.
اگر فایل هفته قبل کامل شده و امروز میخواهید بازار را دوباره بررسی کنید، این دیگر Resume نیست.
شما یک استخراج جدید دارید که احتمالاً باید با خروجی قبلی Merge شود یا به عنوان Dataset جدا برای Compare نگهداری شود.
سناریوی واقعی دوم: اینترنت نازنین وسط استخراج قطع میشود
نازنین در اصفهان یک Batch سهمحلهای اجرا کرده است.
دو کار کامل شدهاند و Job سوم وسط عملیات متوقف میشود.
اگر همه چیز را از صفر شروع کند، دو خروجی قبلی را دوباره میسازد و زمان بیشتری مصرف میشود.
روش منطقیتر این است که وضعیت Job ناقص را بررسی کند و در صورت موجود بودن Checkpoint از Resume استفاده کند.
اینجا Resume قرار نیست خطای تنظیم را درست کند.
فقط ادامه همان کار درست اما نیمهتمام را سادهتر میکند.
چه زمانی نباید Resume کنیم؟
اگر بعد از شروع عملیات متوجه شدید فیلتر اشتباه بوده است، Resume معنی ندارد.
مثلاً:
قرار بوده فروش آپارتمان بگیرید ولی اجاره را انتخاب کردهاید.
یا محله اشتباه است.
در این حالت بهتر است Job اشتباه را متوقف کنید و یک استخراج تازه با تنظیم درست بسازید.
Resume نباید برای ادامه دادن اشتباه استفاده شود.
Merge چیست؟
Merge زمانی مطرح میشود که قبلاً یک خروجی دارید و حالا استخراج جدیدی از همان بازار گرفتهاید.
مثلاً:
شنبه هفته قبل ۳۰۰ آگهی از پاسداران گرفتهاید.
این شنبه دوباره همان بازار را استخراج میکنید.
طبیعی است بخشی از آگهیهای جدید همان Tokenهای هفته قبل باشند.
اگر همه ردیفها را بدون کنترل به فایل قبلی اضافه کنید، خروجی متورم میشود.
Merge کمک میکند داده جدید با خروجی قبلی ادغام شود و Tokenهای تکراری دوباره به شکل رکورد تازه اضافه نشوند.
Token چیست و چرا در Merge مهم است؟
هر آگهی دارای شناسهای است که برای تشخیص همان آگهی قابل استفاده است.
در Merge، Token میتواند نقش کلید کنترل تکرار را داشته باشد.
اگر Token در فایل قبلی وجود داشته باشد، لازم نیست همان رکورد دوباره به عنوان یک آگهی جدید اضافه شود.
این کار مخصوصاً برای استخراج دورهای بسیار مفید است.
Merge با Duplicate Detection کامل فرق دارد
این یکی از مهمترین نکات مقاله است.
فرض کنید یک مالک آگهی قبلی را حذف میکند و همان ملک را با آگهی جدید دوباره منتشر میکند.
ممکن است Token جدید باشد.
از دید Merge مبتنی بر Token، این رکورد تازه است.
اما از دید بازار، شاید همان ملک قبلی باشد.
یا ممکن است دو مشاور مختلف یک ملک واحد را با دو Token متفاوت آگهی کرده باشند.
پس:
Merge جلوی تکرار Token را میگیرد، اما به تنهایی تمام مفهوم Duplicate ملک را حل نمیکند.
برای پاکسازی عمیقتر بانک فایل، مقاله حذف آگهی تکراری در فایلینگ را ببینید.
تفاوت Resume و Merge
| قابلیت | مسئلهای که حل میکند | مثال |
|---|---|---|
| Resume | ادامه یک استخراج نیمهتمام | اینترنت وسط استخراج قطع شده |
| Merge | ادغام استخراج جدید با داده قبلی و کنترل Token تکراری | استخراج هفتگی همان محله |
اگر این دو را با هم قاطی نکنید، Workflow بسیار روشنتر میشود.
سناریوی واقعی سوم: حمید هر شنبه همان محله را استخراج میکند
حمید روی فروش آپارتمان در سعادتآباد کار میکند.
هفته اول ۴۲۰ آگهی گرفته است.
هفته دوم دوباره استخراج میکند و ۴۶۰ آگهی میبیند.
اگر همه ۴۶۰ مورد را مستقیم به فایل قبلی اضافه کند، بخش بزرگی از بانک فایل تکراری خواهد شد.
با Merge، Tokenهایی که قبلاً وجود داشتهاند دوباره به عنوان رکورد مستقل اضافه نمیشوند.
حالا خروجی ترکیبی بیشتر شبیه یک بانک فایل در حال رشد است.
اما اگر هدف حمید تحلیل تغییرات هفتگی بازار باشد، شاید بهتر باشد Snapshot هفته اول و هفته دوم را جدا هم نگه دارد و از Compare استفاده کند.
این نکته مهم است:
Merge برای ساخت بانک فایل بهروز مناسب است؛ Compare برای دیدن تغییر دو Snapshot.
Merge کنیم یا Datasetها را جدا نگه داریم؟
جواب بستگی به هدف دارد.
| هدف | روش مناسبتر |
|---|---|
| داشتن یک بانک فایل جاری | Merge |
| دیدن فایلهای جدید هفته دوم | Snapshot جدا + Compare |
| تحلیل تغییر قیمت بازار | Dataset جدا + Compare |
| حذف Token تکراری در فایل جاری | Merge |
| تشخیص یک ملک با چند Token | Dedup و بررسی فایلینگ |
برای رصد هفتگی بازار، مقاله Compare Dataset و رصد بازار محله دقیقاً روی این مدل تمرکز دارد.
بهترین Workflow هفتگی برای یک مشاور محلهای
یک مدل ساده میتواند این باشد:
شنبه صبح
Batch بازارهای اصلی اجرا میشود.
بعد از استخراج
خروجیها بررسی و در صورت نیاز به میز کار منتقل میشوند.
برای بانک فایل جاری
داده جدید با خروجی قبلی Merge میشود.
برای تحلیل بازار
Snapshot همان هفته جدا نگهداری میشود.
در طول هفته
فایلهای مهم بررسی، تماس و به مشتریهای CRM متصل میشوند.
این Workflow باعث میشود هم بانک فایل جاری داشته باشید و هم تاریخچه بازار را از دست ندهید.
یک مدل پیشنهادی برای نامگذاری Snapshotها
اگر Compare برایتان مهم است، فایلهای دورهای را واضح نامگذاری کنید.
مثلاً:
- پاسداران — فروش آپارتمان — ۱۴۰۵-۰۵-۰۱
- پاسداران — فروش آپارتمان — ۱۴۰۵-۰۵-۰۸
- پاسداران — فروش آپارتمان — ۱۴۰۵-۰۵-۱۵
این نامگذاری خیلی بهتر از:
- new.xlsx
- new2.xlsx
- final-new.xlsx
است.
Batch برای فروش و اجاره را جدا کنیم؟
در بیشتر Workflowها بله.
حتی اگر در یک Batch چند Job داشته باشید، هر Job بهتر است بازار مشخصی داشته باشد.
مثلاً:
- پاسداران فروش آپارتمان
- هروی فروش آپارتمان
- پاسداران اجاره آپارتمان
- هروی اجاره آپارتمان
این ساختار باعث میشود خروجی، فایلینگ و تحلیل بعدی معنا داشته باشند.
آیا Batch باید خیلی بزرگ باشد؟
نه.
Batch بزرگ به خودی خود نشانه حرفهای بودن نیست.
گاهی چهار Job دقیق بهتر از ۲۵ Job بیهدف است.
اگر بعد از پایان Batch بیشتر خروجیها را حتی باز نمیکنید، احتمالاً بازار را بیش از حد گسترده کردهاید.
اشتباه رایج اول: Batch قبل از یادگیری فیلتر
اگر هنوز نمیدانید کدام محله، نوع معامله و دسته برای شما مناسب است، Batch را زود شروع نکنید.
ابتدا چند استخراج تکی انجام دهید.
وقتی تنظیمات پایدار شدند، همانها را وارد Batch کنید.
اشتباه رایج دوم: Resume کردن تنظیم اشتباه
Resume برای ادامه کار درست اما ناقص است.
اگر Job از ابتدا اشتباه بوده، ادامه دادن آن فقط داده نامرتبط بیشتری تولید میکند.
اشتباه رایج سوم: Merge همه چیز در یک فایل بزرگ
Merge نباید باعث شود تمام شهر، همه نوع معامله و چند ماه داده در یک فایل نامفهوم جمع شوند.
هر بانک فایل جاری باید هویت مشخص داشته باشد.
مثلاً:
پاسداران — فروش آپارتمان
نه:
همه فایلها
اشتباه رایج چهارم: حذف Snapshotهای قدیمی بعد از Merge
اگر تحلیل بازار و Compare برای شما مهم است، همیشه فقط نسخه Mergeشده را نگه ندارید.
Snapshotهای دورهای میتوانند برای بررسی تغییر بازار بسیار ارزشمند باشند.
مثلاً دو ماه بعد میتوانید بفهمید:
- چند فایل جدید وارد شدهاند.
- چند آگهی حذف شدهاند.
- میانه قیمت تغییر کرده یا نه.
- کدام محله فعالتر شده است.
اشتباه رایج پنجم: تصور اینکه Merge تمام Duplicateها را حذف میکند
Merge مبتنی بر Token فقط بخشی از مسئله تکرار را حل میکند.
یک ملک ممکن است با Token جدید دوباره منتشر شود.
یا توسط چند منبع مختلف آگهی شود.
برای همین پاکسازی در فایلینگ همچنان مهم است.
اشتباه رایج ششم: نداشتن مقصد برای خروجی Batch
اگر پنج Job اجرا میکنید ولی نمیدانید هر خروجی قرار است وارد کدام Dataset یا Workflow شود، Batch فقط فایل بیشتری تولید میکند.
برای هر Job قبل از شروع مشخص کنید:
- خروجی برای بانک فایل جاری است؟
- برای Snapshot هفتگی است؟
- برای مشتری خاص است؟
- برای تحلیل بازار است؟
هر Job باید یک بازار، یک هدف و یک مقصد مشخص داشته باشد. اگر یکی از این سه مورد مبهم است، قبل از اجرای Batch آن را اصلاح کنید.
Batch و آپلود به میز کار
وقتی خروجیهای گروهی آماده میشوند، مرحله بعد مدیریت آنهاست.
اگر Workflow شما به آپلود پلتفرم متصل باشد، میتوانید فاصله استخراج تا Dataset را کمتر کنید.
در غیر این صورت، خروجیها را از طریق Import میز کار وارد کنید.
بعد در لیست Datasetها هر بازار را جدا مدیریت کنید.
چطور Batch را به فایلینگ وصل کنیم؟
فرض کنید Batch شما سه خروجی ساخته است:
- پاسداران فروش
- هروی فروش
- ضرابخانه فروش
بهتر است همین تفکیک در Datasetها هم حفظ شود.
بعد داخل نمای آگهیهای میز کار میتوانید روی چند Dataset جستجو یا فیلتر کنید.
این مدل از این بهتر است که از همان ابتدا همه چیز را در یک فایل ناشناس ترکیب کنید.
Batch و CRM چه ارتباطی دارند؟
خود Batch مستقیماً مشتری ایجاد نمیکند.
اما اگر مشتریهای شما در CRM املاک نیازهای مشخص داشته باشند، خروجیهای تازه ارزش بیشتری پیدا میکنند.
مثلاً شنبه Batch تمام میشود.
فایل ۹۵ متری تازهای در پاسداران وارد Dataset شده است.
اگر سه مشتری فعال همین محدوده و متراژ را دارند، حالا داده استخراجشده مستقیماً به اقدام تبدیل میشود.
هدف اتوماسیون همین است:
کاهش کار تکراری و افزایش سرعت رسیدن از فایل تازه به مشتری درست.
یک سناریوی تیمی: آژانس ششنفره
یک آژانس شش مشاور دارد.
هر مشاور روی یک یا دو محدوده تمرکز میکند.
قبلاً هر نفر جداگانه دیوار را میگشت و خروجی خودش را نگه میداشت.
در نتیجه:
- بعضی آگهیها چند بار بررسی میشدند.
- هیچ Snapshot مشترکی وجود نداشت.
- مدیر نمیدانست فایل جدید کدام است.
حالا Batchهای مشخص بر اساس محدوده ساخته شدهاند.
خروجیها وارد Datasetهای مرکزی میشوند.
Merge برای بانک فایل جاری استفاده میشود و Snapshot هفتگی برای Compare جدا باقی میماند.
CRM هم مشتری و پیگیری را مدیریت میکند.
مزیت اصلی این سیستم تعداد بیشتر فایل نیست.
مزیت اصلی این است که همه تیم درباره یک ساختار مشترک حرف میزنند.
چطور یک Workflow روزانه بسازیم؟
| زمان | کار |
|---|---|
| صبح | اجرای Batch محدودههای اصلی |
| بعد از پایان | بررسی Jobهای کامل و ناقص |
| در صورت توقف | Resume فقط برای عملیات قابل ادامه |
| بعد از استخراج | Merge برای بانک فایل جاری |
| همزمان | نگهداری Snapshot در صورت نیاز به Compare |
| در طول روز | فیلتر فایلهای مهم و اتصال به مشتری |
چطور یک Workflow هفتگی بسازیم؟
برای مشاور محلهای:
- یک روز ثابت برای Snapshot تعیین کنید.
- Batch محلههای اصلی را اجرا کنید.
- Jobهای ناقص را بررسی کنید.
- Snapshot هر بازار را با تاریخ نگه دارید.
- در صورت نیاز بانک جاری را Merge کنید.
- Snapshot جدید را با هفته قبل Compare کنید.
- فایلهای تازه را به مشتریهای مناسب وصل کنید.
این مدل بعد از چند ماه ارزش زیادی پیدا میکند چون علاوه بر بانک فایل، تاریخچه رفتاری بازار هم دارید.
Merge برای بانک فایل شخصی هم مفید است؟
بله، ولی با احتیاط.
اگر یک Dataset از فایلهای مالک محتمل دارید و هر هفته داده جدید به آن اضافه میکنید، Merge میتواند Tokenهای تکراری را کنترل کند.
اما وضعیت مالک، قیمت، تماس و فعال بودن فایل باید جداگانه بهروز شود.
Merge فقط مسئله فنی تکرار ردیف را حل میکند؛ چرخه عمر فایل را مدیریت نمیکند.
اگر آگهی با قیمت جدید منتشر شود چه؟
دو حالت داریم.
اگر همان Token با داده بهروزشده در Workflow شما قابل شناسایی باشد، باید سیاست نگهداری قیمت را مشخص کنید.
اگر آگهی جدید با Token جدید منتشر شده باشد، Merge ممکن است آن را رکورد تازه بداند.
برای تحلیل تغییر قیمت، بهتر است فقط به Merge وابسته نباشید و Snapshotهای دورهای را نگه دارید.
آیا Merge تاریخچه قیمت را نگه میدارد؟
Merge و تاریخچه قیمت دو مفهوم متفاوت هستند.
هدف اصلی Merge جلوگیری از اضافه شدن بیدلیل Token تکراری هنگام ترکیب دادههاست.
اگر میخواهید بدانید یک فایل هفته قبل چند بوده و امروز چند شده، Snapshot یا تاریخچه تغییرات برای شما مهمتر است.
چرا Compare بعد از Batch اهمیت پیدا میکند؟
وقتی هر هفته یک Batch ثابت اجرا میکنید، Datasetهای شما قابل مقایسه میشوند.
مثلاً:
پاسداران فروش — هفته اول
پاسداران فروش — هفته دوم
حالا در Compare میز کار میتوانید تغییر دو Dataset را بررسی کنید.
این یکی از بهترین استفادههای واقعی از Workflow دورهای است.
دیگر استخراج فقط برای پیدا کردن فایل امروز نیست؛ تبدیل به ابزار رصد بازار میشود.
Batch خوب باید قابل تکرار باشد
اگر هر هفته تنظیمات را کاملاً عوض کنید، مقایسه سختتر میشود.
برای رصد بازار بهتر است تا حد امکان:
- محله ثابت باشد.
- نوع معامله ثابت باشد.
- نوع ملک ثابت باشد.
- روش نامگذاری ثابت باشد.
- روز Snapshot تقریباً مشخص باشد.
این ثبات باعث میشود تغییرات Dataset بیشتر ناشی از بازار باشد تا تغییر روش استخراج.
آیا Batch برای استخراج یک مشتری خاص مناسب است؟
اگر فقط یک مشتری فوری دارید، شاید استخراج تکی سریعتر باشد.
Batch بیشتر زمانی ارزش دارد که چند نیاز یا چند بازار تکراری دارید.
مثلاً اگر سه مشتری داغ دارید که هرکدام روی محله متفاوتی هستند، میتوانید Workflow چند Job داشته باشید.
اما برای یک درخواست لحظهای ساده، پیچیده کردن فرآیند ضرورتی ندارد.
آیا Resume همیشه تضمین میکند از همان نقطه ادامه دهیم؟
Resume به وضعیت ذخیرهشده عملیات وابسته است.
اگر Checkpoint معتبر وجود داشته باشد، میتواند ادامه کار را ساده کند.
اما نباید آن را تضمین مطلق برای هر نوع توقف، خطا یا تغییر تنظیمات در نظر گرفت.
بعد از Resume همیشه کیفیت و تعداد خروجی را بررسی کنید.
چکلیست قبل از اجرای Batch
- همه Jobها واقعاً لازماند؟
- هر Job یک محله یا بازار مشخص دارد؟
- فروش و اجاره جدا هستند؟
- نوع ملک درست انتخاب شده؟
- تعداد آگهی منطقی است؟
- مرتبسازی مناسب است؟
- نام Job واضح است؟
- مقصد خروجی مشخص است؟
- میدانید کدام Dataset باید Merge شود؟
- میدانید کدام Snapshot باید جدا بماند؟
چکلیست بعد از پایان Batch
- کدام Jobها کامل شدند؟
- کدام Job نیاز به Resume دارد؟
- تعداد خروجی هر Job منطقی است؟
- فایلها در مسیر درست ذخیره شدهاند؟
- Snapshotهای لازم جدا نگه داشته شدهاند؟
- Merge فقط روی بانک فایل موردنظر انجام شده؟
- Datasetها وارد میز کار شدهاند؟
- فایلهای تازه برای مشتریهای فعال بررسی شدهاند؟
چه زمانی از Merge استفاده نکنیم؟
اگر هدف شما مقایسه دو مقطع زمانی است، قبل از اینکه همه چیز را در یک فایل Merge کنید، نسخههای مستقل را نگه دارید.
اگر Datasetها متعلق به دو بازار متفاوتاند، Merge آنها فقط به خاطر راحتی منطقی نیست.
اگر نوع معامله متفاوت است، بهتر است جدا بمانند.
اگر ساختار دادهها با هم سازگار نیست، قبل از ادغام آنها را بررسی کنید.
چه زمانی از Resume استفاده نکنیم؟
وقتی:
- فیلتر اشتباه بوده است.
- میخواهید داده امروز را به عنوان استخراج تازه بگیرید.
- Job قبلی کامل شده است.
- قصد دارید بازار یا تعداد را تغییر دهید.
در این حالتها معمولاً Job جدید منطقیتر است.
چه زمانی Batch نسازیم؟
اگر هنوز:
- محدوده تخصصی مشخص ندارید.
- نمیدانید کدام خروجی برایتان مفید است.
- فایلهای فعلی را هم استفاده نمیکنید.
- نامگذاری و Dataset مشخص ندارید.
بهتر است ابتدا Workflow تکی را درست کنید.
Batch مرحله مقیاس دادن یک فرآیند خوب است، نه راهحل یک فرآیند نامنظم.
Batch، Resume و Merge چه تأثیری روی بهرهوری دارند؟
اثر اصلی آنها کاهش کار تکراری است.
مثلاً:
- Batch تنظیم چند بازار را یکجا مدیریت میکند.
- Resume از شروع دوباره بیدلیل عملیات ناقص جلوگیری میکند.
- Merge جلوی رشد مصنوعی فایل با Tokenهای تکراری را میگیرد.
اما هیچکدام جای تصمیم حرفهای مشاور را نمیگیرند.
هنوز باید:
- فایل مهم را تشخیص دهید.
- با منبع تماس بگیرید.
- قیمت را اعتبارسنجی کنید.
- فایل را به مشتری مناسب وصل کنید.
ارتباط این قابلیتها با فایلینگ هوشمند
وقتی Batch خروجی منظم تولید کند و Merge بانک جاری را تمیز نگه دارد، مرحله بعدی فایلینگ راحتتر میشود.
در نمای آگهیهای میز کار میتوانید دادههای چند Dataset را جستجو کنید.
برای درک بهتر این مرحله، مقاله فایلینگ هوشمند املاک را ببینید.
ارتباط این قابلیتها با CRM
فرض کنید شنبه صبح Batch تمام شده است.
سه Dataset تازه دارید.
اگر مشتریها فقط در دفترچه یا حافظه باشند، هنوز باید دستی به یاد بیاورید چه کسی دنبال چه چیزی بود.
اما اگر مشتری در CRM ثبت شده باشد، میتوانید سریعتر فایلهای مرتبط را بررسی کنید.
CRM املاک فایلینگ دیوار برای مدیریت مخاطب، معامله و پیگیری به صورت رایگان در دسترس است.
استخراج و فایلینگ پیشرفته در مقابل نیازمند لایسنس فعال هستند.
یک Workflow کامل حرفهای
- فیلترهای بازار را یک بار درست طراحی کنید.
- برای بازارهای ثابت Batch بسازید.
- Batch را در زمان مشخص اجرا کنید.
- Jobهای متوقفشده را با Resume بررسی کنید.
- Snapshotهای دورهای را جدا نگه دارید.
- برای بانک فایل جاری از Merge استفاده کنید.
- Datasetها را در میز کار مدیریت کنید.
- هفتههای مختلف را با Compare بسنجید.
- فایلهای تازه را به مشتریهای CRM وصل کنید.
- نتیجه تماس و پیگیری را ثبت کنید.
اینجا ربات دیگر فقط یک ابزار استخراج نیست.
بخشی از یک فرآیند تکرارپذیر برای مدیریت بازار شماست.
اگر برای اولین بار میخواهید Batch بسازید، فقط سه Job از سه بازار اصلی خودتان تعریف کنید. یک هفته با همانها کار کنید و بعد از دیدن کیفیت خروجی، Jobهای جدید اضافه کنید.
قدم بعدی بعد از Batch، Resume و Merge چیست؟
وقتی استخراج دورهای شما منظم شد، مرحله بعد مدیریت خروجی است.
یعنی باید مشخص کنید:
- Excel، CSV یا JSON چه زمانی مناسبتر است؟
- تصاویر را چه زمانی دانلود کنید؟
- آپلود خودکار به میز کار چطور استفاده شود؟
- چطور خروجیها را آرشیو و نامگذاری کنید؟
اینها مرحله بعدی حرفهای شدن Workflow ربات هستند.
جمعبندی؛ سه قابلیت برای سه مسئله متفاوت
اگر بخواهیم کل مقاله را در سه جمله خلاصه کنیم:
Batch برای مدیریت چند استخراج تکرارشونده است.
Resume برای ادامه یک استخراج نیمهتمام است.
Merge برای ترکیب داده جدید با بانک قبلی و جلوگیری از اضافه شدن مجدد Tokenهای تکراری است.
این سه قابلیت زمانی بیشترین ارزش را دارند که:
- محدودههای شما مشخص باشند.
- فیلترها درست باشند.
- Datasetها منظم نامگذاری شوند.
- Snapshotهای لازم برای Compare حفظ شوند.
- خروجی در فایلینگ و CRM واقعاً استفاده شود.
اگر هنوز هر بار فقط یک محله کوچک را استخراج میکنید، عجلهای برای Batch ندارید.
اما اگر هر هفته چند بازار را تکرار میکنید، این سه قابلیت میتوانند بخش قابل توجهی از کار مکانیکی شما را کم کنند.
برای شروع، صفحه ربات دیوار را باز کنید، سه بازار ثابت خودتان را مشخص کنید و قبل از ساخت Batch مطمئن شوید فیلتر هرکدام دقیق است.
اتوماسیون خوب یعنی یک فرآیند درست را تکرارپذیر کنیم؛ نه اینکه شلوغی را سریعتر تولید کنیم.
سوالات متداول درباره Batch، Resume و Merge ربات دیوار
Batch در ربات دیوار چیست؟
Batch روشی برای تعریف و مدیریت چند Job استخراج در یک Workflow است. مثلاً میتوانید چند محله یا نوع معامله مشخص را از قبل تعریف کنید تا نیاز به تنظیم دستی دوباره بعد از هر استخراج کمتر شود.
آیا Batch همه استخراجها را همزمان اجرا میکند؟
Batch بیشتر برای مدیریت صف چند کار طراحی شده است و نباید آن را به معنی اجرای نامحدود همه Jobها به صورت همزمان در نظر گرفت. هدف اصلی، مدیریت ساختاریافته چند عملیات است.
Resume در ربات دیوار چیست؟
Resume برای ادامه یک عملیات استخراج نیمهتمام از وضعیت ذخیرهشده یا Checkpoint استفاده میشود تا در شرایط مناسب نیازی به شروع کامل عملیات از ابتدا نباشد.
فرق Resume با استخراج مجدد چیست؟
Resume ادامه همان عملیات قبلی است، اما استخراج مجدد یک Job تازه برای دریافت داده جدید در زمان دیگری محسوب میشود. برای بهروزرسانی هفتگی معمولاً Job تازه و سپس Merge یا Compare مناسبتر است.
Merge در ربات دیوار چه کاری انجام میدهد؟
Merge داده استخراج جدید را با خروجی قبلی ترکیب میکند و کمک میکند Tokenهایی که قبلاً در فایل وجود داشتهاند دوباره به شکل رکورد تازه اضافه نشوند.
آیا Merge همه آگهیهای تکراری یک ملک را حذف میکند؟
خیر. Merge مبتنی بر Token میتواند تکرار همان شناسه را کنترل کند، اما یک ملک ممکن است با Token جدید یا توسط چند منبع مختلف دوباره منتشر شود. برای این موارد Dedup و بررسی فایلینگ لازم است.
برای رصد هفتگی بازار Merge بهتر است یا Compare؟
اگر هدف داشتن یک بانک فایل جاری است Merge مفید است. اگر میخواهید تفاوت دو هفته، فایلهای جدید، فایلهای حذفشده یا تغییرات بازار را ببینید، بهتر است Snapshotها را جدا نگه دارید و از Compare استفاده کنید.
چه زمانی باید Batch بسازیم؟
وقتی چند استخراج ثابت و تکرارشونده دارید و فیلترهای هرکدام را قبلاً تست کردهاید، Batch ارزش بیشتری پیدا میکند. برای کاربر تازهکار بهتر است ابتدا چند استخراج تکی انجام شود.
اگر فیلتر Job اشتباه بود از Resume استفاده کنیم؟
خیر. Resume برای ادامه عملیات درست اما ناقص است. اگر محله، نوع معامله یا فیلتر اشتباه بوده، بهتر است Job جدیدی با تنظیمات درست بسازید.
Batch و Merge چه کمکی به بانک فایل املاک میکنند؟
Batch جمعآوری دورهای چند بازار را منظمتر میکند و Merge کمک میکند داده جدید بدون اضافه شدن دوباره Tokenهای قبلی وارد بانک جاری شود. در کنار فایلینگ، Dedup و CRM این دو قابلیت میتوانند Workflow منظمتری بسازند.