ऐसे डेटा टाइप जिनके साथ PostgreSQL कनेक्टर काम करता है

इस पेज पर, Cloud Firestore के साथ काम करने वाले डेटा टाइप के बारे में बताया गया है.

डेटा टाइप

यहां दी गई टेबल में, Cloud Firestore के साथ काम करने वाले डेटा टाइप की सूची दी गई है. इसमें एक ही तरह की वैल्यू की तुलना करते समय इस्तेमाल किए गए क्रम के बारे में भी बताया गया है:

डेटा टाइप क्रमित करें नोट
सरणी तत्व की वैल्यू के हिसाब से

किसी ऐरे में, ऐरे की वैल्यू को उसके एलिमेंट के तौर पर शामिल नहीं किया जा सकता.

किसी कलेक्शन में, एलिमेंट को असाइन की गई पोज़िशन बनी रहती है. दो या उससे ज़्यादा ऐरे को क्रम से लगाते समय, ऐरे को उनके एलिमेंट की वैल्यू के आधार पर क्रम से लगाया जाता है.

दो ऐरे की तुलना करते समय, हर ऐरे के पहले एलिमेंट की तुलना की जाती है. अगर पहले एलिमेंट बराबर हैं, तो दूसरे एलिमेंट की तुलना की जाती है. यह प्रोसेस तब तक चलती है, जब तक कोई अंतर नहीं मिल जाता. अगर किसी ऐरे में तुलना करने के लिए एलिमेंट नहीं बचे हैं, लेकिन वह उस पॉइंट तक बराबर है, तो छोटे ऐरे को बड़े ऐरे से पहले क्रम में लगाया जाता है.

उदाहरण के लिए, [1, 2, 3] < [1, 2, 3, 1] < [2]. ऐरे [2] में पहले एलिमेंट की वैल्यू सबसे ज़्यादा है. ऐरे [1, 2, 3] में, [1, 2, 3, 1] के पहले तीन एलिमेंट के बराबर एलिमेंट हैं. हालांकि, इसकी लंबाई कम है.

बूलियन false < true
बाइट बाइट ऑर्डर ज़्यादा से ज़्यादा 1,048,487 बाइट (1 MiB - 89 बाइट). क्वेरी में सिर्फ़ पहले 1,500 बाइट इस्तेमाल किए जाते हैं.
तारीख और समय समय के हिसाब से Cloud Firestore में सेव किए जाने पर, यह सिर्फ़ माइक्रोसेकंड तक सटीक होता है. इससे ज़्यादा सटीक होने पर, इसे राउंड डाउन कर दिया जाता है.
फ़्लोटिंग-पॉइंट नंबर अंक IEEE 754 के मुताबिक, 64-बिट डबल प्रिसिशन, जिसमें (नॉर्मलाइज़्ड) NaN और +/-Infinity शामिल हैं.
भौगोलिक पॉइंट पहले अक्षांश और उसके बाद देशांतर के हिसाब से फ़िलहाल, हम इस डेटा टाइप का इस्तेमाल करने का सुझाव नहीं देते, क्योंकि क्वेरी करने से जुड़ी सीमाएं हैं. आम तौर पर, अक्षांश और देशांतर को अलग-अलग संख्या वाले फ़ील्ड के तौर पर सेव करना बेहतर होता है. अगर आपके ऐप्लिकेशन को दूरी के हिसाब से सामान्य जियोक्वेरी की ज़रूरत है, तो जियो क्वेरी देखें
पूर्णांक अंक 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 कोड में बदले गए बाइट का क्रम ज़्यादा से ज़्यादा 1,048,487 बाइट (1 MiB - 89 बाइट). क्वेरी, UTF-8 फ़ॉर्मैट में मौजूद सिर्फ़ पहले 1,500 बाइट को ध्यान में रखती हैं.
वेक्टर डाइमेंशन के हिसाब से और फिर हर एलिमेंट की वैल्यू के हिसाब से ज़्यादा से ज़्यादा 2048 डाइमेंशन एम्बेड किए जा सकते हैं. ज़्यादा डाइमेंशन वाले वेक्टर सेव करने के लिए, डाइमेंशन कम करने की तकनीक का इस्तेमाल करें.

वैल्यू टाइप के हिसाब से क्रम लगाना

जब किसी क्वेरी में अलग-अलग तरह की वैल्यू वाला फ़ील्ड शामिल होता है, तब Cloud Firestore इंटरनल रिप्रेजेंटेशन के आधार पर, एक तय क्रम का इस्तेमाल करता है. यहां दी गई सूची में, क्रम दिखाया गया है:

  1. शून्य वैल्यू
  2. बूलियन वैल्यू
  3. पूर्णांक और फ़्लोटिंग-पॉइंट वैल्यू, संख्या के हिसाब से क्रम में लगाई गई हैं
  4. तारीख की वैल्यू
  5. टेक्स्ट स्ट्रिंग वैल्यू
  6. बाइट वैल्यू
  7. Cloud Firestore रेफ़रंस
  8. भौगोलिक पॉइंट वैल्यू
  9. ऐरे वैल्यू
  10. वेक्टर एम्बेडिंग
  11. मैप की वैल्यू

संख्या के हिसाब से क्रम में लगाना

Cloud Firestore सभी संख्यात्मक वैल्यू (Integer और Floating point) को एक-दूसरे के साथ इंटरलीव करके क्रम से लगाता है. फ़्लोटिंग पॉइंट की तुलना, IEEE 754 के कुल क्रम के हिसाब से की जाती है. हालांकि, इसमें एक खास अंतर यह है कि Cloud Firestore सभी NaN वैल्यू को सामान्य करता है और इसे -Infinity से कम मानता है.