Pentaho和Hadoop(Pentaho and Hadoop)
如果这个问题看起来很幼稚,我很抱歉,但我是数据工程领域的新手,因为我现在是自学者,但我的问题是Pentaho和Hadoop等ETL产品之间的区别是什么? 当我用这个而不是那个? 或者我可以一起使用它们,怎么样?
谢谢,
I am sorry if this question seems naive, But I am new to Data engineering field, as I am self learner right now, however my questions is what is the differences between ETL products like Pentaho and Hadoop? when I use this instead of that? or I may use them together, how?
Thank you,
原文:https://stackoverflow.com/questions/50016494
最满意答案
考虑一个有向图,每个字母都有一个顶点,每个单词都有一个边。
所以单词“cat”将对应于从顶点“c”到顶点“t”的有向边。
在此图中,您试图查看是否存在欧拉路径 。
检查Eulerian路径可以按照Wiki页面上的说明完成:
当且仅当最多一个顶点具有(out-degree) - (in-degree)= 1时,有向图具有欧拉轨迹,最多一个顶点具有(度数) - (out-degree)= 1,每个其他顶点具有相等的in-degree和out-degree,并且所有具有非零度数的顶点都属于底层无向图的单个连通分量。
例
在这张图片中,我们可以通过旅行“c” - >“t” - >“b” - >“t”来旅行所有边缘。
这是一条欧拉路径(沿着所有边缘行进),对应于单词cat,tab,bat。
Consider a directed graph which has a vertex for each letter, and an edge for each word.
So the word "cat" would correspond to a directed edge from vertex "c" to vertex "t".
In this graph you are trying to see whether there is an Eulerian path.
Checking for an Eulerian path can be done as described on the wiki page:
A directed graph has an Eulerian trail if and only if at most one vertex has (out-degree) − (in-degree) = 1, at most one vertex has (in-degree) − (out-degree) = 1, every other vertex has equal in-degree and out-degree, and all of its vertices with nonzero degree belong to a single connected component of the underlying undirected graph.
Example
In this picture we can travel all edges by travelling "c"->"t"->"b"->"t".
This is an Eulerian path (it travels along all edges), and corresponds to the words cat,tab,bat.
相关问答
更多-
只有在拥有完整解决方案时才能使用备忘录。 由于您按长度顺序对列表进行排序,因此您的第一个完整解决方案是所需的答案。 因此,您永远不会使用您的备忘录。 我在你的memoization例程中添加了一些跟踪,并稍微增强了测试: def find_if_composite_memo(s, set_, memo): print "ENTER", s, '\t', memo n = len(s) if len(set_) == 0 or n == 0: return False ...
-
为什么不出现所有单词(Why don't all the words appear)[2022-01-06]
也许它没有解决问题,但我在评论中看到了误导性的讨论,可能还有一些容易修复的代码错误: 选择时,jQuery方法需要$()语法,当你将jQuery选择器放入变量时,如下所示: var yourvar = $("#selector") 你不再需要$()了,你只需要调用jquery方法调用yourvar.whatever()。 pic变量可能没有方法显示,因为它不是每个说法的选择器。 我建议使用:nth-child()选择器而不是当前方括号(数组)选择器 现在,这解决了pic并没有解决biger词语的错误:D ... -
我真的不明白为什么使用Core Data会比plist容易得多 - 无论哪种方式你都必须以某种方式填充列表。 在我看来,你也可以将plist硬编码并加载为NSDictionary。 或者,如果您想要更容易编辑的内容,您可以始终只使用Excel制作逗号分隔值文件(csv)并以此方式创建它。 然后,您可以在包中包含csv文件并创建一个简单的方法来在应用程序启动时加载文件,将其转换为所有键值的NSArray: NSArray *keysAndValues = [myString componentsSeparat ...
-
对于奇点和多元,您总是可以使用' pattern-en '库。 For singularity and plurality you can always use 'pattern-en' library.
-
"101 North First Avenue.".split(" ").map(function(key) { return o[key.toLowerCase().replace(/\.|\,/g,"")] || key }).join(" "); 将返回: “101 n 1st ave” "101 North First Avenue.".split(" ").map(function(key) { return o[key.toLowerCase().replace(/\. ...
-
Sublime Text 2 - 删除单词列表中的重复单词(Sublime Text 2 - remove duplicated words in a list of words)[2022-04-27]
⌘在Sublime Text 2中的Mac上选择当前文件中所有出现的模式。因此,在您的示例中,将光标放在任何Hey实例上(而不是明确突出显示它)并调用⌘将选择每个实例Hey在你的文件中。 然后,您可以一次删除所有这些文件并重新添加一个实例。 在⌘上需要注意的几点可能会在未来为您节省一些麻烦。 默认情况下,它是不区分大小写的。 您可以通过使用⇧⌘F调用全局查找和替换工具并切换区分大小写按钮来更改此项。 它应该尊重您将其留在所有后续搜索中的选项。 另外,如果您实际上突出显示文件中出现的Hey ,并调用⌘ ,则它 ... -
将单词列表转换为这些单词出现的频率列表(Converting a list of words into a list of the frequency in which those words appear)[2022-01-23]
我们可以在searchWords中没有出现的所有内容替换为0,如下所示: preprocessedDocText = Replace[docText, Dispatch@Append[Thread[searchWords -> searchWords], _ -> 0], {1}] 我们可以用它们的频率替换剩余的单词: replaceTable = Dispatch[Rule @@@ Tally[docText]]; preprocessedDocText /. replaceTab ... -
考虑一个有向图,每个字母都有一个顶点,每个单词都有一个边。 所以单词“cat”将对应于从顶点“c”到顶点“t”的有向边。 在此图中,您试图查看是否存在欧拉路径 。 检查Eulerian路径可以按照Wiki页面上的说明完成: 当且仅当最多一个顶点具有(out-degree) - (in-degree)= 1时,有向图具有欧拉轨迹,最多一个顶点具有(度数) - (out-degree)= 1,每个其他顶点具有相等的in-degree和out-degree,并且所有具有非零度数的顶点都属于底层无向图的单个连通分量 ...
-
这是一个更多的手动,我不知道你的数据是如何格式化的,但有一些修改应该做的工作: 编辑:它没有使用qdap ,但我认为这不是问题的关键部分。 第二次编辑:我忘记了替换,更正了下面的代码。 library(data.table) library(tm) # Functions with tm:: below library(magrittr) dt <- data.table( ID = 1L:4L, Keywords = c( paste('112 mills', 'open heart' ...
-
您可以使用join方法join列表中的字符串: my_list = ['believe', 'in', 'the', 'me', 'that', 'believes', 'you'] >>> ' '.join(my_list) 'believe in the me that believes you' # ^ missing "in" 但这会导致字符串在"believes"之后缺少"in" "believes" 。 如果你想根据前面列表中的单词 ...