我是azure数据湖的新手,目前正在使用数据工厂v2将数据从我的事务数据库移动到azure数据湖存储。
每个团队负责将数据移动到数据湖中。
我正在考虑拥有一个共享的元数据源(可能是所有读者都可以访问的表存储)。
"teamA/entity1" : [
"TeamA/Entity1/01-02-2018/0000/data.csv",
"TeamA/Entity1/01-01-2018/0000/data.csv",
]
"teamA/entity2" : [
"TeamA/Entity2/01-01-2018/1200/data.csv"
"TeamA/Entity2/01-01-2018/0600/data.csv"
"TeamA/Entity2/01-01-2018/0000/data.csv"
]
"teamB/entity3" : [
"TeamA/Entity3/01-01-2018/0600/data.csv"
"TeamA/Entity3/01-01-2018/0000/data.csv"
]
Data Lake在写入实际文件之前写入temporary files in the background。这可能会缓解这个问题,但我不确定这是否会100%避免冲突。
如果您愿意在一个工厂中安装管道,则可以使用内置的活动链接来允许数据工厂管理依赖关系。
我们通常写入“服务存储”,例如SQL服务器,而不是让powerbi直接访问数据湖商店,这可能有助于分离事物(也有利于DirectQuery等)。但是我还没有看到数据块支持,我敢打赌它类似于HDInsight的使用方式。
值得注意的是,当你发现Data Lake Store不是OLTP数据源时,这种事情并不是数据湖存储的意思,这个stackoverflow文章更详细地讨论了这个问题:Concurrent read/write to ADLA