问题标签 [schemaless]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
106 浏览

hive - 使用 HBase 代替 Hive

今天我们使用 Hive 作为我们的数据仓库,主要用于批量/批量数据处理 - Hive 分析查询/连接等 - ETL 管道

最近我们面临一个问题,我们试图将基于 hive 的 ETL 管道公开为服务。该问题与 hive 的固定表模式性质有关。我们有一种情况,表模式不固定,它可能会改变:可以添加新列(在模式中的任何位置不一定在末尾)、删除和重命名。

在 Hive 中,一旦创建了分区,我想它们就无法更改,即我们不能在旧分区中添加新列并仅用数据填充该列。我们必须使用新模式重新创建分区并在所有列中填充数据。但是,新分区可以有新的架构,并且会包含新列的数据(不确定是否可以在架构中的任何位置插入新列?)。尝试从旧分区(未修改)读取新列的值将返回 NULL。

我想知道我是否可以在这种情况下使用 HBase,它会解决我的上述问题吗?1. 在架构中的任何位置插入新列,删除列,重命名列 2. 在新列中回填数据,即旧数据(在旧分区中)仅在新列中填充数据,而不重新创建分区/重新填充数据其他列。

我知道 Hbase 是无模式(无模式)的,即每条记录/行可以有不同数量的列。不确定 HBase 是否有分区的概念?

0 投票
1 回答
153 浏览

django - 对于像 mongodb 这样的无模式数据库,对于任何框架,如何跳过 MVC 或 MVT 的 MODEL 部分。特别是DJANJO

Mongodb 是一个无模式的概念。所以对于 django 或任何其他框架,我可以提前跳过设计模型部分(MVC 或 MVT)。给我建议

由于 Mongodb 是无模式的,所以我想根据我的要求编辑我的数据库。这就是我选择 MongoDB 的原因。如果我设计数据库蓝图(模型),那么高级有什么用。我是新手所以请告诉我在这种情况下我应该怎么做。

0 投票
1 回答
926 浏览

java - Apache Ignite 查询/索引

我有一个关于使用 Apache Ignite 进行索引的特殊问题。

我需要在不“知道”架构的情况下查询缓存。因为有时我没有 java 类定义,所以没有可用的注释。但是 Apache Ignite 似乎需要注解来识别字段。

有没有办法在运行时定义可查询字段?

我问它是因为我正在构建一个与技术无关的应用程序,并且我在运行时插入了专门的类。对我来说,另一个问题是扩展 Apache Ignite 的类并定义假字段只是为了使“字段”(假设它不是原始字段......)可以从 Apache Ignite 中查看。

有人有同样的“问题”吗?

原始类命令:

Ignite SQL 的扩展命令类使用:

上面的代码对我来说很好。

0 投票
1 回答
670 浏览

json - 通过 mongoose 在 mongoDB 中创建无模式集合

我有以下猫鼬模式记录:

在我的代码中,我正在这样做:

因为 lmr 是一个 JSON 对象。

这将生成一个具有我提供的名称的 mongodb 数据库,但该集合中的记录仅包含:

JSON 对象无处可见。如何在架构中的任何包装器中获取 JSON 对象?

0 投票
1 回答
1714 浏览

arrays - 使用 Apache Nifi 将 JSON 行转换为 JSON 数组

我有一个包含(无模式)JSON Lines 编码数据的文件。

例如:

我想使用 NIFI 将其转换为 JSON 数组:

0 投票
2 回答
895 浏览

xml - 在没有字段规范的情况下在 SOLR 7 上索引整个 XML 文档

我会尝试放置一个 xml 文档SOLR(现在我使用的是 7.3.0 版本)而不在 data-config 中设置特定字段或放置一个标签来获取所有其他标签。我尝试使用无模式模式,但没有得到任何文档。是否有可能以某种方式做这件事,或者SOLR无法处理?

这是我的 SOLR document.xml 的一个示例。我想检测所有标签并取回相对值而不编辑任何字段。就像我说的,我尝试了无模式模式,但它没有用。

我期望的结果是这样的:

0 投票
1 回答
727 浏览

mongodb - No SQL 中的 schema less 是什么意思?

我只是一个初学者No SQL,在学习的时候我看到了它的无模式。是的,我知道如果我必须插入数据,则不需要数据结构(无需创建表或集合),但除此之外,在无模式No SQL的情况下它与 SQL 有何不同?在我可以添加新字段,也可以这样做。SQLtablequeriesNo SQL

如果我想念这个概念,请告知并帮助我得到这个答案。提前致谢

0 投票
2 回答
145 浏览

indexing - 如何在 SOLR 中为无模式集合索引空字段?

如何获取 SOLR 索引中的空字段?我正在使用 solr 7.2.0

我正在使用无模式 SOLR 尝试将所有内容索引为字符串,但对于具有空字段的文件,这些字段不会被索引。有没有办法让他们出现?

例如第 1 列显示为

我也试图让 col2 出现。在我的 solrconfig.xml 我有这个

我从我的配置中删除了任何删除空白处理器的痕迹。我已经多次重新加载和删除/重新创建集合。有解决方案吗?

0 投票
1 回答
841 浏览

c# - 将架构添加到 Avro 片段 .Net

问题如下。

脚步:

  1. 应用程序将一些自定义对象转换为 avro 片段(字节数组);
  2. 这个 avro 片段被发送到 EventData 对象中的事件中心;
  3. 事件中心触发一个从事件中心接收 Mcrosoft.ServiceBus.Messaging.EventData 的 azure 函数;
  4. 我可以提取 EventData 的主体,它包含点 1 的 avro 片段(字节数组)。

我正在使用 Microsoft.Hadoop.Avro。

我有原始自定义对象的架构(第 1 点),所以我尝试创建一个从 avro 片段读取的通用读取器,但我收到以下错误:

流中的 Avro 对象容器无效。无法识别标头。

似乎 Microsoft.Hadoop.Avro 只能管理完整的 avro 文件(标题 + 架构 + 正文)而不是 avro 片段(正文)。

使用 java avro-tool 我可以将模式添加到 avro 片段。.Net 或 .Net Core 也可以吗?我能怎么做?

为简单起见,我将来自事件中心的 EventData 替换为相关的 avro 文件。

0 投票
0 回答
62 浏览

csv - 在 Solr 中索引具有不同标题的多个 CSV 文件

我正在尝试在 Solr 索引中使用不同的“模式”索引多个 CSV 文件。这些 CSV 中可能存在一些常见的架构元素(标题列)。我的要求是能够在这些 CSV 以及其他项目中提供搜索。

  • 据我了解,索引的一种方法是将整个 CSV 视为一个巨大的文本字符串并对其进行索引。如果我以这种方式编制索引,我不确定哪些可搜索性方面会受到影响。
  • 另一种方法基本上是定义一个通用模式,然后以编程方式逐行从文档和索引中提取列,但需要注意的是,如果文件没有任何通用模式,我可能无法对其进行索引。(顺便说一句,这最后一部分对我来说可能不是首发,但现在让我们尽情享受吧)

还有其他方法吗?一个人比另一个人有什么优势吗?

顺便说一句,我尝试了无模式模式,但它对我不起作用。我可以索引第一个文件,但是当我执行下一个文件并且它有一些不同的列时,它会返回一个错误。这是预期的行为还是我做错了什么?

感谢任何指点,谢谢!

更新:无模式模式的错误是“无效的日期格式”。在做了一些研究之后,这似乎是一个与我想象的不同的问题,因为 Solr 自动检测数据是一个日期,它希望它是 UTC 格式而不是它。我有什么办法可以关闭日期的自动检测吗?