问题标签 [adhoc-queries]
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.
sql - 问题格式化到人类时间
目前我正在尝试完善这个查询。我遇到的问题是使用 UNIX 命令将查询的时间从 timemodified 转换为 Human time。它出现在时代。我一直在尝试使用诸如 FROM_UNIXTIME(timestamp,'%a - %D %M %y %H:%i:%s') 之类的命令作为时间戳。作为参考,这是对 MariaDB 中包含的 moodle 服务器的临时查询。我期望的查询结果是,就我们得到的结果而言,没有任何变化,除了时间将采用月/日/年格式而不是当前格式。
amazon-web-services - 在 S3 之上创建临时分析的不同方法
我有一个数据湖AWS S3
。数据格式为Parquet
。每日工作量约为 70G。我想在这些数据之上构建一些临时分析。为此,我看到了 2 个选项:
- 用于
AWS Athena
通过 HiveQL 请求数据以通过AWS Glue
(Data Catalog) 获取数据。 - 将数据从 S3 移动到作为数据仓库的 Redshift 并查询 Redshift 以执行临时分析。
在我的情况下,进行 ah-hoc 分析的最佳方法是什么?有没有更有效的方法?上述选项的优缺点是什么?
附言
6 个月后,我要将数据从 S3 移动到 Amazon Glacier,以便在 S3/Redshift 中查询的最大数据量约为 13T
hadoop - 如何使用即席查询提高 Hive 的性能
免责声明:我是一名 RDBMS 人员,最近负责优化大数据系统。因此,我下面的观点和想法可能是幼稚的,本质上不是“大数据”。
问题: 我有一个大数据(Hive + HDFS)系统(目前有大约 1000 万条记录,预计在未来几年内会增长 - 每年大约 2500 万条记录),我们正在尝试在其上构建 adHoc 查询系统。目标是提供一个搜索系统,它可以让客户端提交具有多个过滤条件(where 条件)的查询,并且系统可以支持数据获取,理想情况下,log n 复杂度。我们正在寻找更多的搜索和过滤而不是执行聚合函数。
我知道 hive 不适合 adHoc 查询,而是用于批处理,但目前,我们不想替换 hive。在我的研究中,我认为 Impala 和 Drill 是很好的候选者(如果我遗漏了什么,请纠正我)但是两者似乎都押注并行查询执行而不是内存缓存和索引,并且更像是 Hive 的替代品而不是补充 Hive。
我正在考虑的解决方案:鉴于我们知道数据并且可以预测将经常过滤的列,我在想,构建一个外部缓存系统,该系统由以下两个组件组成,并且会更多地帮助这个案例:
基于 B-Tree / 跳过列表的列索引,它将过滤条件解析为 id 列表。(多列会有多个索引树)。多个过滤条件将需要经过一个交叉过程,这将导致最终的数据集。
基于 HashTable / Trie(更倾向于 HashTable)的索引,这将有助于将标识符解析为相应的 Hive 分区(或缓存键)。
使用以上两个,理论上,我们应该能够将给定的查询转换为 log n(优化搜索)中的标识符列表,然后通过仅搜索那些感兴趣的分区来优化实际检索。一个简单的基于 LRU 的缓存可以在“搜索系统”和实际 Hive 之间使用,以更快地检索数据。
问题: 如果您发现任何明显的问题,您能告诉我吗?您能提出任何替代方案吗?与这个想法相比,Impala/Drill 有明显的收益吗?(我更多的是寻找性能提升而不是易于构建)
提前致谢。
sql-server - 获取两个日期范围之间的重叠日期(在列中) - 无需创建数据库对象
我在Microsoft SQL Server 2016中有一个棘手的情况,其中我需要获取员工在 PayPeriod 中休假 (LOA) 的日期列表,其中包含固定的 PeriodStart 和固定的 PeriodEnd 列。
见下图(源数据集):
我在 5 行数据集中有 4 名员工。
PeriodStart 和 PeriodEnd 始终是固定的,其值分别为 12 月 15 日和 12 月 22 日(对于 2020 年)。我将每个员工的 LOA 开始日期和 LOA 结束日期放在不同的列中。源数据集在任何给定时间都只有一组 PeriodStart 和 PeriodEnd 日期。假设在上述情况下,始终是 12 月 15 日和 12 月 22 日。在其他情况下,将是 12 月 22 日和 12 月 29 日。但在给定时间只有一个范围。源数据集不能包含员工 X 的 12 月 15 日 - 12 月 22 日和员工 Y 的 12 月 22 日 - 12 月 29 日。
所需的输出如下:
这里的挑战是,我正在使用我们客户的查询生成器,它不能使用T-SQL对象,例如临时表 (#)、表变量 (@)、公用表表达式 (CTE)、用户定义函数甚至视图。
这纯粹是临时报告,您只能在其中创建派生表(或子查询)并拥有别名并将其用作数据集。这样的数据集可用于 JOIN 和其他常规内容。
例如:
派生表(或子查询) XYZ 是我的主要数据集。
我需要我想要的输出别名为 XYZ。
谁能帮我实现这一目标?
mongodb - 有没有更简单的方法/工具来查询 mongo 文档?
Mongo 是我们的 OLTP 数据库——我们确实有一些管道将数据从 Mongo 带到 OLAP 数据仓库以进行报告/设计。但是,有没有一种简单的方法可以直接在 Mongo 数据库上运行查询 - 我们每天都会收到 100 个即席请求,我们想探索是否有任何简单的方法(如果有工具)直接回答其中的一些请求查询 mongodb 而不是不断更新我们的管道和更改报告数据模型
sql - 所有未完成课程的用户的 SQL 临时报告
海刚!
我非常接近于找出一份报告,我可以临时运行以查找我们所有未注册课程的用户。我确实有一份针对尚未完成课程的已注册人员的报告,但是此搜索未找到甚至未注册的给定学生。
当前代码是
有什么想法吗??
database - MongoDB 中的所有查询都是临时的吗?
对不起,也许这个问题很愚蠢,但我无法弄清楚。MongoDB 中的所有查询都是临时的吗?还是可以在特殊情况下执行临时查询?