Sql server 我想将数据从SQL server DB移动到Hbase/Cassandra等。。如何决定使用哪个bigdata数据库?

Sql server 我想将数据从SQL server DB移动到Hbase/Cassandra等。。如何决定使用哪个bigdata数据库?,sql-server,apache-spark,cassandra,hbase,bigdata,Sql Server,Apache Spark,Cassandra,Hbase,Bigdata,我需要制定一个计划,将数据从SQLServerDB移动到任何bigdata数据库?我想到的一些问题是: 数据有多大 该数据的预期增长率是多少 什么样的查询将经常运行?例如:查找、范围扫描、全扫描等 数据从源移动到目标的频率如何 有人能帮我添加这份问卷吗?再多给点建议 适合您的要求的无sql数据库类型。i、 e.键值、文档、列族和图形数据库 CAP定理决定一致性、可用性和分区容差中哪个更关键 首先,数据有多大并不重要!这一点几乎不能用来决定使用哪个NoSQL DB,因为大多数NoSQL DB都是为

我需要制定一个计划,将数据从SQLServerDB移动到任何bigdata数据库?我想到的一些问题是:

  • 数据有多大
  • 该数据的预期增长率是多少
  • 什么样的查询将经常运行?例如:查找、范围扫描、全扫描等
  • 数据从源移动到目标的频率如何
  • 有人能帮我添加这份问卷吗?

    再多给点建议

  • 适合您的要求的无sql数据库类型。i、 e.键值、文档、列族和图形数据库
  • CAP定理决定一致性、可用性和分区容差中哪个更关键

  • 首先,
    数据有多大并不重要!这一点几乎不能用来决定使用哪个NoSQL DB,因为大多数NoSQL DB都是为了便于扩展和存储而设计的。因此,重要的是您发出的查询,而不是有多少数据。(除非你打算用它来存储和访问非常少量的数据,因为在许多NOSQL DBS中它们会有点贵)<强>你的第一个问题必须是为什么考虑NoSQL?RDBMS不能处理它吗?

    预期增长率是一个相当重要的参数,但也不是那么有效,因为大多数NOSQL DBs支持存储大量数据(没有任何可伸缩性问题)

    列表中最重要的是
    将运行哪种查询?

    这一点最为重要,因为RDBMS将数据存储为
    元组
    ,并且更容易选择元组并用较少的数据量输出它们。它在执行
    *
    查询时更快(作为行存储)。但是说到NoSQL,大多数数据库都是或

    面向行的系统:当数据插入表中时,会为其分配一个内部ID,即系统内部用于引用数据的rowid。在这种情况下,记录具有独立于用户分配的empid的连续ROWID

    面向列的系统:面向列的数据库将一列的所有值序列化在一起,然后是下一列的值,依此类推

    面向行的面向列的数据库之间的比较通常与给定工作负载的硬盘访问效率有关,因为与计算机中的其他瓶颈相比,查找时间非常长

    数据移动/访问的频率有多高?
    同样是一个好问题,因为访问成本很高,而且在第一次启动查询时,很少有NoSQL数据库非常慢(例如:Hive)

    <强>您可以考虑的其他参数是< /强>:

  • 是否需要更新行(表中的数据)?(配置单元的更新有问题,通常需要删除并再次插入)

  • 为什么要使用数据库?(搜索、导出关系或分析等)您希望对数据执行什么类型的操作? 它需要关系搜索吗?就像Facebook Db(Presto)一样 它需要聚合吗? 它会被用来关联不同的专栏以获得见解吗?(比如要做的分析)

  • 最后也是一个非常重要的问题,您想将该数据存储为文件或DB的特定存储格式或其他任何内容吗?这一点很重要,因为您的处理取决于数据的存储方式、数据是否可以直接访问或是否需要可能耗时的查询调用等


  • 由于SQL Server是关系型的,而HBase是非关系型的,您的第一个问题是“这些数据将如何适应这里”另一个问题可能是:您需要分析数据还是只存储数据以备将来使用?@Whitefret是的,我将对这些数据执行各种分析。@Nick.McDermaid选择Hive是否明智?因为它支持HQL,这是一种SQL语言。非常感谢@Ani Menon。在这种情况下,表中的列数重要吗?@DeepakNellurvalappil在考虑列数据库时,表中的列数通常并不重要,但运行的查询类型会有所不同。假设您在使用大多数/所有列的地方运行
    SELECT*
    之类的程序,那么可能会造成麻烦(如果列太多),因为大多数数据库在运行查询(使用这些列)时会将整列读取到内存中。是的,这是有道理的。如果您还有其他想法,请分享。我在这里也会这样做。谢谢。@DeepakNellurvalappil当然可以。