问题标签 [data-lake]
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.
c# - 我需要在 SSIS 中获取数据湖文件的文件最后修改日期
我有一个 SSIS 任务,它从 Azure Data Lake 读取 JSON 文件,使用脚本任务中的反序列化命令对其进行解析,并将它们的副本创建为本地 SQL Server 中的表。
这进展顺利,但非常缓慢。导入一个目录需要6个小时,而且目录很多。
所以我决定以一种渐进的方式来做这个。
起初,我使用条件拆分来避免将旧记录写入本地 SQL 服务器,但这仍然涉及读取整个文件的时间成本。条件拆分是一个有趣的组件,我观察到它只是无缘无故地跳过了一些记录。不好。
那么,为什么不跳过我之前导入的整个文件呢?但为此,我需要获取我正在处理的文件的最后修改日期。
现在我知道有一些 .Net 方法可以在纯 c# 中执行此操作(使用 .NET SDK 在 Azure Data Lake Storage Gen1 上进行文件系统操作),但由于我使用的是 SSIS 的脚本组件,因此我已经与 Data Lake 建立了有效连接。应该容易得多吧?
但我找不到办法,我很感激这里的任何指导。
干杯
business-intelligence - 我是否跟踪数据湖中数据的更改?
最近我发现了数据湖世界,我打算用 ADL 建立一个数据湖。我不确定的一件事是数据湖应该如何跟踪随时间的变化/处理来自源的不同版本。
我遇到过声称数据湖按原样提供数据的站点,其他状态是数据应该加时间戳或文件夹结构应该反映时间戳。
无论如何,任何最佳实践?
干杯!
apache-spark - AWS Glue 附加到 paruqet 文件
我目前正在设计 AWS 支持的数据湖。
我现在拥有的:
- 上传到 s3 的 XML 文件
- AWS Glue 爬虫构建目录
- AWS ETL 作业转换数据并以 parquet 格式保存。
每次 etl 作业转换数据时,它都会创建新的 parquet 文件。我认为存储数据的最有效方法是单个 parquet 文件。是这样吗?如果是这样如何实现这一点。
自动生成的作业代码:https ://gist.github.com/jkornata/b36c3fa18ae04820c7461adb52dcc1a1
pyspark - AWS Glue Spark 作业无法支持带有双引号的大写列名称
问题陈述/根本原因:我们正在使用 AWS Glue 将数据从生产 PostGress DB 加载到 AWS DataLake。Glue 在内部使用 Spark 作业来移动数据。然而,我们的 ETL 过程失败了,因为 Spark 只支持小写的表列名,不幸的是,我们所有的源 PostGress 表列名都采用 CamelCase 格式并用双引号括起来。
例如:我们在 PostGress DB 中的 Source 表列名称是“CreatedDate”。Spark 作业查询正在查找 createddate,但由于找不到列名而失败。因此,火花作业查询需要准确查找“CreatedDate”才能从 PostGress DB 中移动数据。这似乎是 Spark(因为它只支持小写的表列名)和 PostGress(使用双引号创建的列名在其余生中必须双引号)的固有限制。
参考链接: https : //docs.aws.amazon.com/athena/latest/ug/tables-databases-columns-names.html PostgreSQL 列名是否区分大小写?
评估的解决方案: 1. 我们将无法将列名从 CamelCase 重命名为小写,因为这将需要对所有下游系统进行更大的更改。2. 我们正在尝试重写/调整 Glue 的自动生成的 Spark 代码,看看我们是否可以让它与双引号、非小写的源表列名一起工作。
以前有没有人遇到过这个问题,您是否尝试过调整自动生成的 Spark 代码以使其正常工作?
azure-data-lake - 在 DataLake 中创建一个文件,并使其在 2 分钟后过期
我正在使用 Data Lake Gen 1,我想创建一个文件并将过期时间设置为创建后 2 分钟。
我正在使用这种方法:
像这样:
我找不到参数long expiryTime是如何工作的。在 MSDN 中,它说“它的解释取决于用户通过的 ExpiryOption”。
我不明白的是这个值很长:它代表什么:秒,滴答声,小时......?
amazon-web-services - 从 AWS DataLake 到 RDS 的 ETL
我对 DataLakes 比较陌生,我正在对 AWS 上的一个项目进行一些研究。
我创建了一个 DataLake 并从 Glue Crawlers 生成了表,我可以在 S3 中查看数据并使用 Athena 对其进行查询。到目前为止,一切都很好。
需要将存储在数据湖中的部分数据转换为 RDS,以便应用程序读取数据。从 S3 DataLake 到 RDS 的 ETL 最佳解决方案是什么?
我遇到的大多数帖子都在谈论从 RDS 到 S3 的 ETL,而不是相反。
amazon-web-services - Splunk 迁移到 S3 DataLake
我们正在考虑将 Splunk 作为我们的数据存储区,并着眼于由 S3 支持的 AWS Data Lake。
将数据从 Splunk 迁移到 S3 的过程是什么?我已经阅读了很多关于将数据从 Splunk 存档到 S3 的文档,但不确定这是否将数据存档为可用格式,或者是否需要将其恢复为某种存档格式以恢复 splunk 本身?
encryption - 为大数据系统设计数据供应策略?
我正在大数据系统中设计数据供应模块。数据供应描述为
将数据从数据湖提供给下游系统的过程称为数据供应;它为数据消费者提供对数据湖中数据资产的安全访问,并允许他们获取这些数据。数据交付、访问和出口都是数据供应的同义词,可以在此上下文中使用。
在大数据的数据湖开发中。我正在寻找设计这个模块的一些标准,包括如何保护数据,如何识别一些数据是来自系统的数据等。我在谷歌上搜索过,但与该关键字相关的结果并不多。你能给我一些建议或你自己与这个问题相关的经验吗?每一个答案都值得赞赏。
谢谢!
azure - 搜索存储在 Azure Data Lake 中的数据
我有以下用于构建数据湖的用例(例如在 Azure 中):
我的组织与破产的公司打交道。一旦公司破产,它需要将所有数据交给我们,包括结构化数据(例如 CSV)以及半结构化和非结构化数据(例如 PDF、Word 文档、图像、JSON、.txt 文件等)。 )。拥有数据湖在这里会有所帮助,因为数据量可能很大且不可预测,而 Azure 数据湖似乎是一种成本相对较低且可扩展的存储解决方案。
但是,除了存储所有这些数据之外,我们还需要为业务用户提供一个工具,使他们能够搜索所有这些数据。我可以想象两种搜索类型:
- 搜索特定文件(使用文件名或部分文件名作为搜索条件)
- 搜索所有文本文件(word 文档、.txt 和 PDF)并识别符合搜索条件的文件(例如,正在搜索的特定短语)
是否有任何开箱即用的工具可以使用 Azure Data Lake 作为数据源,使用户能够执行此类搜索?
mysql - AWS Datalake Formation MySQL 蓝图错误,sql_mode only_full_group_by 不兼容
使用 AWS DataLake Formation 蓝图将 MySQL 数据库导入 S3。使用库存蓝图导入数据。但该作业因以下错误和堆栈跟踪而失败。
Expression #4 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'DBName.TTT.Num' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
我知道我可以通过在我的 MySQL 数据库中禁用“完整分组依据”来解决这个问题。但是 AWS 人员不应该知道不要在 select 子句中包含不在 group by 中的列,或者将 select 子句中的所有列添加到 group by?
另外,为什么它只发生在几张桌子上,而不是全部?
附近有任何 AWS 内部 DataLake 开发人员吗?