Check out what’s new from Firebase@ Google I/O 2021, and join our alpha program for early access to the new Remote Config personalization feature. Learn more

أنواع البيانات المدعومة

تصف هذه الصفحة أنواع البيانات التي يدعمها Cloud Firestore.

أنواع البيانات

يسرد الجدول التالي أنواع البيانات التي يدعمها Cloud Firestore. يصف أيضًا ترتيب الفرز المستخدم عند مقارنة القيم من نفس النوع:

نوع البيانات امر ترتيب ملاحظات
مجموعة مصفوفة حسب قيم العنصر

لا يمكن أن تحتوي المصفوفة على قيمة مصفوفة أخرى كأحد عناصرها.

داخل المصفوفة ، تحتفظ العناصر بالموضع المخصص لها. عند فرز مصفوفتين أو أكثر ، يتم ترتيب المصفوفات بناءً على قيم عناصرها.

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

على سبيل المثال ، [1, 2, 3] < [1, 2, 3, 1] < [2] . المصفوفة [2] لها أكبر قيمة للعنصر الأول. تحتوي المصفوفة [1, 2, 3] على عناصر مساوية للعناصر الثلاثة الأولى من [1, 2, 3, 1] لكنها أقصر في الطول.

قيمة منطقية false < true -
بايت ترتيب البايت حتى 1048487 بايت (1 ميجابايت - 89 بايت). يتم أخذ أول 1500 بايت فقط من خلال الاستعلامات.
التاريخ و الوقت ترتيب زمني عند تخزينها في Cloud Firestore ، تكون دقيقة فقط بالميكروثانية ؛ يتم تقريب أي دقة إضافية إلى أسفل.
رقم النقطة العائمة رقمي دقة مزدوجة 64 بت ، IEEE 754.
النقطة الجغرافية عن طريق خطوط الطول ، ثم خطوط الطول في الوقت الحالي لا نوصي باستخدام نوع البيانات هذا بسبب قيود الاستعلام. من الأفضل بشكل عام تخزين خطوط الطول والعرض كحقول رقمية منفصلة. إذا كان تطبيقك يحتاج إلى استعلامات جغرافية بسيطة تعتمد على المسافة ، فراجع استعلامات Geo
عدد صحيح رقمي 64 بت ، موقع
خريطة بالمفاتيح ثم بالقيمة

يمثل كائنًا مضمنًا في المستند. عند فهرستها ، يمكنك الاستعلام عن الحقول الفرعية. إذا استبعدت هذه القيمة من الفهرسة ، فسيتم أيضًا استبعاد جميع الحقول الفرعية من الفهرسة.

يتم ترتيب المفاتيح دائمًا. على سبيل المثال ، إذا كتبت {c: "foo", a: "bar", b: "qux"} يتم فرز الخريطة حسب المفتاح وحفظها كـ {a: "bar", b: "qux", c: "foo"} .

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

{a: "aaa", b: "baz"}
{a: "foo", b: "bar"}
{a: "foo", b: "bar", c: "qux"}
{a: "foo", b: "baz"}
{b: "aaa", c: "baz"}
{c: "aaa"}

باطل لا أحد -
المرجعي حسب عناصر المسار (المجموعة ، معرف المستند ، المجموعة ، معرف المستند ...) على سبيل المثال ، projects/[PROJECT_ID]/databases/[DATABASE_ID]/documents/[DOCUMENT_PATH] .
سلسلة نصية ترتيب البايت المشفر UTF-8 حتى 1048487 بايت (1 ميجابايت - 89 بايت). يتم أخذ أول 1500 بايت فقط من تمثيل UTF-8 في الاعتبار من خلال الاستعلامات.

ترتيب نوع القيمة

عندما يتضمن طلب بحث حقلاً به قيم من أنواع مختلطة ، يستخدم Cloud Firestore ترتيبًا محددًا يعتمد على التمثيلات الداخلية. توضح القائمة التالية الترتيب:

  1. القيم الفارغة
  2. القيم المنطقية
  3. القيم الصحيحة والقيم العائمة ، مرتبة بترتيب رقمي
  4. قيم التاريخ
  5. قيم السلسلة النصية
  6. قيم البايت
  7. مراجع Cloud Firestore
  8. قيم النقطة الجغرافية
  9. قيم صفيف
  10. قيم الخريطة