【发布时间】:2018-06-05 14:28:45
【问题描述】:
对使用 nifi 还是很陌生。在设计方面需要帮助。 我正在尝试在 HDFS 目录中使用虚拟 csv 文件(目前)创建一个简单的流程,并将一些文本数据添加到每个流程文件中的每个记录中。
传入文件:
dummy1.csv
dummy2.csv
dummy3.csv
内容:
"Eldon Base for stackable storage shelf, platinum",Muhammed MacIntyre,3,-213.25,38.94,35,Nunavut,Storage & Organization,0.8
"1.7 Cubic Foot Compact ""Cube"" Office Refrigerators",BarryFrench,293,457.81,208.16,68.02,Nunavut,Appliances,0.58
"Cardinal Slant-D Ring Binder, Heavy Gauge Vinyl",Barry French,293,46.71,8.69,2.99,Nunavut,Binders and Binder Accessories,0.39
...
期望的输出:
d17a3259-0718-4c7b-bee8-924266aebcc7,Mon Jun 04 16:36:56 EDT 2018,Fellowes Recycled Storage Drawers,Allen Rosenblatt,11137,395.12,111.03,8.64,Northwest Territories,Storage & Organization,0.78
25f17667-9216-4f1d-b69c-23403cd13464,Mon Jun 04 16:36:56 EDT 2018,Satellite Sectional Post Binders,Barry Weirich,11202,79.59,43.41,2.99,Northwest Territories,Binders and Binder Accessories,0.39
ce0b569f-5d93-4a54-b55e-09c18705f973,Mon Jun 04 16:36:56 EDT 2018,Deflect-o DuraMat Antistatic Studded Beveled Mat for Medium Pile Carpeting,Doug Bickford,11456,399.37,105.34,24.49,Northwest Territories,Office Furnishings,0.61
(这可能是实现我想要获得的效果的一种糟糕方法,但我在某处看到 uuid 是生成唯一会话 id 的最佳选择。因此考虑将每一行从传入数据提取到流文件并生成uuid)
但是不知何故,您可以看到数据的顺序混乱了。前 3 行的输出不同。但是,我正在使用的测试数据(50000 个条目)似乎在其他行中有数据。多次测试通常显示 2001 行之后的数据顺序发生变化。
是的,我确实在这里搜索了类似的问题,并尝试在合并中使用碎片整理方法,但它没有用。如果有人可以解释这里发生的事情以及如何使用唯一的 session_id,每个记录的时间戳以相同的方式获取数据,我将不胜感激。我需要更改或修改某些参数以获得正确的输出吗?如果有更好的方法,我也愿意接受建议。
【问题讨论】:
标签: hadoop hdfs cloudera apache-nifi hortonworks-data-platform