mongodb mysql json数据_使用MongoDB与MySQL有很多JSON字段?

所以,直接回答问题…

Shall we chose mongodb if half of data is schemaless, and is being stored as JSON if using MySQL?

无数存储空间肯定是MongoDB的一个引人注目的理由,但正如您所指出的,将JSON存储在RDBMS中也是相当容易的。 MongoDB背后的强大功能是对无法存储的丰富查询。

如果我可以在更新JSON字段的图示中指出一个小缺陷,那不仅仅是获取当前值,更新文档,然后将其推回到数据库。该进程必须全部包装在事务中。在您开始对数据库进行非规范化之前,事务往往相当简单。然后像录制upvote一样简单的东西可以锁定桌面在你的架构上。

使用MongoDB,没有交易。但操作几乎总是可以以允许进行原子更新的方式进行结构化。这通常涉及SQL范例的一些戏剧性变化,但是在我看来,一旦你停止试图强制将对象强制放入表中,它们就会相当明显。至少,其他许多人遇到了同样的问题,蒙古社区往往对于克服的挑战来说是相当公开和有声的。

Some of the data like main posts is critical , so it will be saved using safe writes , the counters etc will be saved using unsafe writes. Is this policy based on importance of data, and write intensiveness correct?

通过“安全写入”,我认为您的意思是在每次写入后打开自动“getLastError()”的选项。我们在DBCollection上有一个非常薄的包装,允许我们在调用getLastError()时进行细粒度的控制。但是,我们的策略不是基于“重要”数据,而是跟随查询的代码是否期望在以下读取中立即显示任何修改。

一般来说,这仍然是一个糟糕的指标,我们已经转而使用findAndModify()来执行相同的行为。在我们仍然显式调用getLastError()的情况下,当数据库可能拒绝写入时,例如当我们使用可能是重复的_id来插入()时。

How easy is it to monitor,backup and restore Mongodb as compared to mysql? We need to plan periodic backups (say daily), and restore them with ease in case of disaster. What are the best options I have with mongoDb to make it a safe bet for the application?

恐怕我不能说我们的备份/还原策略是否有效,因为我们还没有恢复。我们遵循MongoDB的备份建议; @ mark-hillick做了很好的总结。我们正在使用副本集,我们已经迁移了MongoDB版本以及引入了新的副本成员。到目前为止,我们没有停机,所以我不知道我能说得好。

Stability,backup,snapshots,restoring,wider adoption i.e.database durability are the reasons pointing me to use MySQL as RDBMS+NoSql even though a NoSQL document storage could serve my purpose better.

因此,根据我的经验,MongoDB提供了无量纲数据存储,其中包含一组足够多的查询原语,以便事务经常被原子操作所取代。不了解十年价值的SQL经验是非常困难的,但我遇到的每一个问题已经被社区或10gen直接解决了。我们没有丢失数据或有任何停机时间,我可以记得。

简单来说,MongoDB是在查询,维护,可扩展性和可靠性方面所使用的最佳数据存储生态系统。除非我有一个非常清楚的关系的应用程序,否则我无法善意地使用除SQL之外的任何东西,我将尽一切努力使用MongoDB。

我不为10gen工作,但我非常感谢那些做的人。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/349012.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java命令行界面(第15部分):Jargo

Jargo在其GitHub主页上定义为“一种减轻程序参数/选项处理的工具”。 当已经存在许多其他命令行处理库时,该页面为另一个命令行处理库提供了基本原理 ,该列表的顶部是“因为类型安全性,不变性和可读性很重要”。 Jargo的选项“定义”阶段使用…

mysql 过滤相同数据库_MySQL数据库查询中的重复记录过滤

今天帮别人修改程序,需要分组去最大值。也就是所谓,某一字段有重复字,过滤掉有重复的数据。弄了半天,最后总结一下。首先搞点模拟数据出来create table t2 (id int primary key,gid char,col1 int,col2 int) enginemyisam;insert …

python关于文件的编程题_《Python编程》源代码文件

压缩包 : bbc59749e0028c3f1ab3a1c9a762a6d.rar 列表《Python编程》源代码文件/.gitignore《Python编程》源代码文件/appendix_a/README.md《Python编程》源代码文件/appendix_b/hello_world.py《Python编程》源代码文件/appendix_b/Python3.sublime-build《Python编程》源代码…

java中序列化与反序列化_Java中的序列化

java中序列化与反序列化Java提供了一种称为序列化的机制,以按字节的有序或字节序列的形式持久化Java对象,其中包括对象的数据以及有关对象的类型和存储在对象中的数据类型的信息。 因此,如果我们已序列化了任何对象,则可以使用对象…

Java命令行界面(第3部分):jbock

在本系列中有关使用Java进行命令行分析的前两篇文章中,我介绍了Apache Commons CLI和args4j库。 在本系列的第三篇文章中,我将介绍jbock ,它是自我描述的“非常简单的CLI解析器”。 我在Java中进行命令行解析的文章使用了一些示例&#xff0…

