01 مقدمة في DeepSee
DeepSee هو محرك التحليلات المدمج في IRIS.
Class MyApp.Cube.Sales Extends %DeepSee.CubeDefinition {
XData Cube {
}
}DeepSee هو محرك التحليلات المدمج في IRIS.
Class MyApp.Cube.Sales Extends %DeepSee.CubeDefinition {
XData Cube {
}
}MDX هي لغة الاستعلام للبيانات متعددة الأبعاد.
// استعلام MDX متقدم
ClassMethod RunAdvancedMDX() {
// إجمالي المبيعات حسب الشهر
Set query = ""
Set query = query _ "SELECT {[Measures].[TotalSales]} ON 0, "
Set query = query _ "{[Date].[2024].Members} ON 1 "
Set query = query _ "FROM [SalesCube] "
Set query = query _ "WHERE [Product].[Category].[Electronics]"
Set rs = ##class(%DeepSee.ResultSet).%New()
Set rs.%QueryText = query
Do rs.%Execute()
While rs.%Next() {
Write rs.%GetString(1), ": ", rs.%GetString(2), !
}
}
// KPI مخصص
ClassMethod CalculateKPI() {
&sql(SELECT AVG(SalesAmount) INTO :avg FROM SalesData WHERE Year = 2024)
&sql(SELECT SUM(SalesAmount) INTO :total FROM SalesData WHERE Year = 2024)
Set kpi = {}
Set kpi.average = avg
Set kpi.total = total
Set kpi.growth = ((total - lastYearTotal) / lastYearTotal) * 100
Return kpi
}كتابة استعلامات MDX متقدمة للتحليلات.
// استعلامات MDX متقدمة
Class Hospital.DeepSee.AdvancedQueries
{
// Year-over-Year comparison
ClassMethod YearOverYear()
{
Set mdx = "SELECT {[Measures].[TotalSales]} ON COLUMNS, "
_ " {[DateDim].[H1].[Month].Members} ON ROWS "
_ " FROM [SalesCube]"
Set result = ##class(%DeepSee.ResultSet).%ExecuteDirect(mdx)
While result.%Next() {
Write result.%GetString(1), ": ", result.%GetString(2), !
}
}
// Percentage of total
ClassMethod PercentOfTotal()
{
Set mdx = "SELECT "
_ " {[Measures].[TotalSales]} ON COLUMNS, "
_ " TOPCOUNT({[ProductDim].[H1].[Product].Members}, 10, [Measures].[TotalSales]) ON ROWS "
_ " FROM [SalesCube]"
Set result = ##class(%DeepSee.ResultSet).%ExecuteDirect(mdx)
While result.%Next() {
Write result.%GetString(1), ": ", result.%GetString(2), !
}
}
// Running total
ClassMethod RunningTotal()
{
Set mdx = "SELECT "
_ " {MEASURES.[TotalSales]} ON COLUMNS, "
_ " ORDER({[DateDim].[H1].[Month].Members}, [DateDim].[H1].[Month].CurrentMember.Properties("MonthNumber"), BASC) ON ROWS "
_ " FROM [SalesCube]"
Set result = ##class(%DeepSee.ResultSet).%ExecuteDirect(mdx)
While result.%Next() {
Write result.%GetString(1), ": ", result.%GetString(2), !
}
}
}
1. ما هو DeepSee؟
محرك التحليلات التفاعلية المدمج في IRIS
ما هي لغة الاستعلام للبيانات متعددة الأبعاد في DeepSee؟
MDX (Multi-Dimensional Expressions) هي لغة الاستعلام للبيانات متعددة الأبعاد
DeepSee للتحليلات العددية/الإحصائية، iKnow لتحليل النصوص واللغة الطبيعية