Rockset如何在没有模式的情况下插入数据?我所有的数据都必须放在一个表中吗?例如,在插入诸如患者注册,入院,出院,转移,问题,药物,程序之类的数据的情况下,所有这些数据都可以放在一个地方而不创建模式吗?
我正在跟进关于linkedin的讨论之一。公司首席执行官共享链接的地方 https://rockset.com/blog/using-smart-schema-to-accelerate-insights-from-nested-json/ 这是关于以json格式插入原始数据,而不必担心表结构。
答案 0 :(得分:2)
感谢您的提问。 Rockset是一项技术,它允许您不使用任何模式来摄取数据,但是随后可以对该表进行全功能的强模式SQL查询。数据始终有一个架构,表中的数据决定了该架构。我们称之为强动态模式。
以下是有关我们如何做的一些细节的概述: https://rockset.com/blog/dynamic-typing-in-sql/
摘要与传统SQL数据库不同,传统SQL数据库将模式与表中的列相关联,Rockset将模式与列中的每个单独值相关联。表中名为“邮政编码”的列的值可以是整数或字符串。如果在表上执行“描述架构”,您将看到该列的数据值的x%是整数,而y%是字符串。
现在,如果您运行查询
select *
from tablename
where zipcode = 48802
该查询将返回邮政编码为整数且精确等于94402的所有那些记录。
如果您运行查询
select *
from table
where zipcode = 'NW84EU'
它将返回邮政编码为字符串“ NW894U”的所有行