Database 解决大数据问题的方法是什么? 让我们考虑下面的问题。我们有一个包含大量数据(大数据)的系统。所以,事实上我们有一个数据库。作为第一个要求,我们希望能够快速写入和读取数据库。我们还希望有一个数据库的web接口(以便不同的客户端可以远程写入和读取数据库)

Database 解决大数据问题的方法是什么? 让我们考虑下面的问题。我们有一个包含大量数据(大数据)的系统。所以,事实上我们有一个数据库。作为第一个要求,我们希望能够快速写入和读取数据库。我们还希望有一个数据库的web接口(以便不同的客户端可以远程写入和读取数据库),database,machine-learning,bigdata,data-visualization,data-analysis,Database,Machine Learning,Bigdata,Data Visualization,Data Analysis,但我们想要的系统应该不仅仅是一个数据库。首先,我们希望能够对数据运行不同的数据分析算法,以发现规律性、相关性、异常等(就像以前一样,我们非常关心性能)。其次,我们希望将机器学习机制绑定到数据库。这意味着我们希望在数据上运行机器学习算法,以便能够学习数据上存在的“关系”,并在此基础上预测数据库中尚未存在的条目的值 最后,我们希望有一个漂亮的基于点击的界面来可视化数据。因此,用户可以看到漂亮的图形、图形和其他交互式可视化对象形式的数据 解决上述问题的标准和公认方法是什么。必须使用哪些编程语言来处理所

但我们想要的系统应该不仅仅是一个数据库。首先,我们希望能够对数据运行不同的数据分析算法,以发现规律性、相关性、异常等(就像以前一样,我们非常关心性能)。其次,我们希望将机器学习机制绑定到数据库。这意味着我们希望在数据上运行机器学习算法,以便能够学习数据上存在的“关系”,并在此基础上预测数据库中尚未存在的条目的值

最后,我们希望有一个漂亮的基于点击的界面来可视化数据。因此,用户可以看到漂亮的图形、图形和其他交互式可视化对象形式的数据


解决上述问题的标准和公认方法是什么。必须使用哪些编程语言来处理所描述的问题?

这三种语言最常用于服务器端的机器学习和数据挖掘:R、Python和SQL。如果您的目标是繁重的数学函数和图形生成,Haskell非常受欢迎。

解决此类需求的常见方法是使用它及其周围的生态系统

Redshift是一个peta规模的数据仓库(也可以从giga规模开始),它公开了Ansi SQL接口。由于您可以将任意数量的数据放入DWH,并且可以针对这些数据运行任何类型的SQL,因此这是构建几乎任何敏捷和大数据分析系统的良好基础设施

红移有许多分析功能,主要使用。您可以计算平均值和中间值,但也可以计算百分位数、密集等级等

您可以使用JDB/ODBC驱动程序连接几乎所有需要的SQL客户机。它可以来自R、R studio、psql,也可以来自MS Excel

AWS最近增加了一项新的机器学习服务。与红移很好地集成。您可以基于Redshift的数据构建预测模型,只需给出一个SQL查询,该查询将提取训练模型所需的数据,Amazon ML将构建一个既可用于批量预测又可用于实时预测的模型。您可以查看AWS大数据博客上的这篇博文,其中展示了这样一个场景:

关于可视化,有很多很棒的可视化工具可以连接到Redshift。最常见的是Tableau、QliView、Looker或YellowFin,尤其是如果您没有任何现有的DWH,您可能希望继续使用像JasperSoft或Oracle BI这样的工具。以下是一个链接,其中列出了一些合作伙伴,这些合作伙伴正在免费试用Redshift上的可视化功能:


顺便说一句,Redshift还提供了为期2个月的免费试用,您可以快速测试它是否符合您的需要:

大数据是一个棘手的问题,主要是因为它不是一个单一的问题。首先,如果您的原始数据库是一个正常的OLTP数据库,整天都在处理业务事务,那么您将不希望在此系统上也进行大数据分析,因为您要进行的数据分析将干扰正常的业务流量

问题#1是您希望使用哪种类型的数据库进行数据分析?您有很多选择,包括RDBMS、Hadoop、MongoDB和Spark。如果您使用RDBMS,那么您将希望更改模式,使其更符合数据分析。您需要创建一个具有星型模式的数据仓库。这样做将为您提供许多工具,因为这种数据分析方法已经存在很长时间了。所有其他“大数据”和数据分析数据库都没有相同级别的可用工具,但它们正在迅速赶上。每一个问题都需要根据你的问题集研究你想要使用哪一个。如果你有大批量的数据,RDBMS和Hadoop会很好。如果您有流式传输类型的数据,那么您需要查看MongoDB和Spark。如果你是一家Java商店,那么就使用RDBMS、Hadoop或Spark。如果您是JavaScript MongoDB。如果你对Scala很在行,那么Spark

问题#2是将您的数据从事务数据库存储到大数据存储中。您需要找到一种编程语言,该语言具有与这两个数据库对话的库,并且您必须决定何时何地移动这些数据。您可以使用Python、Java或Ruby来完成这项工作

问题3是你的用户界面。如果您决定使用RDBMS,那么您可以使用许多可用的工具,也可以构建自己的工具。其他数据存储解决方案将提供工具支持,但它并不像RDBMS那样成熟。无论如何,您很可能会在这里构建自己的工具,因为您的分析师希望按照他们的规范构建工具。Java可以使用所有这些存储机制,但您也可以让Python工作。您可能希望提供一个用Java构建的服务层,该服务层提供一个RESTful接口,然后在该服务层前面放置一个web层。如果您这样做,那么您的web层可以用您喜欢的任何语言构建。

开始查看: 您希望在数据库中存储什么类型的数据? 你得到的数据之间有什么关系? 如何访问这些数据?(例如,您需要经常访问某一组数据) 它们是文件吗?文本?还有别的吗

一旦您得到了所有这些问题的答案,您就可以开始查看可以使用哪个NoSQL数据库来为您的需求提供最佳结果

你可以选择下注