教 程 目 录
集中位置元数据
在本节中,我们将学习如何集中到Talend Studio中的文件位置元数据进行数据集成平台.
在本章进一步前进之前,我们将理解为什么我们将使用位置文件.
要为位置文件读取和写入数据,我们需要集中元数据.
要描述 tfileInputTopositional,TfileOutportPositional,和 TfileInputms本位置组件的属性,我们必须使用文件位置元数据.
从开头创建文件位置连接:
存储库→元数据→文件位置

注意:要使用我们作业中分隔的集中文件,请转到其属性排版的必要组件的基本设置视图,作为打开文件元数据设置窗口的构建.
然后新位置文件窗口将打开文件连接和架构定义的四个步骤:
定义一般属性
定义文件路径和格式
定义文件解析参数
检查和自定义文件架构
step1:定义常规属性
在第一步中,我们将填充所有必要的细节,如 name,,它是一个强制性字段,以及如果我们想要更具体的情况,请和描述字段.
我们还可以管理项目设置对话框中存储库项目的版本和状态字段.
单击路径字段旁边的 select 按钮以选择文件位置节点下的文件夹以保存我们的新创建的文件连接.
注意:如果我们编辑现有连接,我们无法选择文件夹,但我们可以随时将其拖放到新文件夹.
填写常规属性的所有细节后,单击下一个按钮.

step2:定义文件路径和格式
在下一步中,我们将点击浏览按钮来定位来自本地系统的文件.
例如,我们将从我们的系统中选择员工info.txt 文件.

要定义文件列属性,请单击文件预览并将标记设置为针对标尺,橙色箭头有助于我们更改位置.
我们可以在上面的图像中看到,字段分离器和标记位置字段自动填充.
字段分隔符:以显示加载文件列的长度,使用字段分隔符,并显示分隔符之间的字符数.
[*]:星号符号表示行上的所有剩余字符,它从先前的标记位置开始,我们也可以更改图形以正确识别列.
maker位置:此字段用于显示标尺上每个标记的确切位置,我们还可以更改图形以准确地识别位置.
用于移动标记,按住箭头并将其拖动到新位置.
要删除标记,请握住箭头并将其拖动到尺寸,直到出现(x)图标.
step3:定义文件解析参数
在此步骤中,我们介绍了文件解析变量以正确恢复文件模式.
预览部分在标记位置显示文件列.


如果需要识别列长度,我们可以在字段分隔符中修改图形
中的图形
如果行分隔符我们的文件不是标准EOL [终端],我们可以从行分隔符中选择自定义字符串 下拉列表,并在对应字符中写下字符串
在行中跳过部分,我们可以更改给定参数,如标题和页脚.

要查看新设置影响,请查看文件查看面板,然后检查 set setling行作为列名框以将第一个解析的行转换为标签架构列.
也,请参阅要跳过的标题行的数量增加1.
要查看查看器的效果和结果视图,请单击刷新预览按钮.
之后,单击下一个按钮.
step4:检查和自定义文件架构
在最后一步中,我们将检查并自定义文件架构:
要自定义文件模式,请检查类型列中的数据类型是否正确或不正确,并且在架构的描述部分中,我们可以修改在实际文件中提到的列名称.
猜测按钮用于再次生成架构如果位置文件模式更改,并确保在自定义架构时,猜测功能可能无法保持更改.
之后,点击 finish 按钮,正如我们在下面的图片中看到:
要查看Talend Studio中的新创建的元数据:
存储库→元数据→文件位置→员工
要将元数据重用为新组件或现有组件,只需从存储库的元数据节点拖动文件连接或架构,并将其删除到"设计工作区"窗口.
要修改现有文件连接:

为现有文件连接添加新架构:

