مسیر داده در Splunk (Data Pipeline)
هر دادهای که وارد Splunk میشود، یک مسیر مشخص و مرحلهبهمرحله را طی میکند تا در نهایت به دادهای قابل جستوجو و تحلیل تبدیل شود. این مسیر از چهار مرحله اصلی تشکیل شده است.
دریافت داده (Input)
Splunk داده را از منابع مختلف مانند فایلهای Log، پورتهای شبکه، APIها یا Scriptها دریافت میکند. در این مرحله Metadata اولیه شامل host، source و sourcetype به داده اضافه میشود.
تجزیه و پردازش اولیه (Parsing)
جریان داده خام به Eventهای مجزا تقسیم میشود و عملیاتهایی مانند تشخیص Timestamp، تکمیل Metadata، اعمال Transform، Filter یا Masking روی داده انجام میشود.
Universal Forwarder در این مرحله پردازش اصلی انجام نمیدهد و داده را ارسال میکند؛ Parsing معمولاً روی Indexer یا Heavy Forwarder انجام میشود.
ایندکسگذاری (Indexing)
Eventهای پردازششده روی دیسک نوشته میشوند و Splunk ساختارهای جستوجو را برای آنها ایجاد میکند. دادهها به همراه فایلهای TSIDX در Index ذخیره میشوند و مدیریت Storage از طریق Bucketها انجام میگیرد.
جستوجو (Searching)
کاربران از طریق Search Head و زبان SPL دادههای ایندکسشده را جستوجو و تحلیل میکنند. Search Head Query را بین Indexerها توزیع کرده، نتایج را دریافت و تجمیع میکند.
در این مرحله همچنین عملیاتهایی مانند Field Extraction، Correlation، Dashboard، Report و Alert انجام میشود.
Index-time و Search-time
مراحل Input، Parsing و Indexing هنگام ورود داده انجام میشوند و در گروه Index-time Processing قرار میگیرند. در مقابل، Search-time Processing هر بار که کاربر Query اجرا میکند انجام میشود.