الانتقال إلى المحتوى الرئيسي
يسمح بمعالجة الملفات من URL بالتوازي من عدة عقد في عنقود محدد. على العقدة البادئة، يُنشئ اتصالًا بجميع العقد في العنقود، ويُوسّع علامة النجمة في مسار ملف URL، ثم يوزّع كل ملف ديناميكيًا. وعلى العقدة العاملة، يطلب من العقدة البادئة المهمة التالية لمعالجتها ثم يعالجها. ويتكرر ذلك حتى تكتمل جميع المهام.

الصيغة

urlCluster(cluster_name, URL, format, structure)

الوسيطات

الوسيطةالوصف
cluster_nameاسم عنقود يُستخدم لتكوين مجموعة من العناوين ومعلمات الاتصال للخوادم البعيدة والمحلية.
URLعنوان خادم HTTP أو HTTPS يمكنه قبول طلبات GET. النوع: String.
formatتنسيق البيانات. النوع: String.
structureبنية الجدول بالتنسيق 'UserID UInt64, Name String'. وهي تحدد أسماء الأعمدة وأنواعها. النوع: String.

القيمة المعادة

جدول بالتنسيق والبنية المحددَين، ويتضمن بيانات من URL المحدد.

أمثلة

الحصول على أول 3 أسطر من جدول يحتوي على أعمدة من النوع String وUInt32 من خادم HTTP يستجيب بتنسيق CSV.
  1. أنشئ خادم HTTP بسيطًا باستخدام أدوات بايثون 3 القياسية، ثم ابدأ تشغيله:
from http.server import BaseHTTPRequestHandler, HTTPServer

class CSVHTTPServer(BaseHTTPRequestHandler):
    def do_GET(self):
        self.send_response(200)
        self.send_header('Content-type', 'text/csv')
        self.end_headers()

        self.wfile.write(bytes('Hello,1\nWorld,2\n', "utf-8"))

if __name__ == "__main__":
    server_address = ('127.0.0.1', 12345)
    HTTPServer(server_address, CSVHTTPServer).serve_forever()
SELECT * FROM urlCluster('cluster_simple','http://127.0.0.1:12345', CSV, 'column1 String, column2 UInt32')

Globs في URL

تُستخدم الأنماط ضمن { } لإنشاء مجموعة من الأجزاء (shards) أو لتحديد عناوين التبديل الاحتياطي. للاطلاع على أنواع الأنماط المدعومة وأمثلتها، راجع وصف الدالة remote. يُستخدم الحرف | داخل الأنماط لتحديد عناوين التبديل الاحتياطي. ويجري المرور عليها بالترتيب نفسه الذي ترد به في النمط. ويكون عدد العناوين المُنشأة محدودًا بإعداد glob_expansion_max_elements.
آخر تعديل في ٢٥ يونيو ٢٠٢٦