本文地址:https://www.itbaoku.cn/tutorial/cn_talend-talend_centralizing_positional_metadata.html
相关问答
我有一些我需要在talend中转移的数据.这是一个样本: brandname,metric,value A,xyz,2 B,xyz,2 A,abc,3 C,def,1 C,ghi,6 A,ghi,1 现在,我需要在公制列上枢转数据: brandname,abc,def,ghi,xyz A,3,null,1,2 B,null,null,null,2 C,null,1,6,null 目前,我正在使用tpivottocolumnsdelimimimimited将数据旋转到文件并从该文件中读取.但是,必须将数据存储在外部文件和回报上是混乱且不必要的开销. 有没有办法在不写入外部文件的情况下使用talend进行此操作?我尝试使用tdenformize,但据我了解,它将将行返回为1列,这不是我所需的.我还在talendexchange中寻找了一些第三方组件,但找不到任何有用的东西. 谢谢您的帮助. 解决方案 假设您的指标是固定的,则可以将其名称用作输出的列.执行枢轴的解决方案有两个部分:首先,将每个输入 - 行in的值转置到输出 - 行out和第二,A tAggregate中的A tMap中地图的输出行,根据布兰特. 对于TMAP,您必须像这样有条件地填充列,示例的示例名为" ABC": out.abc = "abc".equals(in.metr
)
我有这种数据: 我需要使用talend将这些数据转载于这样的东西: 帮助您将不胜感激. 解决方案 dbh的建议确实可以起作用,但我没有尝试. 但是,我还有另一个解决方案,该解决方案不需要更改输入格式,并且不太复杂而无法实现.实际上,这项工作只有2个转换组件(TDENFARGALATE和TMAP). 工作看起来如下: 解释: 您的输入是从CSV文件读取的(可能是数据库或任何其他类型的输入) tDenoraligalizate组件将基于ID列(第1列)上的值(列2)的列值(第2列)构成范围,将字段与特定的定界符分离(";"在我的情况下),如2行所示. tmap:通过使用Java的String.split()方法将汇总的列分为多个列,并将结果数组扩展到多个列中. TMAP应该喜欢这样: 由于Talend不接受存储数组对象,因此请确保将拆分字符串存储在对象格式中.然后,将该对象施加到地图右侧的数组中. 该方法应该给您预期的结果. 重要: tnormize可能会使行洗牌,这意味着对于更大的输入,您可能会遇到未分类的输出.确保在需要时对其进行排序或使用TdenoralalizeStredrow. tnormize类似于聚合组件,这意味着它在处理前会扫描整个输入,这导致可能的性能问题特别大(数百万记录). 您的输入可能是错误的
)
我面临Mongo DB连接的问题. 我已经成功地导入了tmongo组件,然后将其复制到lib/java文件夹中,我的mongo db作业成功运行了,但问题即使我提供了一些问题,即使我提供了一些问题,但我提供了一些问题.伪造的服务器路径(IP)和假货端口,我的工作正在运行,没有错误,这给了我1行而没有数据.右IP和端口也是如此. 我如何解决它. 解决方案 我认为连接不起作用.正如您必须知道的那样,MongoDB检查连接是否在执行查询时实际上是否有效. (是的,当您连接到它时,它不会检查成功的连接). 我建议通过遵循以下步骤来添加talend中存在的mongoDB组件: 为MongoDB提供的组件是: tmongodbinput,tmongodboutput,tmongodbconnection等 或者您可以从 http://www.talendforge.org/exchange/下载组件并搜索Mongo而不是使用TALEND大数据.但是我建议将talend用于大数据. 组件将被拉开,将其拉开相同.在talend大数据中,您会在组件文件夹中找到组件. 将这些未拉链的组件复制到TOS的安装路径. C:talendtos_di-win32-r84309v5.1.1pluginsorg.talend.designer.components.local
)
我试图在talend中实施登录.因此,我使用普通组件做了一份工作,我通过Twarn和TDIE记录了错误,信息和调试. 使用logcatcher,我将日志隔离为调试和错误的两个文件. 这部分工作正常. 现在我完成了两个工作, 首先: - 使用trowgenerator生成线,然后发送到tmap并从TMAP发送,我将根据某种条件发送到两个Twarn组件. 第二: - 具有tlogcatcher,t_filterrow并根据某种条件分离到两个文件的作业. 所以我正在与第一个捕获日志的工作并行运行第二个作业,但它不起作用. 我尝试了几个选项,并在这一点上卡住. 主要想法是拥有一个通用的记录组件,可以插入日志的任何作业. 有什么方法可以实现? 解决方案 以下是弹出的三种方式: log4j:企业版本内置了log4j,这意味着您可以在twarn/tdie中设置调试级别,并配置log4j将这些放置在不同的文件中. (当使用它时,我发现最好将警告作为我自己的信息级记录,因为Talends信息级别太深了.) 我敢肯定,log4j也可以成为开放式工作室的"黑客攻击".那将解决您的问题. 大麻:如果您喜欢当前的方式,我会为您看到2个选项.首先是尝试创建软糖,但是使用来自多个作业的同一文件不是一个好主意,可能会导致错误.这不是一个不错的解决方案,但是如
)
我们有一个要求,我们正在读取来自三个不同文件的数据并在同一作业中使用不同列的这些文件中进行加入. 每个文件大小约为25-30 GB.我们的系统RAM尺寸仅为16GB.与TMAP一起加入. Talend将所有参考数据保留在物理内存中.就我而言,我无法提供那么多的记忆.作业因记忆力不足而失败.如果我在TMAP中使用与Temp Disk选项一起使用,Job的速度很慢. 请帮助我解决这些问题. 如何处理大于RAM大小的数据? 管道并行性与塔伦德(Talend)建立?我缺少什么吗 在代码中以实现这一目标? tuniq&加入操作是在物理记忆中完成的,导致了作业 慢慢奔跑.磁盘选项可用于处理这些 功能,但是太慢了. 如何在不将数据推到DB(ELT)的情况下如何提高性能. 塔伦德是否可以在数百万中处理大量数据. 较少量的RAM的数据? 谢谢 解决方案 talend处理大量数据非常快速,有效.这一切都取决于您对TALEND平台的了解. 请考虑以下评论作为您的问题的答案. Q1.talend过程如何大于RAM大小? a.您无法将整个RAM用于Talend Studio.只有一小部分RAM可以使用其几乎一半的RAM. 例如: - 在64位系统上可用8 GB的内存,最佳设置可以是: -vmargs -XMS1024M -xmx409
)
我正在尝试从Excel导入数据.我已经与数据库建立了成功的连接,但是在试图检索模式时,我没有得到我的表格,而是拥有数据库的模式(键入目录). 如何获取将导出Excel数据的表格架构? 我已经对此视频进行了审查,以进行导入. http://www.youtube.com/watch?v=jdbyu9f1p-i 解决方案 您可以使用的是
)