The query optimizer models data distribution and access paths to make the optimal plan choice for a given query. Sometimes the plan selection is poor because of modeling limitations, outdated statistics, incorrect opt...
详细信息
ISBN:
(纸本)9781605582337
The query optimizer models data distribution and access paths to make the optimal plan choice for a given query. Sometimes the plan selection is poor because of modeling limitations, outdated statistics, incorrect optimization heuristics, etc. Hence it is useful to examine the plan choice made by the optimizer from an execution perspective and to impose validation rules on the actual execution plan to evaluate plan suitability. This approach treats the optimizer as a black box. The plan validation is based on the queries and data instead of the optimizer implementation details. This paper describes {XPC}, a rule-based tool for microsoft sql server [1] that helps users and developers achieve a better understanding of plan performance. We apply ideas similar to code profilers [2] to examine plan execution performance along with heuristic rules to the actual execution profile and probe for inefficiencies. This paper describes the overview and implementation of {XPC} and presents rules showing how {XPC} is useful in targeting plan performance issues. Copyright 2008 ACM.
The process of validating the internal functionality of a query optimizer includes the selection of appropriate queries to be used as test cases for exercising and validating specific code paths. Specifically, it is d...
详细信息
ISBN:
(纸本)9781605582337
The process of validating the internal functionality of a query optimizer includes the selection of appropriate queries to be used as test cases for exercising and validating specific code paths. Specifically, it is desirable to be able to implement unit-tests for small components of the query optimizer such as the query transformation rules. In this paper, we present a practical method that simplifies the creation of test cases for validating query transformation rules in a query optimizer. We present the QRel programming framework, which allows designing test cases based on relational algebra expressions. We show how such a framework can be used to create classes of similar test cases that exercise transformation rules over a variety of relational algebra expressions. Finally, we provide some examples of how QRel is used to validate sqlserver's optimizations for subqueries. Copyright 2008 ACM.
Efficient and convenient handling of heterogeneous data is a current challenge for data management systems. In this paper, we discuss several common relational approaches to represent heterogeneity and argue for a des...
详细信息
ISBN:
(纸本)9781424418367
Efficient and convenient handling of heterogeneous data is a current challenge for data management systems. In this paper, we discuss several common relational approaches to represent heterogeneity and argue for a design based on a single wide-table, referred to as a flexible schema. For this scenario, we focus on partial indexation and its support for efficient data storage and processing. Filtered indices provide partial indexation functionality in the microsoft sql server product. We describe here the implementation of this feature, including index utilization in queries, index maintenance and query parameterization issues. Our performance experiments validate the expected benefits of the approach in our implementation.
When people hear "Visual Basic", they remember Quick-from the DOS days. As a result, their knee-jerk reaction often that Visual Basic is not really a serious language, they do not pay it the attention it act...
详细信息
ISBN:
(纸本)9781595938657
When people hear "Visual Basic", they remember Quick-from the DOS days. As a result, their knee-jerk reaction often that Visual Basic is not really a serious language, they do not pay it the attention it actually deserves. In Visual Basic is a full-fledged modern object-oriented with many unique features, such as static typing possible but dynamic typing where necessary, declarative handling, deep XML integration with optional XSD types, highly expressive query comprehension, type inference, etc. etc. This makes Visual Basic actually interesting to researchers and practitioners than "popular" static languages such as Java, C] and dynamic such as Ruby or JavaScript.
Programming distributed data-intensive web and mobile applications is gratuitously hard. As the world is moving more and more toward the software as services model, we have to come up with practical solutions to build...
详细信息
ISBN:
(纸本)9781595938657
Programming distributed data-intensive web and mobile applications is gratuitously hard. As the world is moving more and more toward the software as services model, we have to come up with practical solutions to build distributed systems that are approachable for normal programmers. Just like Visual Basic democratized programming Windows by removing much of the boilerplate, such as message pumps and window handles, that contributed more to the problem than to the solution, we propose a toolkit of language extensions, APIs, and tools that do the same for web programming. As a result, ordinary programmers can concentrate on the essential aspects of building distributed and mobile applications such as partitioning and flowing code and data across tiers, deployment, security, etc. without getting bogged down in low level details.
When considering the past or the future, dear apprentice, be mindful of the present. If, while considering the past, you become caught in the past, lost in the past, or enslaved by the past, then you have forgotten yo...
详细信息
ISBN:
(纸本)9781595937865
When considering the past or the future, dear apprentice, be mindful of the present. If, while considering the past, you become caught in the past, lost in the past, or enslaved by the past, then you have forgotten yourself in the present. If, while considering the future, you become caught in the future, lost in the future, or enslaved by the future, then you have forgotten yourself in the present. Conversely, when considering the past, if you do not become caught, lost, or enslaved by the past, then you have remained mindful of the present. And if, when considering the future, you do not become caught, lost, or enslaved in the future, then you have remained mindful of the present.
When considering the past or the future, dear apprentice, be mindful of the present. If, while considering the past, you become caught in the past, lost in the past, or enslaved by the past, then you have forgotten yo...
详细信息
When considering the past or the future, dear apprentice, be mindful of the present. If, while considering the past, you become caught in the past, lost in the past, or enslaved by the past, then you have forgotten yourself in the present. If, while considering the future, you become caught in the future, lost in the future, or enslaved by the future, then you have forgotten yourself in the present. Conversely, when considering the past, if you do not become caught, lost, or enslaved by the past, then you have remained mindful of the present. And if, when considering the future, you do not become caught, lost, or enslaved in the future, then you have remained mindful of the present.
For many years I had been fruitlessly trying to sell functional programming and Haskell to solve real world problems such as scripting and data-intensive three-tier distributed web applications. The lack of widespread...
ISBN:
(纸本)9781595937865
For many years I had been fruitlessly trying to sell functional programming and Haskell to solve real world problems such as scripting and data-intensive three-tier distributed web applications. The lack of widespread adoption of Haskell is a real pity. Functional programming concepts are key to curing many of the headaches that plague the majority of programmers, who today are forced to use imperative languages. If the mountain won't come to Mohammed, Mohammed must go to the mountain, and so I left academia to join industry. Instead of trying to convince imperative programmers to forget everything they already know and learn something completely new, I decided to infuse existing imperative object-oriented programming languages with functional programming features. As a result, functional programming has finally reached the masses, except that it is called Visual Basic 9 instead of Haskell 98.
Language Integrated Query (LINQ) is a framework that is rooted in the theoretical ideas of monads and monad comprehensions to allow seamless querying over objects, XML, and relational data. Instead of blindly gazing a...
详细信息
ISBN:
(纸本)159593491X
Language Integrated Query (LINQ) is a framework that is rooted in the theoretical ideas of monads and monad comprehensions to allow seamless querying over objects, XML, and relational data. Instead of blindly gazing at the perceived impedance mismatch between the structure of these various data models, LINQ leverages the commonalities between the operations on these data models to achieve deep semantic integration.
The sqlserver development team is planning to release a latest Java Database Connectivity (JDBC) driver for both sqlserver 2000 and sqlserver 2005: the microsoft sql server 2005 JDBC Driver. Based on the uptake, fe...
详细信息
The sqlserver development team is planning to release a latest Java Database Connectivity (JDBC) driver for both sqlserver 2000 and sqlserver 2005: the microsoft sql server 2005 JDBC Driver. Based on the uptake, feedback and usage of the sqlserver 2000 JDBC driver, the team is providing enterprise-class JDBC connectivity and support for sqlserver, along with a map to ensure that the latest JDBC spec implementations are available to sqlserver customers as the specification evolves. A major update to the driver is the ISV-friendly licensing structure that enables the driver to be freely redistributable for all registered patterns. It includes several improvements in performance, transactions, and deep support for the latest sqlserver 2005 types.
暂无评论