كل المقالات

AlloyDB AI يحل معضلة البحث النصي في اللغات الآسيوية التي أرّقت PostgreSQL لسنوات

عمر حسن15 يوليو 2026 في 10:21 م5 دقيقة للقراءة

أبرز النقاط

  • PostgreSQL التقليدي يفشل في فهرسة اللغات الآسيوية لأنها لا تستخدم مسافات بين الكلمات
  • AlloyDB AI يستدعي نماذج Gemini مباشرة من SQL لتقسيم النص بذكاء دون نقل البيانات خارج قاعدة البيانات
  • الحل الجديد يلغي الحاجة إلى خطوط ETL معقدة أو إضافات خارجية غير مدعومة في البيئات المُدارة

لسنوات طويلة واجه مهندسو قواعد البيانات معضلة محبطة: محركات البحث النصي الكامل في PostgreSQL تعمل ببراعة مع الإنجليزية والعربية وسائر اللغات التي تفصل كلماتها بمسافات، لكنها تتعثر تعثراً ذريعاً أمام الصينية واليابانية والكورية. السبب بسيط تقنياً لكنه عسير الحل: هذه اللغات تكتب كلماتها متصلة دون فراغات، فيعجز المحلل اللغوي عن تمييز بداية كلمة من نهاية أخرى. الآن تطرح Google Cloud حلاً جذرياً عبر AlloyDB AI يدمج نماذج Gemini داخل قاعدة البيانات نفسها.

Advertisement

لماذا يفشل PostgreSQL في فهرسة النص الصيني والياباني والكوري؟

يعتمد PostgreSQL على دالة to_tsvector لتحويل النص إلى وحدات معجمية قابلة للبحث. الإعدادات الافتراضية مثل simple أو english تفترض أن المسافة البيضاء تفصل الكلمات، فتقطّع الجملة عند كل فراغ. لكن في اللغات اللوغوغرافية لا توجد مسافات؛ الجملة تُكتب شريطاً متصلاً لا يقطعه سوى علامات الترقيم.

خذ مثالاً عملياً: الجملة الصينية "你们研究所有十个图书馆" (معهدكم البحثي يملك عشر مكتبات) تُمرَّر إلى to_tsvector('simple', ...) فيعاملها المحرك ككيان واحد ضخم. لو بحثت عن "研究所" (معهد بحثي) أو "图书馆" (مكتبة) فلن تحصل على نتيجة، لأن الكلمات المستهدفة حبيسة داخل السلسلة الكبرى.

1.5 مليار+
عدد الناطقين الأصليين بالصينية واليابانية والكورية المتأثرين بقيود البحث النصي التقليدي

الحلول التقليدية ولماذا لم تكن كافية

  • إضافات خارجية مثل zhparser وpg_jieba: توفر تقسيماً صينياً لكنها غير مدعومة غالباً في بيئات قواعد البيانات المُدارة بالكامل، وتعتمد على قواميس ثابتة تعجز عن تحليل المصطلحات الحديثة وأسماء العلامات التجارية.
  • خطوط معالجة خارجية (ETL): تصدير النص إلى خدمة Python تشغّل jieba أو spaCy لإدراج المسافات قبل حفظه. هذا النمط يضيف تعقيداً هندسياً ويزيد زمن الاستجابة ويعرّض البيانات لمخاطر الخروج من طبقة قاعدة البيانات.
  • قيود التقسيم القاموسي: حتى أفضل المحللات القائمة على القواعد تتعثر أمام الغموض الدلالي حين تحتمل سلسلة الأحرف ذاتها تقسيمات مختلفة حسب السياق.

كيف يحل AlloyDB AI المشكلة من الداخل؟

أعلنت Google Cloud عن دوال AlloyDB AI Functions، وعلى رأسها ai.generate()، التي تتيح استدعاء نماذج Gemini مباشرة من استعلام SQL. الفكرة الجوهرية أن المعالجة تحدث داخل محرك قاعدة البيانات دون نقل البيانات إلى خدمة خارجية.

