滴滴面试题:滴滴打车数据库如何拆分

前端时间去滴滴面试,有一道题目是这样的,滴滴每天有100万的订单,如果让你去设计数据库,你会怎么去设计?
当时我的想法是根据用户id的最后一位对某个特殊的值取%操作,然后根据余数定义表的名字为order_0,order_1,orerder_2......等等,但是这样设计有个问题,滴滴的用户是分成司机和乘客的,现在司机和乘客都有app,,他们在自己的app上看自己的订单的时候那怎么查询呢?这样设计数据只有一方可以便捷的取到数据,对于另一方来说取数据会很麻烦,因此这个方案肯定是不行的。
昨天和在滴滴的一个同事聊这个问题,他和我大致的聊了下他们现在的解决方案,答案就是:搜索引擎,他们目前的解决方案是这样的:订单表按照城市拆分,每个城市的订单只保留最近一个月的订单,一个月之前的订单切换到备库,然后后台通过建立任务将订单的信息都通过索引的方式创建到Elastic Search中,后台的订单列表及app的订单列表展示都是通过搜索引擎来获取的,直接通过接口来获取数据,这样就不需要读表了,大大提高了读取的速度,听完他讲之后,我有种醍醐灌顶的感觉,这样设计不失为一种比较好的解决方案。


优秀技术博客汇总:

http://www.cnblogs.com/wendingding/

美团点评技术博客:

http://tech.meituan.com/

iOS入门实例:弄个目录,前后顺序排版一下,为了方便查看。

1iOS学习之动态添加Button和监听UIAlertView按钮

2iOS学习之Tab Bar的使用和视图切换

3iOS学习之第二个View使用UITabBarViewController

4、 iOS学习之UIActionSheet的使用

5iOS学习之 plist文件的读写

6iOS学习之Table View的简单使用

7iOS学习之分段Table View的使用(Grouped样式表格)

8iOS学习之UITableViewCell的操作

9iOS学习之UISwitch控件两种使用方法和监听

10iOS学习之iOS沙盒(sandbox)机制和文件操作()

11iOS学习之iOS沙盒(sandbox)机制和文件操作()

12iOS学习之iOS沙盒(sandbox)机制和文件操作之NSFileManager()

13iOS学习之NSBundle介绍和使用

14iOS学习之UINavigationController详解与使用()添加UIBarButtonItem

15iOS学习之UINavigationController详解与使用()页面切换和segmentedController

16iOS学习之UINavigationController详解与使用()ToolBar

17iOS学习之UIDatePicker控件使用

18iOS学习之UIPickerView控件的简单使用

19iOS学习之UIPickerView控件的关联选择

20iOS开发之iOS程序偏好设置(Settings Bundle)的使用

21iOS学习之Map,定位,标记位置的使用

22iOS学习之sqlite的创建数据库,,插入查看数据

23iOS学习之WebView的使用

24iOS学习之iOS 使用NINetworkImageView下载图片,google地图图片的获取。

25iOS学习之Xcode Debug技巧

26iOS学习之自定义弹出UIPickerViewUIDatePicker(动画效果)

汇总各大公司高质量的面试题:

http://ifeve.com/questions/

