首页 \ 问答 \ 带有HBASE的Spark和带有HDFS的Spark(Spark with HBASE vs Spark with HDFS)

带有HBASE的Spark和带有HDFS的Spark(Spark with HBASE vs Spark with HDFS)

我知道HBASE是一个柱状数据库,它将表的结构化数据按列而不是按行存储到HDFS中。 我知道Spark可以从HDFS读/写,并且有一些用于Spark的HBASE连接器现在也可以读写HBASE表。

问题:

1)在HBASE之上将Spark分层而不是仅使用HBASE带来了哪些附加功能? 它只取决于程序员的能力,还是有任何性能原因可以做到这一点? Spark有什么东西可以做,HBASE完全不能做?

2)从上一个问题出发,何时应该在HDFS和SPARK之间添加HBASE而不是直接使用HDFS?


I know that HBASE is a columnar database that stores structured data of tables into HDFS by column instead of by row. I know that Spark can read/write from HDFS and that there is some HBASE-connector for Spark that can now also read-write HBASE tables.

Questions:

1) What are the added capabilities brought by layering Spark on top of HBASE instead of using HBASE solely? It depends only on programmer capabilities or is there any performance reason to do that? Are there things Spark can do and HBASE solely can't do?

2) Stemming from previous question, when you should add HBASE between HDFS and SPARK instead of using directly HDFS?


原文:https://stackoverflow.com/questions/38930914
更新时间:2022-11-06 20:11

最满意答案

我不确定它是不是真的是你的情况,但最近我的同事git repo(Windows,ASP.NET MVC项目)的行为与我的同事已将.gitattributes文件推送到 github后,其中行结束设置已更改(例如从as-ischeckout windows-style,commit linux-style )。

所以git stash没有产生任何错误,但同时没有产生任何影响(修改后的文件出现在状态并保持在那里直到我提交它们)。 删除.gitattributes对我有用


I'm not sure if it is really your case, but recently I had the same behavior of git repo (Windows, ASP.NET MVC project) after my collegue has pushed .gitattributes file to github where the line-endings setting was changed (for example from as-is to checkout windows-style, commit linux-style).

So git stash produced no error but gave no effect at the same time (modified files appeared in status and stayed there until I commit them). Removing .gitattributes worked for me.

相关问答

