2015-06-23 22 views
5

Kayıt alanının JSON benzeri olduğu BigQuery için bir şema var, ancak JSON'daki anahtarlar dinamiktir, yani yeni anahtarlar yeni verilerle ortaya çıkabilir ve nasıl olduğunu bilmek zor Toplamda birçok anahtar var. Anlayışım gereği, böyle bir tablo için BigQuery kullanmak mümkün değildir, çünkü kayıt alanı türünün şeması açık bir şekilde tanımlanmalı veya bir hata atacaktır.BigQuery - Kayıt Alanında Esnek Şema

JSON_EXTRACT işlevini JSON (metin) alanı ile ayrıştırılacak verileri sorgularken kullanmanın diğer bir alternatifi de budur. BigQuery'deki bir tabloda dinamik iç içe geçmiş şemalara sahip olmanın başka bir yolu var mı?

cevap

4
Ortak alanlar için sabit bir şema oluşturulabilir ve bunları geçersiz olarak ayarlayabilirsiniz JSON'un geri kalanını depolamak ve veri sorgulamak için JSON İşlevlerini kullanmak için tip dizgisi olarak bir sütun kullanılabilir.

Her zaman bir JSON nesnesi olarak ek ham yapısal olmayan verileri tutan, bizim tabloya bir meta sütun var.

Şu anda bir JSON belgesi için uygun olan bir dize sütununda 2 megabayt kadar saklayabileceğinizi lütfen unutmayın.

Verileri işlemeyi kolaylaştırmak için, JSON_EXTRACT kullanan sorgularınızdan görünümler oluşturabilir ve diğer daha basit sorgularda görünüm tablosuna bakabilirsiniz.

Ayrıca, akışa eklenen ekleme aşamasında, uygulamanız JSON'u uygun tablolara göre degerlendirebilir.

+0

Cevabınız için teşekkür ederiz! –