我们有一个非常大的MongoDB实例,带有分片集合.它已经达到了这样的程度,即依靠MongoDB查询功能(包括聚合框架)来洞察数据变得过于昂贵.
我四处寻找可以使数据可用且更容易使用的选项,并且已经找到了两个有希望的选择:
我们希望能够使用类似SQL的语法来分析我们的数据,并且我们希望接近实时访问数据(几分钟的延迟很好,我们只是不想等待整个MongoDB一夜之间同步).
据我所知,对于选项2,可以使用此https://github.com/mongodb/mongo-hadoop将数据从MongoDB移动到Hadoop集群.
我看起来很高,但我很难找到类似的解决方案,让MongoDB进入AWS Redshift.从亚马逊的文章来看,似乎正确的方法是使用AWS Kinesis将数据导入Redshift.也就是说,我找不到任何类似的东西的例子,我找不到任何库或连接器来将数据从MongoDB移动到Kinesis流中.至少没有什么看起来很有希望.
有没有人做过这样的事情?
我们有一个内容交付应用程序,在该应用程序中,我们在JSON上放下了动态结构的对象。React Native使用JSON,并从这些对象构建用户界面。
这是我现在正在使用的架构:
const CardSchema = {
name: 'Card',
properties: {
id: 'string',
cardSubType: 'string',
cardType: 'string',
state: 'string',
contentType: 'string',
context: {},
},
};
Run Code Online (Sandbox Code Playgroud)
领域context
是动态的一部分。它基本上是一个对象,可以具有任意多个字段。我们在编译时不知道其中有哪些字段。
我们想使用realm.js来持久化我们的数据,因为它既好又快,并且我们99%的对象都可以在编译时进行模块化。
我们要在其中存储任何对象的就是这个字段(和其他几个字段)。
Realm for React Native是否可以做到这一点?还是我需要将其建模为字符串并在存储时进行序列化并在加载时进行反序列化?