يوفر هذا النهج ثلاث مزايا حاسمة. أولاً، انعدام حركة البيانات: كل عمليات التقسيم والتنظيف تجري ضمن حدود قاعدة البيانات، ما يقلص زمن الشبكة ويحافظ على الامتثال الأمني. ثانياً، الذكاء المدمج: لا حاجة لبناء أو صيانة خدمات مصغرة أو أطر تنسيق خارجية؛ المحرك نفسه ينسق الاستدعاءات. ثالثاً، المعالجة الدُّفعية عبر إجراءات PL/pgSQL المخزنة مع تجميع المصفوفات وتفكيكها باستخدام GENERATE_SERIES، ما يمنع إرهاق الذاكرة ويتجاوز تنافس الأقفال الصفية.

Advertisement

ما الجديد في دعم فهرس RUM؟

أشارت Google إلى إطلاق دعم فهرس RUM حديثاً ضمن AlloyDB، وهو فهرس متقدم للبحث النصي الكامل يتفوق على GIN في سيناريوهات الترتيب والفرز. الجمع بين RUM ودوال الذكاء الاصطناعي يعني أن المستخدمين يحصلون على تقسيم ذكي للنص الآسيوي مع أداء استعلام عالٍ على مجموعات بيانات ضخمة.

متى يناسبك هذا الحل؟

إن كنت تدير تطبيقاً يخدم أسواقاً صينية أو يابانية أو كورية وتحتاج بحثاً نصياً دقيقاً داخل PostgreSQL، فإن AlloyDB AI يختصر عليك بناء بنية تحتية معقدة. الحل مناسب بشكل خاص للمؤسسات التي تعمل على Google Cloud وتريد الاستفادة من Gemini دون مغادرة طبقة البيانات.

ℹ️

رأي Logicity

تحرك Google هنا يعكس توجهاً أوسع نحو دمج نماذج اللغة الكبيرة داخل محركات قواعد البيانات بدلاً من معاملتها كخدمات منفصلة. المنافسون مثل Amazon Aurora وAzure Database for PostgreSQL سيضطرون للرد؛ Aurora يقدم تكاملاً مع Bedrock لكنه لا يزال يتطلب تنسيقاً خارجياً في كثير من الحالات. بالنسبة لفرق DevOps التي تقيّم التكلفة، تجدر مقارنة تسعير AlloyDB (يبدأ من نحو 0.1 دولار لكل vCPU بالساعة حسب المنطقة) مع كلفة صيانة خطوط ETL وخدمات التقسيم المستقلة.

الأسئلة الشائعة

هل يمكن استخدام AlloyDB AI للبحث العربي أيضاً؟

العربية تستخدم مسافات بين الكلمات، لذا PostgreSQL التقليدي يتعامل معها أفضل. لكن ai.generate() قد يفيد في تحسين تصريف الجذور والمرادفات لرفع دقة البحث الدلالي.

ما الفرق بين AlloyDB وPostgreSQL العادي؟

AlloyDB خدمة مُدارة بالكامل من Google Cloud متوافقة مع PostgreSQL لكنها تستخدم بنية تخزين وحوسبة منفصلة توفر أداءً أعلى، إضافة إلى دوال الذكاء الاصطناعي المدمجة.

هل تدعم AlloyDB AI لغات أخرى غير CJK؟

نعم، دوال ai.generate() تستدعي Gemini الذي يدعم عشرات اللغات. الميزة الأبرز للغات CJK هي حل مشكلة التقسيم، لكن يمكن استخدامها لتحسين البحث الدلالي في أي لغة.

ما متطلبات تفعيل ai.generate() في AlloyDB؟

تحتاج إلى تفعيل Vertex AI API في مشروع Google Cloud وربط مثيل AlloyDB بنموذج Gemini عبر إعدادات AlloyDB AI، ثم استدعاء الدالة مباشرة من SQL.

ℹ️

هل تحتاج مساعدة في التطبيق؟

إن كنت تخطط لترحيل قاعدة بياناتك إلى AlloyDB أو دمج البحث متعدد اللغات في تطبيقك، تواصل مع فريق Logicity للحصول على استشارة تقنية مخصصة.

Advertisement
ع

عمر حسن

كاتب تقني وابتكار

أُنتِج هذا المقال بمساعدة الذكاء الاصطناعي وراجعه فريق التحرير في لوجيسيتي. اعرف المزيد في سياسة التحرير.

اقرأ أيضاً