index creattion guidelines.

很多人都会为如何创建索引发愁, 在什么情况下需要创建索引? 对哪些字段创建索引? 创建什么索引?

下面就是对应的答案, 来自Oracle perf tunning guide.

Choosing Columns and Expressions to Index

A key is a column or expression on which you can build an index. Follow these guidelines for choosing keys to index:

  • Consider indexing keys that are used frequently in WHERE clauses.
  • Consider indexing keys that are used frequently to join tables in SQL statements. For more information on optimizing joins, see the section "Using Hash Clusters".
  • Index keys that have high selectivity. The selectivity of an index is the percentage of rows in a table having the same value for the indexed key. An index's selectivity is optimal if few rows have the same value.


    Note:

    Oracle automatically creates indexes, or uses existing indexes, on the keys and expressions of unique and primary keys that you define with integrity constraints.


    Indexing low selectivity columns can be helpful if the data distribution is skewed so that one or two values occur much less often than other values.

  • Do not use standard B-tree indexes on keys or expressions with few distinct values. Such keys or expressions usually have poor selectivity and therefore do not optimize performance unless the frequently selected key values appear less frequently than the other key values. You can use bitmap indexes effectively in such cases, unless a high concurrency OLTP application is involved where the index is modified frequently.
  • Do not index columns that are modified frequently. UPDATE statements that modify indexed columns and INSERT and DELETE statements that modify indexed tables take longer than if there were no index. Such SQL statements must modify data in indexes as well as data in tables. They also generate additional undo and redo.
  • Do not index keys that appear only in WHERE clauses with functions or operators. A WHERE clause that uses a function, other than MIN or MAX, or an operator with an indexed key does not make available the access path that uses the index except with function-based indexes.
  • Consider indexing foreign keys of referential integrity constraints in cases in which a large number of concurrent INSERT, UPDATE, and DELETE statements access the parent and child tables. Such an index allows UPDATEs and DELETEs on the parent table without share locking the child table.
  • When choosing to index a key, consider whether the performance gain for queries is worth the performance loss for INSERTs, UPDATEs, and DELETEs and the use of the space required to store the index. You might want to experiment by comparing the processing times of the SQL statements with and without indexes. You can measure processing time with the SQL trace facility.
[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/94317/viewspace-796600/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/94317/viewspace-796600/

### 回答1: autosar_rs_cpp14guidelines.pdf是一篇关于AUTOSAR(AUTomotive Open System ARchitecture)软件开发规范相关的文档。 该文档主要介绍了AUTOSAR的C++14编码准则。C++是一种通用的编程语言,被广泛用于软件开发。AUTOSAR C++14编码准则旨在提供一套规范和准则,帮助开发人员编写高质量、可靠且符合AUTOSAR标准的C++代码。 文档中详细介绍了C++14编码准则的各个方面,包括命名规范、代码格式化、注释规范、类和函数设计、异常处理、并发编程等。准则的目标是使代码易于理解、维护和扩展,并提高代码的质量和可靠性。 该文档还提供了一些实际的代码示例和解释,以帮助读者更好地理解和应用这些准则。此外,文档中还包括了一些最佳实践和经验教训,以帮助开发人员避免一些常见的编程错误和问题。 总而言之,autosar_rs_cpp14guidelines.pdf是一份非常重要的文档,对于那些希望开发符合AUTOSAR标准的高质量C++代码的软件开发人员来说,阅读和理解这个文档将是非常有益的。通过遵循这些准则,开发人员可以更好地组织和编写代码,并提高软件的可维护性、可扩展性和可靠性。 ### 回答2: autosar_rs_cpp14guidelines.pdf是AUTOSAR(汽车软件架构)制定的关于C++14编码规范的指南文件。 该文件主要针对使用C++14编写汽车软件的开发人员,提供了一系列规范和最佳实践,以确保软件的质量、可维护性和可靠性。这些指南涵盖了代码风格、命名规范、代码组织、内存管理、异常处理、类型安全和代码优化等方面。 在代码风格方面,该指南建议使用一致的缩进和括号风格,以提高代码的可读性。此外,还建议使用有意义的命名和注释,以便其他开发人员能够理解和维护代码。 在代码组织方面,该指南提议使用模块化的设计方法,将代码划分为独立的功能单元,以便于测试和重用。此外,还指出了一些在编写C++14代码时应避免使用的特性,如全局变量和裸指针等。 在内存管理方面,该指南强调了使用智能指针等RAII(资源获取即初始化)机制,避免内存泄漏和悬空指针的问题。 在异常处理方面,该指南建议使用异常代替错误码,并给出了一些处理异常的最佳实践,如不在析构函数中抛出异常,避免在异常处理代码中引入新的异常等。 在类型安全方面,该指南提出了一些使用C++14特性的最佳实践,如使用强类型枚举、避免隐式类型转换等,以减少类型相关的错误。 在代码优化方面,该指南给出了一些提高性能的建议,如使用move语义避免不必要的拷贝、减少虚函数的使用等。 总之,autosar_rs_cpp14guidelines.pdf为使用C++14编写汽车软件的开发人员提供了一份详尽的编码规范指南,帮助他们编写出高质量、可维护和可靠的代码。 ### 回答3: autosar_rs_cpp14guidelines.pdf是一份关于AUTOSAR(汽车开放系统架构)应用编程接口的C++14编程指南的PDF文件。AUTOSAR是一个国际汽车行业协会创建的开放标准,旨在提供汽车电子设备之间的标准化接口和通信协议。该指南主要针对C++14编程语言,其中包含了一系列规范和建议,以帮助开发人员编写符合AUTOSAR标准的代码。 该指南涵盖了许多主题,包括C++14的基础语法、命名规范、数据类型、内存管理、异常处理、线程安全和并发性等。它提供了一些最佳实践和经验教训,以帮助开发人员遵循AUTOSAR标准,提高代码的可读性、可维护性和可靠性。 此外,该指南还提供了一些附加的工具和库,可以帮助开发人员更好地进行AUTOSAR应用程序的开发和测试。这些工具和库包括用于代码生成、静态分析、单元测试和集成测试的工具等。 总之,autosar_rs_cpp14guidelines.pdf是一份为AUTOSAR应用程序开发人员提供指导的C++14编程指南。它提供了一系列规范、建议和工具,以帮助开发人员编写符合AUTOSAR标准的代码,并提高代码的质量和可靠性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值