******IT公司面试题汇总+优秀技术博客汇总的更多相关文章

  1. 各大IT公司 技术博客汇总

    来自:http://www.cnblogs.com/IT-Bear/p/3191423.html 腾讯系列(13)  阿里系列(18)  百度系列(3)  搜狐系列(3)  新浪系列(2)  360系 ...

  2. 50家硅谷IT公司技术博客

    分享一下 50 家硅谷优秀 IT 公司技术博客,从中可以了解企业文化,技术特色和设计语言,如果直接列出来很单调,加上点评,算吐槽版吧. 知名大厂   1. Facebook https://www.f ...

  3. 【新版】Android技术博客精华汇总

    [新版]Android技术博客精华汇总(原文链接内持续更新) http://www.apkbus.com/thread-313856-1-1.html Kotlin Kotlin学习资料汇总 http ...

  4. IT公司技术博客地址

    IT公司技术博客 美团点评技术团队今日头条技术博客Tencent ISUX DesignTGideas-腾讯互动娱乐创意设计团队>AlloyTeam | 腾讯全端 AlloyTeam 团队 Bl ...

  5. 优秀it博客和文章

    优秀博客 综合 杨文博(供职于百度公司,任复合搜索部资深研发工程师,目前作为tech lead,负责垂直行业搜索后端架构研发.) 杨远骋 徐宥(Google 软件工程师. 这个中文博客是我的思考记录, ...

  6. 转: BAT等研发团队的技术博客

    BAT 技术团队博客   1. 美团技术团队博客:  地址: http://tech.meituan.com/ 2. 腾讯社交用户体验设计(ISUX) 地址:http://isux.tencent.c ...

  7. iOS常用第三方开源框架和优秀开发者博客等

    博客收藏iOS开发过程好的开源框架.开源项目.Xcode工具插件.Mac软件.文章等,会不断更新维护,希望对你们有帮助.如果有推荐或者建议,请到此处提交推荐或者联系我. 该文档已提交GitHub,点击 ...

  8. 开始写自己的iOS技术博客了

    2015-09-26 中秋节前夕,开始写自己的iOS开发相关的技术博客,还请广大专业的人士批评指教!欢迎纠错和交流! 在来到北京的第二家公司艾亿新融资本管理的子公司——资配易.由于基本没有加班,也算有 ...

  9. [福大软工] Z班——个人技术博客评分

    个人技术博客 作业地址 https://edu.cnblogs.com/campus/fzu/SoftwareEngineering2015/homework/1070 作业要求 个人技术博客单次作业 ...

随机推荐

  1. .net Socket 通信简单实例(初级入门)

    c/s控制台应用程序,Server.Client分别在两个项目中 服务端 using System; using System.Collections.Generic; using System.Li ...

  2. 给zabbix穿一件漂亮的衣服

    推荐给zabbix穿上一件漂亮的衣服,安装Grafana推荐连接:http://www.myexception.cn/software-testing/2008870.html yum install ...

  3. Xcode同一个Workspace中两个工程依赖于Undefined Symbol Error

    Workspace中包含两个工程A和B: A是dylib工程,引用了另一个动态库C,B需要链接(依赖)A库.当编译B时,会先编译A,然后把A生成的dylib拷贝到B的生成目录中.如果要运行B的话需要把 ...

  4. PHP判断sql语句是否执行成功

    关于这个问题的分析: 1. 这个SQL 语法是否错误? 2. 如果没错SQL是否对数据库影响了? 综上改为以下代码: $query = mysql_query("delete from `y ...

  5. poj Flip Game 1753 (枚举)

    Flip Game Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 27005   Accepted: 11694 Descr ...

  6. java实现二叉树

    栈在遍历的时候不能使用for循环,因为他的size函数在动态变小.

  7. 30多条mysql数据库优化方法,千万级数据库记录查询轻松解决(转载)

    1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...

  8. Sicily 1153: 马的周游问题(DFS+剪枝)

    这道题没有找到一条回路,所以不能跟1152一样用数组储存后输出.我采用的方法是DFS加剪枝,直接DFS搜索会超时,优化的方法是在搜索是优先走出度小的路径,比如move1和move2都可以走,但是如走了 ...

  9. tengine/nginx-tomcat动静分离遇到的问题

    小站安装好tengine后,接下来的工作就是要配置好tengine让其和后端的tomcat正常的连接工作起来,tengine的配置文件本身比较简单,网上有大量的相关介绍说明文档,我这里只是摘出我配置过 ...

  10. Sass 的调试

    Sass 的调试 Sass 调试一直以来都是一件头痛的事情,使用 Sass 的同学都希望能在浏览器中直接调试 Sass 文件,能找到对应的行数.值得庆幸的是,现在实现并不是一件难事,只要你的浏览器支持 ...