java 关闭串口_java – 打开和关闭串行端口

我正在尝试连接到Serial Port …但是一旦我第一次打开串行端口.我不能再打开它,我试着申请.这是我的代码:public static void main(String[] args) {portList CommPortIdentifier.getPortIdentifiers();while (portList.hasMoreElements()) {portId (CommPortIden…

java collection详解_java 7 collection 详解(一)

一、综述java集合框架定义了几个接口,这些接口决定了collection类的基本特性。不同的是,具体类仅仅是提供了标准接口的不同实现,如图,java集合框架接口图从图可知,java集合类的主要是由两个接口派生而出——Collection…

java导出pdf 含图片_java 生成PDF含图片和中文件实现代码

1,所需包 iText.jar iTextAsian.ar(支持中包)2,列子package com.pdf;import java.awt.Color;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.net.MalformedURLException;import javax.naming.spi.DirectoryManager;import com.l…

jsf tree组件_JSF:在传统组件和时尚性能杀手之间进行选择

jsf tree组件这篇博客文章起源于一个大型Web应用程序中的性能问题。 每个人都优化Java代码,但似乎没有人尝试优化JavaScript代码。 奇怪,因为在客户端有很多改进的空间。 我会说,甚至比服务器端还要多。 我们将分析可编辑的JSF标准组件&#…

java耗时操作阻塞_spring boot高并发下耗时操作的实现方法

高并发下的耗时操作高并发下,就是请求在一个时间点比较多时,很多写的请求打过来时,你的服务器承受很大的压力,当你的一个请求处理时间长时,这些请求将会把你的服务器线程耗尽,即你的主线程池里的线程将不会…

如何在Java中转义JSON字符串-Eclipse IDE技巧

在Java应用程序中工作或进行JSON解析时,通常很常见的做法是从某些资源(例如RESTful Web服务)中复制粘贴JSON字符串,然后使用Jackson库解析JSON。 这是测试和学习Java中解析JSON字符串的最快方法,但是这种方法的主要问题…

java hashmap实例_java HashMap详解及实例代码

java hashmap/** map集合的特点* 将键映射值的对象,一个映射不能包含重复的值;每个键最多只能映射到一个值** map集合和collection集合的区别?* map集合存储元素是成对出现的,map集合的键是唯一的,就是可重复的。可以把…

spring javafx_带有Spring的JavaFX 2

spring javafx我将从一个大胆的声明开始:我一直很喜欢Java Swing或applet。 在那里,我说了。 如果我进行一些自我分析,那么这种钦佩可能是在我接触Java时开始的。 Swing(实际上)是我使用Java所做的第一件事&#xff0c…

jframe和mysql登陆_刚写的一个从数据库读取账户和密码进行登陆的小程序~高手请无~...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.Connection;import java.sql.DriverManager;import java.sql.*; import javax.swing.*;public class LoginSystem extends JFrame{publi…

使用WebCrypto API的电子签名

有时我们需要让用户进行电子签名。 通常,人们会理解为将您的手写签名以某种方式放在屏幕上。 根据管辖范围,可能很好,或者仅存储图像可能还不够。 例如,在欧洲,有910/2014号法规 ,该法规定义了什么是电子签…

mycat mysql 物理部署_一、MyCat的搭建

一、什么是mycat简单直接点就是,MyCat其实就是一个数据库的中间件!一般我们都是app直接到数据库!有了MyCat以后,就是app到MyCat然后再访问数据库。mycat是个中间件,它负责连接管理mysql,应用程序连接mycat,把mycat当作…

java 记事本换行_[求助]记事本自动换行

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼我编的一个记事本 自动换行该如何实现import java.io.*;import java.awt.*;import java.awt.event.*;import java.awt.print.*;public class Jishiben extends Frame implements ActionListener{FileDialog fileDlg;String str, f…

JAVA中的适配器应用_Java适配器模式应用之电源适配器功能详解

本文实例讲述了Java适配器模式应用之电源适配器功能。分享给大家供大家参考,具体如下:一、模式定义存在两种适配器模式1 对象适配器模式,在这种适配器模式中,适配器容纳一个它包裹的类对象的物理实体。2 类适配器模式,…

java.util接口_函数接口– Java 8中java.util.function包中的函数接口

java.util接口我以前写过有关功能接口及其用法的文章。 如果您正在探索要成为Java 8一部分的API,尤其是那些支持lambda表达式的API,您会发现很少的接口,例如Function,Supplier,Consumer,Predicate和其他接口…

java new string作用_java中直接new String对象?

首先明确一点,在Java中比较的是两个对象的地址,equals()比较的是两个对象的值,如果使用equals()来替换,则两个输出结果都为true。言归正传,为什么第一个返回为false?先看一下intern()这个方法的描述&#x…