更多
  • “藏书”将工作副本中的未提交的“ 肮脏 ”东西,将其隐藏起来,留下一份干净的工作副本。 它根本没有分支。 然后,您可以在任何其他分支顶部应用该隐藏。 或者,从Git 1.6开始,您可以: git stash branch [] 在一个新的分支顶部应用这个隐藏,一个命令。 所以,如果你还没有致力于“ 错误 ”的分支,那么这个藏书的作品很棒。 如果您已经承诺了,您在问题中描述的工作流程是一个更好的选择。 顺便说一下,你是对的:Git非常灵活,灵活性高,功能重叠。 'st ...
  • 当我必须对垃圾工作副本进行更改时,例如从存储空间弹出多个变更集,我使用以下命令: $ git stash show -p | git apply -3 && git stash drop 基本上 创建一个补丁 管道到apply命令 如果有任何冲突,他们需要通过三方合并来解决 如果应用(或合并)成功,它会删除刚应用的隐藏项目... 我不知道为什么git stash pop没有-f (强制)选项,它应该像上面的一行那样行事。 在此期间,您可能希望将此一行添加为git别名: $ git config --glo ...
  • 当你储存更改时,你可以随时在任何时候应用它们。 它与合并类似,将更改应用于工作目录。 如果您有冲突的更改,则可以使用与合并冲突相同的方式解决它们。 When you stash changes you can apply them later at any point. It work analogical to a merge, wich applies changes to your working directory. If you have conflicting changes you can r ...
  • 没有标志的普通git stash会使被忽略的文件保持不变。 他们没有被删除。 在TortoiseGit中,这意味着离开include untracked和--all未选中: 如果您希望存储(并删除)已修改和未删除的文件,而不是隐藏文件,请使用include untracked选项( git stash --include-untracked ): A normal git stash without flags keeps the ignored files intact. They are not rem ...
  • 看起来您想要一种临时存储更改的方法,以便您不会意外删除它们,可以回滚。 最好的方法是在本地实际提交更改。 典型的工作流程如下: vim myfile # make some changes git add myfile git commit -m "temp changes 1" vim myfile # make more changes git commit --amend git diff HEAD~1 # See the changes you've made compared to last HE ...
  • 我不确定它是不是真的是你的情况,但最近我的同事git repo(Windows,ASP.NET MVC项目)的行为与我的同事已将.gitattributes文件推送到 github后,其中行结束设置已更改(例如从as-is到checkout windows-style,commit linux-style )。 所以git stash没有产生任何错误,但同时没有产生任何影响(修改后的文件出现在状态并保持在那里直到我提交它们)。 删除.gitattributes对我有用 。 I'm not sure if i ...
  • 刚遇到同样的问题。 似乎git stash pathspecs必须相对于存储库根目录(顶部) - 而不是当前正在工作的目录。 由于git status (“与许多其他Git命令不同”)显示路径“ 相对于当前目录,如果您在子目录中工作”,这似乎容易混淆。 因此,如果你当前的工作目录是〜/ dev / git_project_root / subdir,你需要使用: git stash -p -- subdir/AB.Dir1/Dir2/DestinationHierarchyCreator.cs (通配符g ...
  • 正如DaveW所说,问题来自core.fscache=true设置。 这是一个仅限Windows的设置,可以启用文件系统缓存,以减轻某些Windows文件系统操作的速度。 以下是从提交消息Win32中提取的描述:在mingw的lstat和dirent实现下面添加一个缓存 : 由于lstat仿真速度慢(git为索引中的每个文件调用lstat一次),因此在Windows上检查工作树状态非常慢。 Windows操作系统API在扫描整个目录的状态方面似乎比检查单个文件要好得多。 添加一个使用lstat数据缓存的ls ...
  • 您可以轻松恢复丢失的存储(您可以在屏幕上看到它的修订版)。 但这没用。 git stash不保存新文件(在你的情况下为foo /目录内容),但它在退出之前执行git reset --hard 。 并恢复工作目录,有效地删除foo/ 。 我建议使用某种删除文件恢复工具。 PS发送了一封关于这个的电子邮件到git邮件列表。 他们说这是一个bug,因为git stash旨在成为一个安全的命令。 但是现在只需使用git stash -u 。 这样git就可以保存所有(甚至未跟踪)文件 You can easily ...
  • -dirty后缀表示子模块已更改。 做这个: cd wp-content/plugins/advanced-custom-fields 然后 git status 并且您将看到哪些更改导致您的子模块变脏。 the -dirty suffix means the submodule has changed. do this: cd wp-content/plugins/advanced-custom-fields then git status and you'll see what changes ...

相关文章

更多

最新问答

更多
  • 您如何使用git diff文件,并将其应用于同一存储库的副本的本地分支?(How do you take a git diff file, and apply it to a local branch that is a copy of the same repository?)
  • 将长浮点值剪切为2个小数点并复制到字符数组(Cut Long Float Value to 2 decimal points and copy to Character Array)
  • OctoberCMS侧边栏不呈现(OctoberCMS Sidebar not rendering)
  • 页面加载后对象是否有资格进行垃圾回收?(Are objects eligible for garbage collection after the page loads?)
  • codeigniter中的语言不能按预期工作(language in codeigniter doesn' t work as expected)
  • 在计算机拍照在哪里进入
  • 使用cin.get()从c ++中的输入流中丢弃不需要的字符(Using cin.get() to discard unwanted characters from the input stream in c++)
  • No for循环将在for循环中运行。(No for loop will run inside for loop. Testing for primes)
  • 单页应用程序:页面重新加载(Single Page Application: page reload)
  • 在循环中选择具有相似模式的列名称(Selecting Column Name With Similar Pattern in a Loop)
  • System.StackOverflow错误(System.StackOverflow error)
  • KnockoutJS未在嵌套模板上应用beforeRemove和afterAdd(KnockoutJS not applying beforeRemove and afterAdd on nested templates)
  • 散列包括方法和/或嵌套属性(Hash include methods and/or nested attributes)
  • android - 如何避免使用Samsung RFS文件系统延迟/冻结?(android - how to avoid lag/freezes with Samsung RFS filesystem?)
  • TensorFlow:基于索引列表创建新张量(TensorFlow: Create a new tensor based on list of indices)
  • 企业安全培训的各项内容
  • 错误:RPC失败;(error: RPC failed; curl transfer closed with outstanding read data remaining)
  • C#类名中允许哪些字符?(What characters are allowed in C# class name?)
  • NumPy:将int64值存储在np.array中并使用dtype float64并将其转换回整数是否安全?(NumPy: Is it safe to store an int64 value in an np.array with dtype float64 and later convert it back to integer?)
  • 注销后如何隐藏导航portlet?(How to hide navigation portlet after logout?)
  • 将多个行和可变行移动到列(moving multiple and variable rows to columns)
  • 提交表单时忽略基础href,而不使用Javascript(ignore base href when submitting form, without using Javascript)
  • 对setOnInfoWindowClickListener的意图(Intent on setOnInfoWindowClickListener)
  • Angular $资源不会改变方法(Angular $resource doesn't change method)
  • 在Angular 5中不是一个函数(is not a function in Angular 5)
  • 如何配置Composite C1以将.m和桌面作为同一站点提供服务(How to configure Composite C1 to serve .m and desktop as the same site)
  • 不适用:悬停在悬停时:在元素之前[复制](Don't apply :hover when hovering on :before element [duplicate])
  • 常见的python rpc和cli接口(Common python rpc and cli interface)
  • Mysql DB单个字段匹配多个其他字段(Mysql DB single field matching to multiple other fields)
  • 产品页面上的Magento Up出售对齐问题(Magento Up sell alignment issue on the products page)